單片機結構及開發設計流程_第1頁
單片機結構及開發設計流程_第2頁
單片機結構及開發設計流程_第3頁
單片機結構及開發設計流程_第4頁
單片機結構及開發設計流程_第5頁
已閱讀5頁,還剩15頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、單片機結構及開發設計流程課題一 單片機結構1、畫出89C51單片機的引腳排列圖。2、畫出89C51單片機的引腳功能圖。3、畫出89C51單片機的基本組成框圖。4、敘述 89C51 單片機各部分的具體組成情況。課題二 單片機工作條件1、畫出 51 系列單片機內部時鐘和外部時鐘電路接線圖。2、畫出 51 系列單片機上電復位和按鍵復位電路接線圖。3、畫出 51 系列單片機工作條件接線圖。課題三單片機輸入 / 輸出端口結構1、畫出 51 系列單片機P0、P1、P2、P3 口位結構圖。2、敘述 51 系列單片機P0P3 口使用注意事項。課題四單片機開發設計流程1、2、3、制作按鍵左移亮燈電路板。4、連接

2、仿真器。用 Protel 軟件畫出按鍵左移亮燈電路原理圖。用 Protel 軟件設計出按鍵左移亮燈電路印制電路板圖。5、6、連接編程器。運行仿真軟件,輸入按鍵左移亮燈程序,編譯、調試及仿真運 行程序。7、運行編程器軟件, 將調試通過的按鍵左移亮燈程序目標代碼寫入 89C51 單片機。8、將經過編程的89C51單片機插入電路板上的單片機IC插座中,脫機運行,觀察電路運行情況。模塊二 單片機指令系統及匯編語言程序設計課題一 程序設計基礎1、簡述單片機存儲器總體分配情況。2、簡述單片機片內數據存儲器結構。3、簡述單片機七種尋址方式。4、簡述單片機不同存儲器空間的尋址方式。5、回答下列指令的尋址方式:

3、(1) MOV A, #6AH(2) MOV A, #0E#H(3) MOV A, 3FH(4) MOV A, 7BH(5) MOV A, R1(6) MOV A, R3(7) MOV A, R0(8) MOV A, R1(9) MOVX A, DPTR(10)MOVC A, A+DPTR(11)MOV A, A+PC(12)JZ 50H(13) SETB 01H課題二 延時程序1、將本課題任務二中的R3的值改為01HH 02H和08H,觀察亮燈的間隔時間有何變化?2、將本課題任務二中的 RL A 指令改為 RR A 指令,觀察亮燈的順序有何變化?3、將本課題任務二中的亮燈數據初值改為 03H

4、 07H和55H,觀察亮燈規律有何變化?4、設計一延時5S的延時程序,并替代任務二中的延時程序,觀察亮燈間隔時間。5、設單片機振蕩頻率為6MHz試精確計算下列延時子程序的延時時間。DEL: MOV R7, #0FAHDEL1: MOV R6, #0F8HNOPDEL2: DJNZ R6, DEL2DJNZ R7, DEL16、設單片機振蕩頻率為 12MHz 試估算下列延時子程序的延時時間。MOV R5, #20K1: MOV R6, #250K2: DJNZ R6, K2DJNZ R5, K1課題三 算術運算程序1、若R0=20H R1=30H R2=40H R3=50H運行任務一中的程序,觀

5、察R4 R5禾n R6的值。若R2=80H R3=60H R4=40H R5=20H運行任務二中的程序,觀察R6和R7的值。若CY=1 RO、R1、R2和R3的值如第1題,將任務一中的ADD4、A, R3指令改為ADDC A R3指令,運行程序,觀察結果與第有何不同,為什么?若CY=1 R2、R3 R42和R5的值同第2題,將任務二中的1題CLRC指令去掉,運行程序,觀察結果與第 2題有何不同,為什么?5、若兩個 3 字節數分別存放在 5OH、 51H、 52H 單元和 6OH、61H和62H單元,高位在前,低位在后。編寫程序實現兩個3字節數相加運算,結果存放在70H 71H 72H 73H單

6、元,高位在前,低位在后。自行設置數據,觀察運行結果。若兩個3字節數分別存放在 60H 61H 62H單元和70H 71H和72H單元,高位在前,低位在后。編寫程序實現兩個3字節數相減運算,結果存放在 5OH 51H 52H 單元,高位在前,低位在 后。自行設置數據,觀察運行結果。課題四 代碼轉換程序設內部RAM 30HI元的值為7FH,在計算機上運行本課題任務一的程序,檢查運行結果31H和32H單元的值。在本課題任務一的程序中,如轉換得到的BCD碼分別存儲在獨立的單元中,如BCD碼百位、十位和個位分別存于40H41H和42H單元中,程序應如何修改?修改后上機運行。3、在本課題任務一的程序中,在

