單片機(jī)實(shí)驗(yàn)報(bào)告——LED燈控制器_第1頁(yè)
單片機(jī)實(shí)驗(yàn)報(bào)告——LED燈控制器_第2頁(yè)
單片機(jī)實(shí)驗(yàn)報(bào)告——LED燈控制器_第3頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、微機(jī)實(shí)驗(yàn)報(bào)告LED燈控制器指導(dǎo)教師: 專(zhuān)業(yè)班級(jí): 姓名: 學(xué)號(hào):聯(lián)系方式:任務(wù)要求實(shí)驗(yàn)?zāi)康模杭由顚?duì)定時(shí)/計(jì)數(shù)器、中斷、1()端口的理解,掌握定時(shí)/計(jì)數(shù)霽、中斷的應(yīng) 用編程技術(shù)氏中斷程序的調(diào)試方法。實(shí)驗(yàn)內(nèi)容:利用C8O51F31O單片機(jī)設(shè)計(jì)一個(gè)LED燈控制器主要功能和技術(shù)指標(biāo)要求:1. LEP燈外接于P0.0端。2. LEP燈分別按2Hz, 1Hz和0.5Hz三種不同頻率閃動(dòng),各持續(xù)10s。3. 在LED燈開(kāi)始和停止閃爍時(shí)蜂嗚器分別嗚響1次。4. 利用單片機(jī)內(nèi)部定時(shí)翳定時(shí),要求采用中斷方式。提高要求:便用按鍵(K1NT)控制LED燈閃爍棋式的切換。設(shè)計(jì)思路C8051F310單片機(jī)片上晶振為24.

2、5MHz採(cǎi)用8分頻后為3.0625MHz ,輸入時(shí)鐘信 號(hào)為48個(gè)機(jī)器周期,所以T1定時(shí)器采用定時(shí)方式1,單次定時(shí)晟長(zhǎng)可以達(dá)到的時(shí)間為 1.027s,可以滿(mǎn)足0.5Hz是的定時(shí)要求?;A(chǔ)部分:給TNIOP賦值10H,即選用T1定時(shí)器采用定時(shí)方式1,三種頻率對(duì)應(yīng)的半周期 時(shí)間為 0.25s、0.5s、Iso 計(jì)算得需給 TH1 和 TL1 為 C1H、BIH; 83H、63H; 06H、C6H。 要使閃爍持綾10s,三種棋式需要各循環(huán)40、20、10次。用L()OP3:M()V C,PSW.5 ; PSW.5為標(biāo)志位,進(jìn)定時(shí)黑中斷后置一JNC LOOP3代替踏步程序等待中斷,以便中斷完后回到主程

3、序繼綻向下執(zhí)行。為了減少代碼長(zhǎng)度,可以采用循環(huán)結(jié)構(gòu),循環(huán)主題中,將Rl、R2分別賦給TH1、 TL1, R7為循環(huán)次數(shù)(用DJNZ語(yǔ)句實(shí)現(xiàn));定時(shí)中斷里,畫(huà)新給TH1、TL1賦值時(shí)同 理。這祥,術(shù)環(huán)時(shí)只要把定時(shí)時(shí)間和循環(huán)次數(shù)賦給Rl、R2、R7即可,達(dá)到減少代碼 長(zhǎng)度的效杲。蜂嗚器也采用T1定時(shí)方式1,定時(shí)一秒。提離部分:采用外部中斷0,下降沿觸發(fā)。外部中斷程序里置標(biāo)志位PSR.1和RO, PSV7.5用于 判斷執(zhí)行完一種模式后,是否跳出術(shù)環(huán)結(jié)束。R0用于判斷執(zhí)行何種模式,每按一次后RO 加一,第四次時(shí)就將R0和PSW.5清零,這樣程序就又回到了基礎(chǔ)部分的循序執(zhí)行。因?yàn)橹袛喑绦驁?zhí)行完后,會(huì)回到

