微控制器實驗報告

2021-03-04 02:49:43 字數 3419 閱讀 9798

大連理工大學實驗報告

實驗時間: 2013 年 7 月 1 日星期一時間 : 13 : 0016 : 30

實驗室(房間號): 綜 421 實驗台號碼: 班級: 電醫 1001 姓名: 梅世宇成績

實驗二外部中斷/int0 及定時計數器實驗

一.實驗儀器

計算機系統、dp-51proc微控制器綜合**實驗台、tk**onitor 51**器、軟體keilc51

二.實驗目的和要求

1. 學習、掌握微控制器的中斷原理。

2. 正確理解「中斷向量入口」、中斷呼叫和中斷返回的概念及物理過程。

3. 學習編制「軟體防抖程式」,了解「軟體防抖」原理。

4. 設計乙個「計數器」,利用查詢結構完成對其「加一」並顯示的功能。計數器原始清零。

利用 c2 區「邏輯筆」電路顯示 p3.3 的狀態:如果 p3.

3 的電平不斷轉換,則表明查詢結果為無按鍵輸入; 如果 p3.3 變為固定的高電平(邏輯筆顯示紅色),則表明查詢結果為有按鍵輸入。

5. 在原始程式基礎上實現兩個思考題:int1 代替 int0 和換用查詢結構。

6. 通過對 t1 的程式設計,學習、掌握定時器的初值計算,方式及模式設定等初始化方法。

7. 學習採用查詢和中斷兩種方式的程式設計技術。

8. 掌握秒脈衝的設計方法,為後續實驗打好基礎。

9. 學習掌握 pwm 原理及應用。

三.外部中斷/int0 實驗

1.實驗演算法

原程式演算法是在主程式中利用 cpl p3.3 的指令驅動其電平不斷地轉換(由邏輯筆電路做程式狀態監視),在中斷服務程式中將 p3.3 置 1,實現對計數器「加 1」並通過 p1 口顯示功能。

中斷結束後回到主程式,程式繼續對 p3.3 的電平不斷取反。思考題在仍然實現原程式的功能,但是採用查詢結構, 根據 p3.

2 有無按鍵輸入來實現加一顯示功能。

2.電路圖

3.流程框圖

4.程式清單

*** 8000h

ljmp start

*** 8003h

ljmp int_0

*** 8100h

start: mov sp,#60h

setb ea

setb ex0

mov tcon,#00h

mov r3,#00h

mov a,r3

cpl a

loop3: mov p1,a

cpl p3.3

lcall delay

sjmp loop3

int_0: push psw

lcall delay

setb p3.3

inc r3

mov a,r3

cpl a

mov p1,a

jnb p3.2,$

lcall delay

pop psw

reti

delay: push 01h

push 02h

mov r1,#00h

delay1: mov r2,#00h

djnz r2,$

djnz r1,delay1

pop 02h

pop 01h

retend四. 微控制器定時計數器實驗

1. 實驗演算法

在原程式的基礎上,選擇乙個工作暫存器 rn(引數)為「秒計數器」,原始清零。將中斷服務程式中的秒操作修改為每一秒鐘對計數器加 1,並通過累加器 a 向 p1 口輸出。要求 p1 口按照正邏輯顯示。

思考題一在仍然實現思考題一的功能前提下,換用查詢結構。思考題二利用 t1 做 pwm 的短脈寬計數器,t0 做 pwm 的長脈寬計數器,且兩個計數器均採用中斷方式。利用積分器具有的 dac 功能,將不同的脈寬轉換成不同的直流電壓實現直流電機的不同轉速。

2. 電路圖

3. 實驗框圖

4. 實驗程式

*** 8000h

ljmp 8100h

*** 801bh

ljmp t1_int

*** 8100h

start: mov sp,#60h

mov tmod,#22h

mov th0,#00h

mov lt0,#00h

clr p3.3

mov p1,#0ffh

mov a,p1

cpl a

mov th1,a

mov tl1,a

setb ea

setb et1

setb tr0

setb p3.3

sjmp $

t1_int: clr p3.3

mov a,p1

cpl a

clr tr1

mov th1,a

mov tl1,a

jnb tf0,$

clr tf0

setb p3.3

setb tr1

reti

end五. pwm電路及直流電機實驗

1.實驗電路

1.實驗框圖

3.實驗程式

*** 8000h

ajmp start

*** 801bh

ajmp int_t1

*** 8100h

start:mov sp,#60h

mov tmod,#10h

mov tl1,#0fch

mov th1,#4bh

mov r1,#20

setb tr1

clr a

setb et1

setb ea

sjmp $

int_t1:push psw

mov tl1,#0fch

mov th1,#4bh

djnz r1,exit

mov r1,#20

cpl a

mov pl,a

exit:pop psw

reti

end六. 實驗體會

通過本次實驗,我深入掌握了微控制器的中斷應用。學會了通過查詢結構設計計數器並顯示,我初步了解了pwm的原理和應用,掌握了pwm的程式設計方法。

實驗過程中,也出現了很多失誤。很多程式的錯誤通過debug得到了解決,我意識到debug的重要性。

微控制器實驗報告

1福建農林大學計算機與資訊學院 資訊工程類 實驗報告 2013 年 10 月 28 日 實驗專案列表 福建農林大學計算機與資訊學院資訊工程類實驗報告 系 電子資訊工程專業 電子資訊工程年級 2011級 姓名 詹緩輝學號 3116004094實驗課程 微控制器技術 實驗室號 田c513實驗時間 10....

微控制器實驗報告

一 實驗題目 試編寫一段程式,其功能為將21h單元的內容8位分別依次存放到從22h開始的8單元中。二 keil 0000h jmp start 0100h start mov 21h,8 mov a 21h 取出21中的數 mov r0,22h 初始化 mov r1,7h 迴圈次數為7 loop r...

微控制器實驗報告

學校 合肥工業大學 班級 電腦科學與技術 學號 姓名 實驗1 系統認識實驗 1 實驗目的 1 了解zy15mcu12bc2微控制器實驗開發裝置的接線與安排。掌握實驗箱內撥位開關kf,kc的使用方法。2 通過例項程式的編輯 編譯 鏈結及除錯,熟悉keilc51軟體的使用方法和基本操作。3 教育學生愛撫...