7、十和個位BCD碼合并時,如不用“ORL A, B”指令進行合并,而用“ ADD A,B”指令是否可以,程序修改后上機試運行。4、在本課題任務二的程序中,設有兩個壓縮 BCD碼20H 35H存于50H單元和51H單元,上機運行程序,檢查 60H 61H 62H和63H單元的值。5、在本課題任務二中,如50H單元開始的存儲塊中存放的是非壓縮BCD即一個單元存放一個BCD碼),程序應如何修改?上機調試程序并檢查運行結果。6、在本課題任務二中,如只進行一個BCD碼轉換,即一個非壓縮BCD碼存于50H單元,轉換結果存于60H單元,那么程序又該如何修改?上機調試程序并檢查運行結果。課題五 輸入輸出程序1、

8、將本課題任務一中的LED亮燈電路制作成印制電路板,然后用仿真器對任務二中的LED亮燈程序進行仿真調試,再用編程器將調試通過的程序下載到單片機中并運行,觀察電路運行情況。2、將本課題任務二中的K1子程序中A的初始值FEH改為FCH即將該子程序的第一條指令 MOV A #0FEH改為MOV A #0FCH運行程序,觀察并分析運行情況。還可將該初始值改為其他數據,修改后運行程序,觀察并分析運行情況。3、4、在本課題任務一設計的電路中,當按下 S1鍵時,要實現如下圖所示的亮燈方式,則 K1子程序應如何修改?提示:對 K1子程序中的MOV A #OFEH指令、JNB ,M1指令和RL A指令加以修改即可

9、。序號101111111210111111311011111411101111511110111611111011711111101811111110將本課題任務二K2子程序中A的初始值FEH改為FAH即將該子程序的第一條指令 MOV A #0FEH改為MOV A #0FAH運行程序,觀察并分析運行情況。還可將該初始值改為其他數據,修改后運行程序,觀察并分析運行情況。5、在本課題任務一設計的電路中,當按下 S2鍵時,要實現如下圖所示的亮燈方式,則K2子程序應如何修改?提示:對 K2子程序中的MOV A #OFEH指令、JNB ,M2指令和RLC A指令加以修改即可。序號101111111200

10、1111113000111114000011115000001116000000117000000018000000006、若在本課題任務一設計的電路中增加一個按鍵K3,實現上面題3的亮燈功能,則原理圖和程序應如何修改?模塊三單片機簡單應用電路設計實例課題一彩燈控制器設計1、用Protel軟件繪制出本設計任務的電路原理圖,并設計印制電路板圖及制作印制電路板。2、連接好仿真器,將本設計任務的程序輸入計算機,并進行仿真調試及運行。3、連接好編程器,將仿真通過的程序代碼下載到單片機中,脫機運行并觀察電路運行情況。4、自行設計一亮燈數據表,修改程序后仿真運行,觀察電路運行情況。5、要求每個亮燈狀態延時

11、時間為 2S,程序應如何修改,程序修改后仿真運行,觀察電路運行情況。6、如果發光二極管采用共陰連接方式, 即 8 只發光二極管陰極相連后接地,陽極分別通過一個電阻接到 P2 口的8位,仍按圖3-1要求的方式亮燈,則亮燈數據表應如何修改,修改后仿真運行,觀察電路運行情況。課題二 加法運算器設計1、用 Protel 軟件繪制出本設計任務的電路原理圖,并設計印制電路板圖及制作印制電路板。2、連接好仿真器, 將本設計任務的程序輸入計算機, 并進行仿真調試及運行。3、連接好編程器, 將仿真通過的程序代碼下載到單片機中, 脫機運行并觀察電路運行情況。4、如果采用共陰數碼管, 則電路應如何修改, 程序中七段

12、顯示數碼表中的數據又應如何修改,修改后仿真運行。5、程序中如將十進制數調整指令 DA A 刪除,仿真運行, 觀察是否能得到正確的結果數據。6、如采用MOVC A A+P查表指令進行查表,則程序應如何修改,修改后仿真運行。1、課題三 數顯搶答器設計用 Protel 軟件繪制出本設計任務的電路原理圖,并設計印制2、電路板圖及制作印制電路板。連接仿真器, 將本設計任務的程序輸入計算機, 并進行仿真調 試及運行。3、連接編程器, 將仿真通過的程序代碼下載到單片機中, 脫機運行并觀察電路運行情況。4、如果刪除用于按鍵去抖動的12ms延時子程序調用指令,即刪除LCALL DELA詐旨令,仿真運行,觀察運行

