電子科技大學實驗報告_第1頁
電子科技大學實驗報告_第2頁
電子科技大學實驗報告_第3頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、電子科技大學實驗報告【最新資料,電WORD檔,技T編輯修改】實 驗 報 告一、實驗室名稱: 電子技術(shù)綜合實驗室二、實驗項目名稱: 現(xiàn)代電子技術(shù)綜合實驗三、實驗學時: 40四、實驗目的與任務:1、熟悉系統(tǒng)設計與實現(xiàn)原理2、掌握KEIL C51的基本使用方法3、熟悉SMART SOPC實驗箱的應用4、 連接電路,編程調(diào)試,實現(xiàn)各部分的功能5、完成系統(tǒng)軟件的編寫與調(diào)試五、實驗器材1、PC機一臺2、示波器、SMART SOPC實驗箱一套六、實驗原理、步驟及內(nèi)容(一)試驗要求1、程序開始后:當只有第1個發(fā)光二極管亮時,同時第1個數(shù)碼管顯示數(shù) 字1,其余顯示”-”;持續(xù)0.5秒之后,只有第2個發(fā)光二極管亮

2、,同時第2 個數(shù)碼管顯示數(shù)字 2,其余顯示” - ” ;再過 0.5 秒,只有第 3個發(fā)光二極管亮,同時第3個數(shù)碼管顯示數(shù)字3,其余顯示”-”;;間隔0.5秒后,只 有第 8 個發(fā)光二極管亮,同時第 8個數(shù)碼管顯示數(shù)字 8,其余顯示” -” 。此后 進入循環(huán)狀態(tài)。循環(huán)過程中,按按鍵進入任務 2。2、停止任務 1 中發(fā)光二極管顯示,數(shù)碼管的第 1、2位顯示學號最后二位,第 4、5 位顯示電機轉(zhuǎn)速 (初始轉(zhuǎn)速 30)。第 7、8 位實現(xiàn)秒表功能,從 5.0開始倒計時,計時到 0.0 后程序自動進入任務 3.3、數(shù)碼管的第 1、2 位顯示電機轉(zhuǎn)速,第 3、 4 、 5 、 6 位顯示” - ” ,

3、第7、8位顯示二位電壓值(0.02.4V ),增減調(diào)節(jié)電壓值,電機轉(zhuǎn)速(初始轉(zhuǎn)速30)能夠跟隨電壓增減以 10倍變化量( 024),進行加減速變化。按按鍵進入任務 1。(二)實驗內(nèi)容1、 硬件設計PDIP40封裝80C51引腳布局圖SmartSOPC 相配套的基于8051單片機的Quick51核心板2、 各部分硬件原理數(shù)碼管動態(tài)掃描原理:動態(tài)顯示的特點是將所有位數(shù)碼管的段選線并聯(lián)在一起,由位選線控制是哪一位數(shù)碼管 有效。選亮數(shù)碼管采用動態(tài)掃描顯示。所謂動態(tài)掃描顯示即輪流向各位數(shù)碼管送出字形碼和 相應的位選,利用發(fā)光管的余輝和人眼視覺暫留作用,使人的感覺好像各位數(shù)碼管同時都在 顯示。動態(tài)顯示的亮

4、度比靜態(tài)顯示要差一些,所以在選擇限流電阻時應略小于靜態(tài)顯示電路 中的。原理圖(一)蜂鳴器工作原理:蜂鳴器是一種一體化結(jié)構(gòu)的電子訊響器,本文介紹如何用單片機驅(qū)動蜂鳴器,他廣泛應 用于計算機、打印機、復印機、報警器、電話機等電子產(chǎn)品中作發(fā)聲器件。蜂鳴器主要分為壓電式蜂鳴器和電磁式蜂鳴器兩種類型。電磁式蜂鳴器由振蕩器、電磁線圈、磁鐵、振動膜片及外殼等組成。接通電源后,振蕩 器產(chǎn)生的音頻信號電流通過電磁線圈,使電磁線圈產(chǎn)生磁場,振動膜片在電磁線圈和磁鐵的 相互作用下,周期性地振動發(fā)聲。壓電式蜂鳴器主要由多諧振蕩器、壓電蜂鳴片、阻抗匹配器及共鳴箱、外殼等組成。多諧振 蕩器由晶體管或集成電路構(gòu)成,當接通電

5、源后(1.515V直流工作電壓),多諧振蕩器起振, 輸出1.52.5kHZ的音頻信號,阻抗匹配器推動壓電蜂鳴片發(fā)聲。原理圖(二)I2C工作原理:在I2C總線上每傳輸一位數(shù)據(jù),都有一個時鐘脈沖相對應,其邏輯“0”和“T的信號電平取決于該點的正端電源 VDD勺電壓。I2C總線數(shù)據(jù)傳輸時,在時鐘線高電平期間數(shù)據(jù)線 上必須保持有穩(wěn)定的邏輯電平狀態(tài),高電平為數(shù)據(jù)1,低電平為數(shù)據(jù)0。只有在時鐘線為低電平時,才允許數(shù)據(jù)線上的電平變化。I2C總線數(shù)據(jù)傳送時有兩種時序狀態(tài)被分別定義為起始信號和終止信號。起始信號:在時 鐘線保持高電平期間,數(shù)據(jù)線在由高電平到低電平變化時啟動I2C總線,為I2C總線的起始信號。終止