4、原來(lái)程序中斷的地方,繼續(xù)向下執(zhí)行而給程序運(yùn)行帶來(lái) 諸多不便。所以,査沓了 RETI語(yǔ)句的實(shí)現(xiàn)形式:將棧頂壓入PCH, POP后再將棧頂壓入 PCL,利用這個(gè)定義,只要將需要返回的地址壓入PCH和PCL就能返回到指定地址。三、資源分配P0.0:為L(zhǎng)ED燈控制端口,高電平觸發(fā)。P3.1:為蜂鳴器控制端口,高電平蝕發(fā)。P0.1:為KINT鍵控制端口,下降沿觸發(fā)。Rl、R2:用于存放計(jì)時(shí)器計(jì)時(shí)數(shù)據(jù),R1賦給TH1、R2賦給TL1。R7:存放三種模式的循環(huán)次數(shù)。R0:在外部中斷程序中賦值,用于判斷采用何種模式。PSW-1:為標(biāo)志位,用于等待定時(shí)器中斷,中斷執(zhí)行完清霧,并在中斷處向下繼綾執(zhí) 行程序。PSW

5、.5:為標(biāo)志位,用于判斷執(zhí)行一種中斷還愛(ài)三種,在外部中斷程序中改變。四、流程圖1主程序流程圖(合提高部分):2 外部中斷流程圖3 立時(shí)器中斷流程圖定時(shí)器溢出 觸發(fā)中斷五、源代碼(含文件頭說(shuō)明、資源使用說(shuō)明、語(yǔ)句行注釋)*:*:*:*:*:* 來(lái) *+*:* 水班 *1*:*9;Filcnamc: LED 燈閃爍.asm;Pccription: LED LED燈分別按2Hz, 1Hz和0.5Hz三種不同頻率閃動(dòng),各持續(xù)10s。;在LED燈開(kāi)始和停止閃爍時(shí)蜂嗚器分別鳴響1次。按一次按鈕,LEP以;2Hz頻率閃動(dòng);按第二次以1Hz頻率閃動(dòng);按第二次以0.5Hz頻率閃動(dòng);;第四次時(shí)又順序執(zhí)行三種模式(

6、可以在任何時(shí)候按按鈕,不必等上一模;式閃爍完);Dcsigiicd by: gxy;Datc:2012.10.319include (C8051F31().inc)LEP BIT PO.O;LED燈控制端口BEEP BIT P3.1;蜂嗚器控制端口KINT BIT PO1;K1NT按鈕端口ORG 0000H;復(fù)位入口LJMP MAINORG 0003H;外部中斷0入口LJMP T_K1NTORG 001BH淀時(shí)器1入口LJMP TIME1MAIN: LCALL Init_Dcncc;初始化配置M()VR0,#00HCLR LED;關(guān)led燈CLRBEEPCLR PSW1;標(biāo)志位1清零CLR P

7、SW.5;標(biāo)志位2清零SETB EA;允許總中斷SETB EXO;外部中斷0允許SETB ITO;下降沿延蝕發(fā)MC)VTM()P,#10H;f T1為定時(shí)方式SETB ET1;定時(shí)器T1允許中斷a*;外部中斷返回處,選擇模式.*#*#*#* ,CHOO: CJNE R(),#02H丄OOP;選擇楔式LJMP CASE2;R0等于02H,跳轉(zhuǎn)到棋式2L(X)P:JC CASE1R()小于02H,跳轉(zhuǎn)到撲式1LJMP CASE3工()大于02H,跳轉(zhuǎn)到棋式3水*:*:*:*:*:*:*:*:*:*:*:*:*:*:* 9濮式1, 2Hz閃爍10s *:*:*J#C*:*:* 來(lái) * 球 *水*:水

8、:*:*電*:*水:*玻*:*水:*:*:水取*:*CASE1:M()V R1,#OC1HMOV R2,#OB1HMOV R7,#28HLMP START*水:*水:*:*:*:*水*:*:*水:*:*:*:*:*水來(lái)*;模式2, 1Hz閃爍10s*:*:*:*:*:* 來(lái) *:*:*CASE2:M()V R1,#83HMOV R2,#63HMOV R7,#14HLMP START.*#*#*#*;模式3, 0.5Hz閃爍10s.*#*#*#*CASE3:M()V R1,#()6HMOV R2,#0C6HMOV R7,#()AHLMP START.*#*;閃爍控制程序M()VC,PSW.lJC

