大連理工大學實驗報告
實驗時間: 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 教育學生愛撫...