13、情況。5、將延時程序的延時時間修改為1ms仿真運行,觀察運行情況。6、刪除每個按鍵功能程序中的動態停機指令 SJMP $,仿真運行觀察運行情況。課題四 籃球比賽計分器設計1、用 Protel 軟件繪制出本設計任務的電路原理圖,并設計印制電路板圖及制作印制電路板。2、連接仿真器, 將本設計任務的程序輸入計算機, 并進行仿真調試及運行。3、連接編程器, 將仿真通過的程序代碼下載到單片機中, 脫機運行并觀察電路運行情況。4、如把按鍵去抖動程序刪除,即刪除 LCALL DELAY指令,仿真運行,觀察運行情況。5、如把等待按鍵釋放的程序段刪除,即刪除“ WAIT:MOV A,P0、“ANL A,#OFH

14、'、“CJNE A,#OFH,WAlT 三條指令,仿真運行,觀察運行情況。6、如按S1鍵加2分,按S2鍵加4分,按S3鍵加6分,按S4鍵減 2 分則程序應如何修改,修改后仿真運行,觀察運行情況。模塊四 單片機內部三大功能課題一 中斷系統及其應用1、簡述中斷處理過程。2、簡述中斷編程結構。3、用 Protel 軟件繪制出本課題中的外部中斷應用電路原理圖, 并設計印制電路板圖及制作印制電路板。4、連接仿真器,將本課題中的外部中斷應用程序輸入計算機,并進行仿真調試及運行。5、連接編程器,將仿真通過的程序代碼下載到單片機中,脫機運行并觀察電路運行情況。6、刪除外部中斷應用程序中的第一條指令 L

15、JMP MAIN,程序修改后仿真運行,觀察電路運行情況。7、將主程序放在存儲器的開始處,程序修改后仿真運行,觀察電路運行情況。8、將外部中斷程序放在中斷入口地址處,程序修改后仿真運行,觀察電路運行情況。課題二定時/ 計數器及其應用1、簡述定時 /計數器初始化步驟。2、用 Protel 軟件繪制出本課題中定時器的應用電路原理圖, 并設計印制電路板圖及制作印制電路板。3、連接仿真器, 將本課題兩個例題中的定時器應用程序輸入計算機,并進行仿真調試及運行。4、連接編程器,將仿真通過的程序代碼下載到單片機中,脫機運行并用示波器測量引腳的電壓波形。5、在本課題例 4-2 中,如采用方式 0,試計算 T1

16、的初值,并設置 TMO,D程序修改后仿真運行,用示波器監測引腳的電壓波形。6、在例 4-2 中,如在中斷程序中不對 T1 重新賦初值,即刪除 MOVTH, #OFEH和M0VTL1, #OCH兩條指令,程序修改后仿真運行,用示波器測量引腳的電壓波形。7、在例 4-3 中,如將 JBC TF1 , T1OPR旨令改為 JB TF1 , T1OPR程序修改后仿真運行,用示波器測量引腳的電壓波形。課題三 串行通信及其應用1、簡述串行口初始化的步驟。2、簡述SM2 TB8禾n RB8位的作用。3、用Protel 軟件繪制出本課題中兩個例題的串行口應用電路原理 圖,并設計印制電路板圖及制作印制電路板。4

17、、連接仿真器, 將本課題中兩個例題的串行口應用程序輸入計算機, 并進行仿真調試及運行。5、連接編程器,將仿真通過的程序代碼下載到單片機中,脫機運行并觀察電路運行情況。6、如在例4-4中,單片機RX引腳只接74LS164的A引腳或B引腳,電路修改后運行程序,觀察電路運行情況。7、如在例4-4中,74LS164的Q0接數碼管的a段,Q1接b段,Q6接數碼管的g段,電路修改后,運行程序,觀察電路運行情況。8、如在例 4-5 中應用串行通信方式 2或方式 3,則程序應如何修改,修改后仿真運行,觀察電路運行情況。模塊五 單片機接口電路及應用1、課題一 鍵盤接口電路及其應用用 Protel 軟件繪制出本課

18、題兩個設計任務的電路原理圖,并設計印制電路板圖及制作印制電路板。2、連接仿真器, 將本課題兩個設計任務的程序輸入計算機,并進行仿真調試及運行。3、連接編程器, 將仿真通過的程序代碼下載到單片機中,脫機運行并觀察電路運行情況。4、分析本課題任務一和任務二中的鍵盤掃描及處理程序,并分析鍵值的計算方法,是否還能用其它方法來編寫鍵盤掃描程序。5、在任務一中自行設計幾組亮燈數據, 上機調試運行, 觀察電路運行情況。6、在任務二中將密碼位數修改為 10 位并自行設計一組密碼,程序修改后上機調試運行,觀察電路運行情況。7、在本課題任務一和任務二的鍵盤掃描程序中,將按鍵去抖動和等待按鍵釋放程序段刪除, 程序修改后上機調試運行, 觀察電路運行情況,并分析原因。課題二 顯示器接口電路及其應用1、用 Protel 軟件繪制出本課題設計任務的電路原理圖,并設計印制電路板圖及制

溫馨提示

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

評論

0/150

提交評論