9、THER E外CJNE A,#14H丄()()P2LJMP CASE3L()()P2:JC THERELIMP CASE2.*#*#*#*#*#*:*START:LCALLV()1C E;蜂鳴IsMOVTH1.R1MOVTL1,R2MOV AR7BACK: SETB TRI;開(kāi)定時(shí)L(X)P1:M()VC,PSW.5;等待中斷,中斷會(huì)雖一標(biāo)志位PSW.5JNC LOOP1;中斷結(jié)束,繼綾向下運(yùn)行CLR PSW.5;清零標(biāo)志位PJNZ R7,BACK;術(shù)環(huán),便閃爍達(dá)到10s;PSW.l為1則只執(zhí)行一種模式跳轉(zhuǎn)到THERE等待;部中斷;順序執(zhí)行時(shí),劌斷下一棋式;A=14H則跳轉(zhuǎn)到模式3;A<

10、14H則跳轉(zhuǎn)到模式2TH ERE:LCALL VOICE;蜂嗚IsSJMP S;踏步,等待外部中斷;蜂嗚器響Is.*#*VOICE:SETB BEEP;開(kāi)蜂嗚MOVTH1,#06HM()VTLh#0C6HCLR PSW.5SETB TRI;開(kāi)定時(shí)黑1L(X)P3:MOVC,PSW.5;等待中斷JNC L()()P3CLR BEEP;關(guān)蜂嗚RET.*#*;外部中斷0.*#*T_K1NT:SETB PSW.l;標(biāo)志位1置一,用于判斷是否順序執(zhí)行三種棋式INC RO尺)加一,用于利斷何種摸式CJNE R(),#()4H,K_RETCLRPSW瓦)到04H時(shí)清零標(biāo)志位和R0MOV RO,#0()HK_

11、RET: CLR TRI;關(guān)定時(shí)器1POP SPPOP SP;出棧兩次MOV PPTR,#0036H;OO36H為選擇處地址PUSH PPL;DPL壓入棧頂PUSH PPH;pph壓入棧頂RETI;返回到知道位雖.*淀時(shí)器1中斷TIMElrMOVTHl.RlM()VTL1,R2;重新置數(shù)SETB PSW.5;標(biāo)志位宜一CLRTR1;關(guān)定時(shí)CPL LED;LED取反RET!水*:*:*:*:*:*:*:*:*:*:*:*:*:*:*;初始化配晝 .*#*PCAJnit:;關(guān)閉看門(mén)狗Timcr_lnit:movTMOP,#01 OhmovCKCON,#002hret;定時(shí)器1初始化配置anl PC

12、A0MD,#OBFhmov PCAOMD,#O(X)hret;端口初始化配宣;中斷初始化配宣Port_I()_lnit:mov XBR1, #()40h retIntcrrupts_lnit:mov IE.# (X)9hretInit_Dcviccr:lcall PCAJnitlcall Timcr_Initlcall Port_I()_lnitlcall Intcrruptsjnit retEND程序測(cè)試方法與結(jié)果、軟件性能分析1、軟件調(diào)試總體界面:| '皿廠(chǎng)ParJWPort 3OxOT 0x03 Ctefll 0x01 0x0X0 c o?(o:oo QTO2CO30x0)sta

13、tesw=r r TF1¥習(xí)ixdptrCJNZUMF:L0CP2:JCWMPA,*LrLOCP2CASE3THERECiSE2TCON:議 WD So"TH1TL1.mFPoti-I , £ Bts 3 ra:|SFF fppppP3MWN. |SfF pppppP3MD0UT W0 rTTTTBns SfF 帀麗 PMJJ C.P5V.1 JC IH£F£20: 3MP MAIH21: O3G 0003H;外總<>:: 0x000002001Z 1JMP MAIX(C:001E)22: LCMP T ZI2C滋g砒* E- E侮

14、5TAF.T:LCALL VOICE KW THbRl Z TL1ZR2 MJJ A,R7 3iCK: SZT2 7F.1 二OCF::M7J C.PS.5 JMC LOOP1 CU» PSW.S WNZ R7,BACHTimcf/Cocnwr 1Trner?CoLfrtef 1 -Mdert Soiree比如 | Wo* | Ffeq | Bo | Pn*moC003H0000TiwcrOKC6H000M0000 FTiner 1W1BH000歸SOOT2JH000 LL沁畑cM2JH000liner 2OKfiH000Tiner2Lc4<0 0 0 0SF1 ktanxt:

