




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、目錄一、 實驗一1二、 實驗二7三、 實驗三11四、 實驗四1525 / 26文檔可自由編輯實驗一定時/計數(shù)器驗證實驗一、 實驗?zāi)康氖煜ざ〞r/計數(shù)器T0的特點,學(xué)會合理選擇定時方式并能根據(jù)具體情況結(jié)合軟件的方式定時。二、 實驗設(shè)備及器件 IBM PC機 一臺 PROTEUS 硬件仿真軟件 Keil C51。三、 實驗內(nèi)容用AT89C51單片機的定時/計數(shù)器T0產(chǎn)生1s的定時時間,作為秒計數(shù)時間,當1s產(chǎn)生時秒計數(shù)加1;秒計數(shù)到60時,自動從0開始。四、 實驗要求要求采用Proteus軟件實現(xiàn)上述實驗。 五、 實驗步驟 1. 打開Proteus ISIS編輯環(huán)境,按照表1-1所列的元件清單添加元
2、件。 元件名稱所屬類所屬子類AT89C51Microprocessor8051 FamilyCAPCapacitorsGenericCAP-ELECCapacitorsGenericCRYSTALMiscellaneousRESResistorsGeneric7SEG-COM-CAT-GRNOptoelectronics7-Segment DisplaysPULLUPModeling PrimitivesDigitalMiscellaneous表1-1 元件清單元件全部添加后,在Proteus ISIS的編輯區(qū)域中按圖1-1所示的原理圖連接硬件電路。圖1-1 電路原理圖2. 根據(jù)參考程序繪出流
3、程圖,并輔以適當?shù)恼f明。流程圖如圖1-2所示:圖1-2 程序流程圖3. 打開KeilVision4,新建Keil項目,選擇AT89C51單片機作為CPU,將參考程序?qū)氲健癝ource Group 1”中。在“Options for Target”對話窗口中,選中“Output”選項卡中的“Create HEX File”選項和“Debug”選項卡中的“Use:Proteus VSM Simulator”選項。編譯匯編源程序,改正程序中的錯誤。4. 在Proteus ISIS中,選中AT89C51并單擊鼠標左鍵,打開“Edit Component”對話窗口,設(shè)置單片機晶振頻率為12MHz,在此
4、窗口中的“Program File”欄中,選擇先前用Keil生成的.HEX文件。在Proteus ISIS的菜單欄中選擇“File”“Save Design”選項,保存設(shè)計,在Proteus ISIS的菜單欄中,打開“Debug”下拉菜單,在菜單中選中“Use Remote Debug Monitor”選項,以支持與Keil的聯(lián)合調(diào)試。5. 在Keil的菜單欄中選擇“Debug”“Start/Stop Debug Session“選項,或者直接單擊工具欄中的“Debug”“Start/Stop Debug Session”圖標,進入程序調(diào)試環(huán)境。按“F5”鍵,順序運行程序。調(diào)出“Proteus
5、 ISIS”界面可以看到7段數(shù)碼管顯示從059s的計數(shù)值,每個數(shù)值顯示1s,如圖1-3所示。 圖 1-3 程序運行結(jié)果六、 實驗程序SECONDEQU30HCOUNTEQU31HORG00HLJMPSTARTORG0BHLJMPINT_T0START:MOVSECOND,#00HMOVCOUNT,#00HMOVDPTR,#TABLECLRAMOVP0,AMOVP2,AMOVTMOD,#00HMOVTH0,#(65536-50000)/256MOVTL0,#(65536-50000)MOD 256SETBTR0SETBET0SETBEAMOV IE,#82HLJMP$INT_T0:MOVTH0,
6、#(65536-50000)/256MOVTL0,#(65536-50000)MOD 256INCCOUNTMOVA,COUNTCJNEA,#20,I2MOVCOUNT,#00HINCSECONDMOVA,SECONDCJNEA,#60,I1MOVSECOND,#00HI1:MOVA,SECONDMOVB,#10HDIVABMOVCA,A+DPTRMOVP0,AMOVA,BMOVCA,A+DPTRMOVP2,AI2:RETITABLE:DB3FH,06H,5BH,4FH,66HDB6DH,7DH,07H,7FH,6FHEND七、 思考題 1. 羅列一下Proteus軟件的能帶給我們的好處,指出
7、一點最能幫助你的地方。 使用Proteus軟件能使我們方便的搭建電路,同時在沒有元器件的情況下進行便于仿真,方便我們在將程序?qū)懭雴纹瑱C前確認運行是否正確,同時可在采購器件之前即可開始開發(fā)產(chǎn)品,而不必等到器件采購?fù)旰蟠罱娐凡胚M行程序調(diào)試。2. 用Proteus界面中的播放鍵運行仿真與KeilVision4的環(huán)境中聯(lián)調(diào)運行它們兩者的區(qū)別在什么地方? 用Proteus界面中的播放鍵運行仿真僅可以觀察運行結(jié)果,即程序運行在硬件表面上的表現(xiàn)。而聯(lián)調(diào)的時候可以再Keil軟件里查看各寄存器和存儲器的狀況,即硬件的內(nèi)部情況。3. Keil軟件軟件仿真與Proteus的仿真對比。 使用Proteus仿真可從硬
8、件的角度觀察仿真結(jié)果,使仿真結(jié)果更加形象直觀,使我們可從硬件運行狀態(tài)清楚的判斷運行結(jié)果是否正確。而在Keil環(huán)境中則是從程序的角度通過觀察程序中數(shù)據(jù)的變化來觀察仿真結(jié)果,需要對程序運行結(jié)果充分了解。八、 實驗總結(jié)及相關(guān)問題通過本次實驗了解了Ptoteus軟件的使用方法,以及在掌握了Keil的使用方法下,學(xué)會了Proteus與Keil軟件聯(lián)調(diào)的方法。在用Proteus中由于忽略了要在總線處放置網(wǎng)絡(luò)標號導(dǎo)致聯(lián)調(diào)失敗,最后通過觀察發(fā)現(xiàn)數(shù)碼管引腳電平無變化發(fā)現(xiàn)此問題,放置網(wǎng)絡(luò)標號后運行仿真時數(shù)碼管引腳電平發(fā)生變化可是數(shù)碼管卻沒有變亮,經(jīng)過多次檢查接線,未發(fā)現(xiàn)接線錯誤后,覺得可能是軟件本身錯誤,故將總線
9、及數(shù)碼管周圍硬件線路重新繪制一遍后再次運行仿真及可得到圖1-3的結(jié)果。實驗二單片機I/O口控制實驗一、 實驗?zāi)康?利用單片機的P1 口作IO 口,使同學(xué)學(xué)會利用P1 口作為輸入和輸出口。 二、 實驗設(shè)備及器件 IBM PC 機 一臺 DP-51PRO.NET 單片機仿真器、編程器、實驗儀三合一綜合開發(fā)平臺一臺 三、 實驗內(nèi)容 1. 編寫一段程序,用P1 口作為控制端口,使D1 區(qū)的LED 輪流亮。 2. 編寫一段程序,用P1.0P1.6 口控制LED,P1.7 控制LED 的亮和滅(P1.7 接按鍵,按下時LED 亮,不按時LED 滅) 。 四、 實驗要求 學(xué)會使用單片機的P1 口作IO 口,
10、如果有時間同學(xué)也可以利用P3 口作IO 口來做該實驗。 五、 實驗步驟 1. 用導(dǎo)線把A2 區(qū)的J61 接口與D1 區(qū)的J52 接口相連。原理如圖2-1 所示。 圖2-1 實驗二原理圖2. 先編寫一個延時程序。延時程序見程序1子程序DELAY。 3. 將LED 輪流亮的程序編寫完整并使用TKStudy ICE 調(diào)試運行。 LED輪流亮程序見程序1。調(diào)試運行結(jié)果:D1區(qū)LED輪流亮。4. 使用導(dǎo)線把A2 區(qū)的J61 接口的P1.0P1.6 與D1 區(qū)的 J52 接口的LED1LED7 相連,另外A2 區(qū)J61 接口的P1.7 與D1 區(qū)的J53 的KEY1 相連。5. 編寫P1.7 控制LED
11、的程序,并調(diào)試運行。(按下K1 看是否全亮)。P1.7 控制LED 的程序見程序2。調(diào)試運行結(jié)果:按下P1.7后D1區(qū)LED全滅。6. A2 區(qū)J61 接口的P1.7 與D1 區(qū)的J54 的SW1 相連。然后再使用TKStudy ICE 運行程序,查看結(jié)果。 P1.7 控制LED 的程序見程序2。調(diào)試運行結(jié)果:按下P1.7后D1區(qū)LED全亮。六、 實驗參考程序 程序1:ORG 0000HLJMP MAINORG 0100HMAIN:MOV A,#0FFHCLRCMAINLOOP:CALLDELAYRLC AMOVP1,ASJMPMAINLOOPDELAY:MOVR7,#0LOOP:MOVR6,
12、#0DJNZR6,$DJNZR6,$DJNZR6,$DJNZR7,LOOPRETEND程序2:ORG000HLJMPMAINORG0100HMAIN:JBP1.7,SETLEDCLRLED:CLRP1.0CLRP1.1CLRP1.2CLRP1.3CLRP1.4CLRP1.5CLRP1.6SJMPMAINSETLED:SETBP1.0SETBP1.1SETBP1.2SETBP1.3SETBP1.4SETBP1.5SETBP1.6SJMPMAINEND七、 實驗思考題 1. 請同學(xué)思考一下,想出幾個實現(xiàn)以上功能的編程方法。 程序1可利用單片機的定時計數(shù)器通過選擇定時計數(shù)器工作方式和預(yù)置初值設(shè)定延時
13、時間,通過定時計數(shù)器產(chǎn)生的中斷在中斷程序中對A進行移位后輸出至P1口。程序2可在判斷P1.7高低電平后根據(jù)判斷結(jié)果直接將#80H或#7F直接送P1口而不必逐位進行位操作。2. 請同學(xué)再思考一下,第二個程序中如果使用KEY1作為外部中斷控制LED的亮和滅時,程序應(yīng)如何修改。此時將KEY1接/INT0口,在主程序中開啟外部中斷設(shè)置外部中斷觸發(fā)方式,通過中斷服務(wù)子程序控制LED亮滅。程序如下所示:ORG000HLJMPMAINORG0003H;中斷服務(wù)程序LJMPSETLEDMAIN:MOVSP,#40HSETBET0;開外部中斷CLRIT0;設(shè)置為電平觸發(fā)SETBEACLRLED:CLRP1.0C
14、LRP1.1CLRP1.2CLRP1.3CLRP1.4CLRP1.5CLRP1.6SJMPCLRLEDSETLED:SETBP1.0SETBP1.1SETBP1.2SETBP1.3SETBP1.4SETBP1.5SETBP1.6RETIEND八、 實驗總結(jié)及相關(guān)問題通過本次實驗掌握了使用TKStudy ICE進行硬件仿真調(diào)試的方法,在設(shè)置仿真器驅(qū)動程序聲明時對C:Keil目錄下的Tools.ini文件添加描述時,由于添加的路徑錯誤導(dǎo)致無法進行硬件仿真調(diào)試,修改為正確路徑后方可在DEBUG窗口中的Use選項中找到對應(yīng)的選項。使用TKStudy ICE進行硬件仿真調(diào)試相比本學(xué)期的電子系統(tǒng)設(shè)計中用到
15、的調(diào)試方法更快捷,使用更方便。與此同時,通過本次實驗對單片機的I/O控制有了更深入的了接,同時加深入對單片機I/O編程的理解。實驗三串轉(zhuǎn)并I/O口實驗一、 實驗?zāi)康?熟悉并掌握串轉(zhuǎn)并的I/O口擴展方法。 二、 實驗設(shè)備及器件 IBM PC機 一臺 DP-51PRO.NET單片機仿真器、編程器、實驗儀三合一綜合開發(fā)平臺 一臺 三、 實驗內(nèi)容 1. 寫程序,通過單片機的P1口控制74HC164的串行輸入端口,實現(xiàn)串并轉(zhuǎn)換。 2. 驗證串并轉(zhuǎn)換數(shù)據(jù)的正確性。 四、 實驗要求 熟悉串并轉(zhuǎn)換芯片的工作原理,學(xué)會使用串并轉(zhuǎn)換芯片擴展單片機的I/O口資源。表3-1 74HC164真值表五、 實驗步驟 1 短
16、接C5區(qū)JP10接口,將C5區(qū)J43接口與A2區(qū)J61接口的P10P13對應(yīng)相連 (CLK對P10等等)。如圖3-1所示。 圖3-1 實驗三原理圖2 運行編寫好的軟件程序,完成一次串并轉(zhuǎn)換。 實驗程序見實驗參考程序。2 使用C2區(qū)的邏輯筆或D1區(qū)的J52接口(LED指示燈)測試并行輸出數(shù)據(jù)Q0Q7數(shù)據(jù)的正確性。 調(diào)試運行結(jié)果:通過觀察LED的亮滅情況可判斷完成一次串并轉(zhuǎn)換,且轉(zhuǎn)換結(jié)果正確無誤。六、 實驗參考程序 CLKEQUP1.0DINA EQU P1.1DINB EQUP1.2CLR164EQU P1.3ORG0000HLJMPMAINORG0100HMAIN:MOV SP,#60HNOP
17、CLRCLKSETBDINBCLRCLR164SETBCLR164MOVA,#0FFHMOVR4,#08HSLCHG:RLC AMOV DINA,CSETB CLKNOPCLR CLKNOPDJNZ R4,SLCHGSJMP $END七、 實驗思考題 參考圖3-2電路圖,嘗試編寫軟件程序,實現(xiàn)8位LED流水燈的控制。圖3.2 實驗原理圖可利用單片機的定時計數(shù)器通過選擇定時計數(shù)器工作方式和預(yù)置初值設(shè)定延時時間,通過定時計數(shù)器產(chǎn)生的中斷在中斷程序中對A進行移位。程序如下所示:CLKEQU P1.0DINA EQU P1.1DINB EQU P1.2CLR164EQU P1.3ORG0000HLJM
18、PMAINORG000BH;定時器0中斷服務(wù)程序LJMPSLCHGMAIN:MOV SP,#60HNOPCLRCLKSETBDINBCLRCLR164SETBCLR164MOVA,#0FFHMOVTMOD,#01H;定時器0工作方式1MOVTH0,#18H;送2ms時間常數(shù)MOVTL0,#0FCHSETBTR0;開中斷SETBET0SETBEASJMP$SLCHG:MOVTH0,#18HMOVTL0,#0FCHRLC AMOV DINA,CSETB CLKNOPCLR CLKRETIEND八、 實驗總結(jié)及相關(guān)問題由于具有之前實驗的基礎(chǔ)所以本實驗基本沒碰到什么問題,調(diào)試運行都符合實驗要求,通過本
19、次實驗對串并轉(zhuǎn)化程序的編寫有了一定了解,通過編寫流水燈程序加深了對單片機串并口的了解。實驗四繼電器控制實驗一、 實驗?zāi)康?加深理解繼電器的工作原理和特點,掌握利用單片機的IO口控制繼電器的一般方法。 二、 實驗設(shè)備及器件 IBM PC機 一臺 DP-51PRO.NET單片機仿真器、編程器、實驗儀三合一綜合開發(fā)平臺 一臺 三、 實驗內(nèi)容 1. 利用D1區(qū)的撥動開關(guān)和LED,學(xué)習(xí)繼電器的工作原理和特點。 2. 編寫一段程序,用P1.0口控制繼電器,繼電器控制LED的亮和滅,(COM與CLOSE連通時,一盞LED亮;不連通時該LED滅。COM與OPEN連通時,另一盞LED亮,不通時該LED滅)。 四
20、、 實驗要求 學(xué)會繼電器的使用和利用單片機的IO口控制繼電器的方法。 五、 實驗步驟 圖4-1 繼電器驅(qū)動控制電路圖1. 用短路帽短接JP7,使用導(dǎo)線把D1區(qū)J54接口的SW1與C7區(qū)J9接口的KJ(任意一根針)相連接。 2. 使用導(dǎo)線把D1區(qū)J52接口的LED1、LED2與C7區(qū)J103接口的OPEN1,CLOSE1分別相連,另外C7區(qū)J103接口的COM1接地(GND)。 3. 接好線后,同學(xué)可以撥動D1區(qū)的SW1撥動開關(guān),觀察現(xiàn)象(撥到1時LED2亮,撥到0時LED1亮),并得出結(jié)論。 運行結(jié)果:撥到1時LED2亮,撥到0時LED1亮,說明每撥動一次開關(guān)改變一次繼電器的狀態(tài)。4. 然后把C7 區(qū)J9 接口的KJ 改接到A2 區(qū)的J61 接口的P10。再編寫一個程序程序
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 農(nóng)村集體設(shè)備租賃合同范本
- 代理全轉(zhuǎn)讓合同范本
- 臨時材料購買合同范本
- 包人工電纜合同范本
- 第二單元第11課《while循環(huán)的應(yīng)用實例》教學(xué)設(shè)計 2023-2024學(xué)年浙教版(2020)初中信息技術(shù)八年級上冊
- 農(nóng)村閑置小學(xué)出租合同范本
- 出口尿素銷售合同范本
- 企業(yè)團隊建設(shè)合同范本
- 出售舊材料合同范本
- 人事調(diào)動合同范本
- 教師職業(yè)道德(小學(xué)教育專業(yè))高職PPT完整全套教學(xué)課件
- 拼多多客服知識考核試題及答案
- -思想政治教育學(xué)原理課件(精品課件)
- 國家公務(wù)員考試歷年真題答案解析
- 口腔正畸學(xué)人衛(wèi)緒論
- 高級英語I(下)-華東理工大學(xué)智慧樹知到答案章節(jié)測試2023年
- 介電陶瓷課件
- RDA5807m+IIC收音機51單片機C程序文件
- 重癥監(jiān)護介紹 ICU介紹
- 透明度的測定SL87
- 國際商務(wù)談判(第五版)
評論
0/150
提交評論