資源描述:
《實驗二-中斷控制實驗實驗三-定時/計數(shù)器實驗》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、《單片機原理與接口技術(shù)》第3章單片機集成功能模塊實驗實驗二中斷控制實驗實驗三定時/計數(shù)器實驗班級:學(xué)號:_成績:_指導(dǎo)老師:_日期:2017年11月6日實驗二中斷控制實驗L0O-?■Opi.o發(fā)光二極管單片機圖3-2-1實驗接線圖L0O-?■-Opi.o發(fā)光二極管單片機SPO--OP3.2單脈沖3-2-2實驗接線一、實驗?zāi)康膶W(xué)習(xí)屮斷控制技術(shù)的基本原理,掌握屮斷程序的設(shè)計方法。二、實驗原理1、參照實驗電路連線圖接線,在8051的P1門上接8個發(fā)光二極管,在INT0(P3.2)接入觸發(fā)脈沖電路,利用下降
2、沿觸發(fā)產(chǎn)生中斷。2、編制主程序,使P1口的8個發(fā)光二極管同時亮,延時一會兒在同時熄滅,延時時間自定。外來脈沖每觸發(fā)一次,主程序便中斷一次,在中斷服務(wù)子程序中,使P1口的8個發(fā)光二極管在某一時刻只有一個點亮,并向左循環(huán)移動。三、儀器設(shè)備:1、PC計算機一臺。2、Dais-386PRO+實驗系統(tǒng)一套。Ui實驗內(nèi)容:1、定時器屮斷單片機集成的定時器可以產(chǎn)生定吋中斷,利用定時器T0,編寫程序,使P1.0控制的發(fā)光二極管L0每隔1秒交替點亮或熄滅。實驗步驟:1)按圖3-2-1連接實驗電路,參考程序:A513
3、_2_1.ASM;2)編寫程序,經(jīng)編譯、鏈接無語法錯誤后裝載到實驗系統(tǒng);3)運行程序,觀察發(fā)光二極管L0,應(yīng)每隔1秒交替點亮或熄滅;4)實驗完畢后,應(yīng)使用暫停命令中止程序的運行。2、外部中斷P3.2(INTO)連接單脈沖發(fā)生器,編寫程序,每按一次脈沖產(chǎn)生一次中斷,使P1.0控制的發(fā)光二極管L0交替點亮或熄滅。實驗步驟:1)按圖3-2-2連接實驗電路,參考程序:A513-2-2.ASM;2)編寫程序,經(jīng)編譯、鏈接無語法錯誤后裝載到實驗系統(tǒng);;定時器屮斷實驗;P1.0——發(fā)光二極管顯示L0COUNTE
4、QU9217;11.0592MHz延時10msLEDEQUP1.0ORG0000H;復(fù)位地址AJMPMAIN;開始時跳轉(zhuǎn)轉(zhuǎn)到主程序ORGOOOBH;TO入口地址AJMPTNT_TOORG01OOH4)實驗完畢后,應(yīng)使用暫停命令中止程序的運行。;外部中斷實驗;P1.0發(fā)光二極管顯示L0;P3.2——單脈沖單元SPLEDBIT1)1.0ORG0000HAJMPMAINORG0003HAJMPINTOSVRORG010011MAIN:SETBLEDMOVTCON,#01H;外部中斷0下降沿觸發(fā)MOVIE,
5、#81H:打開外部巾斷允許位(EXO)及總巾斷允許位(EA)SJMP$;等待中斷;中斷服務(wù)子程序INTOSVR:CPLLEDMAIN:SETBLEDMOVTMOD,#0000000IB;設(shè)置定吋器TO工作在方式1(16位)MOVTHO,#HIGH(65536-COUNT);設(shè)置初伉CLRTEO;先把溢出標志位清零SETBTRO:開始計時SETBEA;企局中斷打幵SETBETO;定時器/計數(shù)器TO溢出中斷打開MOVR7,#00H;作為定時器累加器使用SJMP$;循環(huán),等待屮斷:屮斷服務(wù)子程序INT_T
6、O:INCR7:計數(shù)增量CLRTFO:重新置中MOVTLO,#LOW(65536-COUNT)斷標志位為0MOVTHO,#(65536-COUNT)/256;重新符初值MOVTLO,#255CJNER7,#100,RETURN:讓燈明暗相間IsMOVR7,#00HCPLLED3上燈明暗交替變化RETURN:RETTEND3)運行程序,每按動一次單脈沖按鈕令發(fā)光二極管L0交替點亮或熄滅;五、實驗結(jié)果討論:定時器屮斷:由于實際晶振為11.0592MHz,所以延時10ms時設(shè)置的初值為DBFFlh本程序運
7、用了兩種方法設(shè)置初值,一種是用HTGH(65536-C0UNT)取高8位,一種是(65536-COUNT)/256右移8位來取高八位,然后用中斷服務(wù)子程序來進行100次循環(huán)來延時Is并且CPL指令取反來實現(xiàn)燈的明暗交替變換。外部中斷:設(shè)定外部中斷0的下降沿觸發(fā),通過P3.2—INTO的單脈沖來控制發(fā)光二極管L0交替點亮或熄滅。實驗三定時/計數(shù)器實驗一、實驗?zāi)康膶W(xué)習(xí)定時/計數(shù)器的工作方式,掌握程序設(shè)計方法。二、實驗原理8051單片機內(nèi)部有兩個16位可編程定時器/計數(shù)器:T0和T1。16位是指它們都是有
8、16個觸發(fā)器構(gòu)成,故最大計數(shù)模值為216-1。可編程是指它們的工作方式由指令來設(shè)定,或者當(dāng)計數(shù)器用,或者當(dāng)定時器用,并且計數(shù)(定時)的范圍也可以由指令來設(shè)置。這種控制功能是通過定時器方式控制寄存器TMOD來完成的。工作在定時方式時,時鐘由單片機內(nèi)部提供,即系統(tǒng)時鐘經(jīng)過12分頻后作為定時器的時鐘;工作在計數(shù)方式時,時鐘脈沖(計數(shù)脈沖)由T0和T1(即P3.4和P3.5)輸入。定吋器/計數(shù)器在計到規(guī)定的計數(shù)值時可以向CPU發(fā)出中斷申請,從而完成某種控制功能。定時器/計數(shù)器