15、03JH0005F1 WVrc CdiKriCO33H000SF1 Exc:C33H000SB Receive OvefnnW31H000.Paralid P* 0探-PccO.=-? Bis0PO: pfF pp y|/pPWDIN. / f>yWMCOUT 阿 nTTTTTT pgskp 阿 rrrrrrrr厶Piu CxFF p W2$712、定肘器1測(cè)試軟件調(diào)試時(shí)利用標(biāo)志位用L(X)P1:MOVCTSW.5JNC LOOP1語(yǔ)句,可以在中斷返回后,在中斷處繼綾向下執(zhí)行代碼硬件調(diào)試時(shí),可以順序以2Hz, 1Hz和0.5Hz 3種不同頻率閃動(dòng),各掙綻10s,并且蜂嗚器鳴叫Is正常3、

16、定時(shí)循環(huán)代碼測(cè)試:例如執(zhí)行撲式1定時(shí)0.25s,要循環(huán)40次才能跳出開(kāi)始時(shí),R7為28HRegisterJ Value Regsr00x01fOxclOxblr3000r4000:“ r50x00ir60x000x28一次循環(huán)后R7為27HrOOzOlrlOxclr20x66r30x00r40x90rS0x00r60x00沖T0x27RegisterValue耳.Regs趾出循環(huán)時(shí),R7為0t>C:OxO0 6E A2D1MOVCf Fl(0xD0J.)81:JC THERE&2 :gbsp sp_maxdptrPC $ statessecS psw0x000010x0b0x00

17、36C:Ox006E3306185810. 795T0873082所以,定時(shí)循環(huán)程序正常4、外部中斷測(cè)試rouxuur60x00r70x27a0x28b0k00sp0k03spjnax0x0bdptr0x0036PC $C:OxOOACstates3062717sec1.00007086psw0x82E Sys+1069070071072073074075076077078079吩0800813led.asm *START: LCALL VOICEMOY TiilzRlMCW TLlrR2bfOV AfR7BACK: SETB TRILOCPlibfOV Cz PSW 5JNC LOOP1CL

18、R PSW.5DJNZ R7 z BACK|MOV C, PSW . 1JC THERE105106107;外部中斷0108;*109r_KINT:SETE PSW.l110INC RO111CJNE R0z #04HrKJCLR PSW .111314OV RO 岸00目114K_RET: CLR TRI115POP SP116POP SP117MOV DPTR,#O036H118PUSH DPL119PUSH DPH120 |RET IRET如圖,軟件調(diào)試時(shí),進(jìn)入中斷程序執(zhí)行到RET1后,DPTR被賦為0036H, pc在OOACH處再執(zhí)行一步r7 白 Sys0x270x280x000x0

19、1037038039040041042043044045046047048049050MOV TMOE,tlOHSETE ET1a;直三1為走討方蘆 ;定時(shí)器"允許彳sp_m dptr PC $ states!“ sec十 pswOxOb 0x0038C:0x0036 30627221.000072490x82:CJNE ROr#02H,LOOPLJMP CASE2LOOP: JC CASE1LJl-fP CASE3 *模弍丄:2 且乙 cases = c:OxOO53 *CASE1: MOVMOVMOVLJMPRlr#OC1HR2r#OBl.H R7r28H STARTPc在OO36H處,返回到了指定位置。所以,這說(shuō)明不管程序運(yùn)行到了哪雖,只要按下KINT饞,就會(huì)返回到指定位晝,選擇下一種濮式運(yùn)行。Program Size: data=&0 xdata=0 codc=219代碼利用合理空行和注釋?zhuān)粌H在視.覺(jué)上美化了,而且讓各個(gè)于段程序的功能一目了然,方便凋試和檢錯(cuò)硬件調(diào)試時(shí),在C8051F310單片機(jī)開(kāi)發(fā)板上跑代碼:不按KINT鍵時(shí),LED燈以2Hz, 1Hz和0.5Hz三種不同頻率閃動(dòng),各持續(xù)10s,在開(kāi)始、結(jié)束和切換模式時(shí),蜂嗚黑都響Is,按下一次時(shí),LED燈以2Hz閃爍10s后結(jié)束;按下兩次時(shí),JED燈以1Hz閃爍10s后結(jié)束;按下三次時(shí)

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論