6、信號:在時鐘線保持高電平期間,數(shù)據(jù)線在由低電平到高電平變化時將停止I2C總線的數(shù)據(jù)傳送,為I2C總線的終止信號。起始信號和終止信號都是由主控制器產(chǎn)生??偩€上帶有I2C總線接口的器件很容易檢測到這些信號。但是對于不具備這些硬件接口的單片機來說,為了能準確地檢測到這些信號, 必須保證在總線的一個時鐘周期內(nèi)對數(shù)據(jù)線至少進行兩次采樣。原理圖(三)LM75特征及應用:LM75溫度傳感器包含一個模數(shù)轉(zhuǎn)換器和一個數(shù)字過熱檢測器。主機可通過器件的12C接口讀取溫度數(shù)據(jù)。當超出設置的溫度門限時漏極開路的過熱輸出吸收電流。OS輸出具體2種模式,比較器或中斷模式。主機控制報警觸觸發(fā)門限和帶回溫度,低于帶回溫度報警條

7、件無 效。主機可讀寫LM75的 TOS和THYST寄存器,器件上電時進入比較器模式,默認條件下 TOS=+8(且 THYST=75原理圖(四)電機驅(qū)動原理:步進電機為一四相步進電機,采用單極性直流電源供電。只要對步進電機的各相繞組 按合適的時序通電,就能使步進電機步進轉(zhuǎn)動。四相步進電機按照通電順序的不同,可分為單四拍、 雙四拍、八拍三種工作方式。單四拍與雙四拍的步距角相等,但單四拍的轉(zhuǎn)動力矩小。八拍工作方 式的步距角是單四拍與雙四拍的一半,因此,八拍工作方式既可以保持較高的轉(zhuǎn)動力矩又可以提高控 制精度。原理圖(五)3、軟件設計(完成程序框圖)(三)思考題設定溫度的按鍵改用外部中斷模式,電路如何

8、修改(畫示意圖)?程序如何修改,寫出中斷服務程序七、總結(jié)及心得體會通過一個星期的學習和實踐,我從只能點亮一個 LED 燈到可以按照實驗要求完成流水 燈。在每一個小小的實現(xiàn)項目的完成,感覺自己都在一步一步的成長,雖然有的時候非常煩 躁,實驗結(jié)果老是出不來,而且找不到原因,并且被老師罵的一塌糊涂。但是,我還是堅持 下來了。堅持著完成一個個小項目,這樣自己的信心也一步一步增加。使得我很快就完成了 實驗。在此,需要謝謝老師的諄諄教導。八、對本實驗過程及方法、手段的改進建議無九、附錄綜合實驗程序:#include <reg51.h>#include <absacc.h>#incl

9、ude <ctype.h>sbit KEY1 = P2A0;sbit KEY2 = P2A1;sbit PWM = P2A6;sbit CS = P3A5;sbit DAT = P3A6;sbit CLK = P3A7;unsigned char KeyScan()unsigned char k = '0'if ( KEY1 = 0 ) k = '+'if ( KEY2 = 0 ) k = '-'return k;/ 定義顯示緩沖區(qū)(由定時中斷程序自動掃描)unsigned char DispBuf8;unsigned char te

10、mp;unsigned char Speed;/預設的電機轉(zhuǎn)速值,范圍20250bit SWTR;/軟件定時器運行標志bit SWTF;/ 軟件定時器溢出標志unsigned int SWTV;/*函數(shù): T1INTSVC()功能:定時器 T1 的中斷服務函數(shù)*/void T1INTSVC() interrupt 3code unsigned char com = 0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80; static unsigned char n = 0;static unsigned char t = 0;/ 掃描數(shù)碼管P0 = 0xFF; / 暫

11、停顯示XBYTE0xE800 = DispBufn;/ 更新掃描數(shù)據(jù)P0 = comn; / 重新顯示n+;n &= 0x07;/產(chǎn)生PWM方波,驅(qū)動電機t+;if ( t < Speed )PWM = 1;elsePWM = 0;/ 模擬一個軟件定時器if ( SWTR )if ( -SWTV = 0 ) SWTF = 1;/*函數(shù): DispClear() 功能:清除數(shù)碼管的所有顯示*/void DispClear()unsigned char i;for ( i=0; i<8; i+ )DispBufi = 0x00;/*函數(shù): DispChar() 功能:在數(shù)碼管上

12、顯示字符 參數(shù):x :數(shù)碼管的坐標位置(07)c:要顯示的字符(僅限16進制數(shù)字和減號)dp:是否顯示小數(shù)點,0不顯示,1顯示*/void DispChar(unsigned char x, unsigned char c, bit dp)code unsigned char Tab =0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71;unsigned char t; / 臨時變量/ 防止顯示位置超出范圍x &= 0x07;x = 7 - x;/ 分析字符 c ,取得對應的數(shù)碼

13、管字型數(shù)據(jù)if ( c = '-' )t = 0x40;elset = toint(c);/toint() 為庫函數(shù),詳見 C:KeilC51HLPC51.pdfif ( t < 16 )/ 如果是 16 進制字符t = Tabt; / 查表,取得數(shù)碼管字型數(shù)據(jù)elset = 0x00;/ 如果是其它字符則顯示為空白/ 檢查是否顯示小數(shù)點if ( dp )t |= 0x80;elset &= 0x7F;/ 送到顯示緩沖區(qū)顯示DispBufx = t;/*函數(shù): DispStr()功能:在數(shù)碼管上顯示字符串參數(shù):x :顯示的起始位置(07)*s :要顯示的字符串(內(nèi)

14、容僅限 16 進制數(shù)字和減號) */void DispStr(unsigned char x, unsigned char idata *s)unsigned char c;for (;)c = *s+;if ( c = '0' ) break;DispChar(x+,c,0); /* 函數(shù): ByteToStr() 功能:字節(jié)型變量 c 轉(zhuǎn)換為十進制字符串 */void ByteToStr(unsigned char idata *s, unsigned char c)code unsigned char Tab = 10,1;unsigned char i;unsigned

15、 char t;for ( i=0; i<2; i+ )t = c / Tabi;*s+ = '0' + t;c -= t * Tabi;*s+ = '0' + c;*s = '0' /* 函數(shù): DispInit() 功能:數(shù)碼管掃描顯示初始化 */ void DispInit()DispClear(); / 初始為全滅EA = 0;/*TMOD &= 0x0F;TMOD |= 0x10;TH1 = 0xFC;TL1 = 0x66;*/TR1 = 1;ET1 = 1;EA = 1;/*函數(shù): Delay()功能:延時0.012.5

16、6s參數(shù):t>0 時,延時 (t*0.01)st=0 時,延時 2.56s說明:晶振用 11.0592MHz */ void Delay(unsigned int t)SWTV = t; / 軟件定時器賦初值SWTR = 1;/ 啟動軟件定時器while ( !SWTF ); / 等待溢出SWTR = 0;/ 停止軟件定時器SWTF = 0; / 清除溢出標志unsigned char MeasureSpeed()TH0 = TL0 = 0; /清除計數(shù)器 T0TR0 = 1;/啟動計數(shù)器 T0Delay(2500);/延時250ms (因為直流電機轉(zhuǎn)盤上正好有4個槽)TR0 = 0;/

17、停止計數(shù)TF0 = 0;/清除(可能的)溢出標志100)return TL0;/返回結(jié)果(單位:轉(zhuǎn)/ 秒;已知電機轉(zhuǎn)速不會超過/*函數(shù): SysInit() 功能:系統(tǒng)初始化*/*void SysInit()TMOD &= 0xF0;TMOD |= 0x01;/設置定時器T0為16位定時器DispInit();/ 數(shù)碼管掃描顯示初始化*/void SysInit()unsigned char i;for ( i=0; i<8; i+ )DispBufi = 0x00; / 數(shù)碼管初始化為全滅Speed = 35; / 設置電機初始轉(zhuǎn)速SWTR = 0;SWTF = 0;SWTV

18、= 0;TMOD &= 0x0F;TMOD |= 0x20; II設置T1為8位定時器,自動重裝TH1 = TL1 = 0xA4; II 設置 T1 初值,對應 100 口 sET1 = 1; II 使能 T1 中斷TR1 = 1;II 啟動 T1EA = 1;II 使能總中斷TMOD &= 0xF0;TMOD |= 0x05;DispInit();unsigned char ReadAdc()unsigned char d;unsigned char n;CS = 0;n = 5;while ( -n != 0 );n = 8;dod <<= 1;if ( DAT

19、 ) d+;CLK = 1;CLK = 0;while ( -n != 0 );CS = 1;return d;void main()code unsigned char w = "21"unsigned char i;unsigned char x;unsigned char k;unsigned char spd;unsigned char r3;unsigned char v;unsigned char SW;unsigned char GW;bit dp;SysInit();dp = 0;/ TMOD &= 0xF0;/ TMOD |= 0x01;for(;

20、)for (;)temp=0x00000001;k = KeyScan();if ( k ='+' )break;for ( i=0; i<8; i+ )P1=temp;temp<<=1;k = KeyScan();if ( k ='+' )break;for ( x=0; x<8; x+ )DispChar(x,'-',dp); k = KeyScan();if ( k ='+' )break;DispChar(7-i,si,dp); k = KeyScan();if ( k ='+' )break;Delay(5000);P1=(temp&0x00000000);SysInit();for(;)for ( x=0; x<2; x+ ) DispChar(7

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論