![8位流水燈的單片機控制_第1頁](http://file4.renrendoc.com/view10/M03/17/2C/wKhkGWWFq-OAU6ZEAAH_Qhm0AnI098.jpg)
![8位流水燈的單片機控制_第2頁](http://file4.renrendoc.com/view10/M03/17/2C/wKhkGWWFq-OAU6ZEAAH_Qhm0AnI0982.jpg)
![8位流水燈的單片機控制_第3頁](http://file4.renrendoc.com/view10/M03/17/2C/wKhkGWWFq-OAU6ZEAAH_Qhm0AnI0983.jpg)
![8位流水燈的單片機控制_第4頁](http://file4.renrendoc.com/view10/M03/17/2C/wKhkGWWFq-OAU6ZEAAH_Qhm0AnI0984.jpg)
![8位流水燈的單片機控制_第5頁](http://file4.renrendoc.com/view10/M03/17/2C/wKhkGWWFq-OAU6ZEAAH_Qhm0AnI0985.jpg)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
工程二:8位流水燈的單片機控制工程目標工程任務工程分析工程預備知識工程實施知識點鏈接工程目標通過單片機控制8個發(fā)光二極管的順序點亮,學會使用MCS-51單片機芯片的P1口進行輸出控制,進一步學習匯編程序的分析方法,并能熟練運用RR、RL等根本指令。工程任務要求應用AT89C51芯片,控制8個發(fā)光二極管的有序亮滅,呈現(xiàn)流水燈的效果。設(shè)計單片機控制電路并編程實現(xiàn)此功能。工程分析利用單片機P1口連接8個發(fā)光二極管,利用各引腳輸出電位的變化,控制發(fā)光二極管的亮滅。P1口各引腳的電位變化可以通過指令來控制,為了清楚地分辨發(fā)光二極管的點亮和熄滅,在P1口輸出信號由一種狀態(tài)向另一種狀態(tài)變化時,編寫延時程序?qū)崿F(xiàn)一定的時間間隔。工程預備知識:循環(huán)移位指令
RLA將累加器A中的數(shù)據(jù)依次左移一位
RRA將累加器A中的數(shù)據(jù)依次右移一位
RLCA將累加器A中的數(shù)據(jù)連同進位標志位CY一起依次左移一位
RRCA將累加器A中的數(shù)據(jù)連同進位標志位CY一起依次右移一位RLA
RRARLCARRCAA.7 A.0A.7 A.0A.7 A.0CYCYA.7 A.0后兩條指令,影響P標志和CY。循環(huán)移位指令〔4條〕例:假設(shè)A=5CH,CY=1,執(zhí)行RLCA后,
對RLC、RRC指令,在CY=0時
RLC相當于乘以2 RRC相當于除以2結(jié)果:A=B9H,CY=0,P=1010111001101110010CLRA將累加器A中的數(shù)據(jù)清零CPLA將累加器A中的數(shù)據(jù)取反
工程預備知識:清0與取反指令取反:CPLA;/A→A例:假設(shè)A=5CH,執(zhí)行CPLA結(jié)果:A=A3H清0:CLRA ;0→A在工程一和工程二中,為了能清晰的分辨出蜂鳴器的鳴叫和發(fā)光二極管的變化,我們進行了延時程序的編寫。CPU執(zhí)行完延時程序消耗的時間即是我們所要延時的時間,通??梢岳脮r鐘頻率、指令周期結(jié)合存放器中的數(shù)據(jù)進行延時時間的計算。延時程序如下:DELAY:MOVR7,#10;1μSD0:MOVR6,#100;1μSD1:MOVR5,#200;1μSD2:DJNZR5,D2;2μSDJNZR6,D1;2μSDJNZR7,D0;2μSRET工程預備知識:軟件延時程序的時間計算采用12MHz的晶振,那么一個機器周期是1μS,“MOVR7,#10〞是一條單周期指令,執(zhí)行1次需要1μS〔關(guān)于指令的執(zhí)行周期可以查附錄二〕?!癉JNZR5,D2〞是雙機器周期指令,執(zhí)行1次需要2×1=2μS。計算第1層循環(huán)〔D2〕的時間:200×2μS=400μS第2層循環(huán)〔D1〕的時間:〔1+400+2〕×100=40300μS第3層循環(huán)〔D0〕的時間:〔1+40300+2〕×10=403030μS≈0.4S〔一〕設(shè)計思路在AT89C51單片機芯片及根本外圍電路組成的單片機最小系統(tǒng)根底上,利用P1口的8個引腳控制8個發(fā)光二極管。由于發(fā)光二極管具有普通二極管的共性----單向?qū)щ娦?,因此只要在其兩極間加上適宜的正向電壓,發(fā)光二極管即可點亮;將電壓撤除或加反向電壓,發(fā)光二極管即熄滅。根據(jù)發(fā)光二極管的特性,結(jié)合單片機P1口的輸出信號,即可實現(xiàn)流水燈的控制效果。項目實施一、硬件電路設(shè)計〔二〕電路設(shè)計
1、P1口結(jié)構(gòu)及流水燈電路左圖是P1口中某一位的位結(jié)構(gòu)電路圖。P1口為8位準雙向口,每一位均可獨立定義為輸入或輸出口,當作為輸出口時,1寫入鎖存器,,T2截止,內(nèi)部上拉電阻將電位拉至"1",此時該口輸出為1;當0寫入鎖存器,,T2導通,輸出那么為0。作為輸入口時,鎖存器置1,T2截止,此時該位既可以把外部電路拉成低電平,也可由內(nèi)部上拉電阻拉成高電平,所以P1口稱為準雙向口。P1.0—P1.7:準雙向I/O口〔內(nèi)置了上拉電阻〕21DQCK/Q讀引腳=0讀鎖存器=0寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻〔1〕P1.0—P1.7作為輸出口【輸出1】21DQCK/Q讀引腳=0讀鎖存器=0寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻輸出數(shù)據(jù)=1時110截止=121DQCK/Q讀引腳=0讀鎖存器=0寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻輸出數(shù)據(jù)=0時001=0導通〔2〕P1.0—P1.7作為輸出口【輸出0】21DQCK/Q讀引腳=1讀鎖存器=0寫鎖存器內(nèi)部總線Vcc引腳P1.X內(nèi)部上拉電阻輸入數(shù)據(jù)時,要先對其寫“1〞110截止〔3〕P1.0—P1.7作為輸入口發(fā)光二極管的連接方法:假設(shè)將它們的陰極連接在一起,陽極信號受控制,即構(gòu)成共陰極接法,如圖a所示;假設(shè)將它們的陽極連接在一起,陰極信號受控制,那么構(gòu)成共陽極接法,如圖b所示。由于P1口引腳輸出高電位時電壓大約是5V,為保證發(fā)光二極管的可靠工作,必須在發(fā)光二極管和單片機輸出引腳間連接一只限流電阻。本工程選用硅型普通發(fā)光二極管,限流電阻取220Ω。P1口控制流水燈〔8個發(fā)光二極管〕電路綜合以上的分析,得到以下圖所示電路原理圖。〔三〕材料表
從原理圖可以得到實現(xiàn)本工程所需的元器件。元器件的選擇應該合理,以滿足功能要求為原那么,否那么會造成資源的浪費。序號元件名稱元件型號元件數(shù)量備注1單片機芯片AT89C511片DIP封裝
2發(fā)光二極管Φ51只普通型3晶振1只12MHz4電容30pF2只瓷片電容22uF1只電解電容5電阻200Ω8只碳膜電阻10kΩ1只碳膜電阻6按鍵1只無自鎖1只帶自鎖740腳IC座1片安裝AT89C51芯片8導線若干二、控制程序的編寫
〔一〕繪制程序流程圖
本控制使用簡單程序設(shè)計中的順序結(jié)構(gòu)形式實現(xiàn),程序結(jié)構(gòu)流程圖如以下圖?!捕尘幹茀R編源程序標號操作碼操作數(shù)指令意義(注釋)ORG0000H;偽指令,指明程序從0000H單元開始存放LJMPMAIN2;控制程序跳轉(zhuǎn)到“MAIN2”處執(zhí)行ORG0200H;主程序從0200H單元開始MAIN2:MOVP1,#0FEH;將立即數(shù)FEH送累加器A,L0亮LCALLDELAY;調(diào)用DELAY(延時)程序MOVP1,#0FDH;L1亮LCALLDELAYMOVP1,#0F7H;L2亮LCALLDELAYMOVP1,#0F7H;L3亮LCALLDELAYMOVP1,#0EFH;L4亮LCALLDELAYMOVP1,#0DFH;L5亮LCALLDELAY標號操作碼操作數(shù)指令意義(注釋)MOVP1,#0BFH;L6亮LCALLDELAYMOVP1,#7FH;L7亮LCALLDELAY;將立即數(shù)FEH送累加器A,L0亮SJMP$;重復執(zhí)行本條指令(程序結(jié)束)ORG0F00H;延時程序從0F00H開始DELAY:MOVR7,#10;將立即數(shù)10送通用寄存器R7D0:MOVR6,#100;將立即數(shù)100送通用寄存器R6D1:MOVR5,#200;將立即數(shù)200送通用寄存器R5D2:DJNZR5,D2;根據(jù)R5減1后的內(nèi)容判斷程序執(zhí)行方向DJNZR6,D1;根據(jù)R6減1后的內(nèi)容判斷程序執(zhí)行方向DJNZR7,D0;根據(jù)R7減1后的內(nèi)容判斷程序執(zhí)行方向RET;子程序返回指令END;程序結(jié)束標記2、程序執(zhí)行過程
ORG0000HLJMPMAIN2ORG0200HMAIN2:MOVP1,#0FEH;L0亮
LCALLDELAYMOVP1,#0FDH;L1亮
LCALLDELAYMOVP1,#0FBH;L2亮
LCALLDELAYMOVP1,#0F7H;L3亮
LCALLDELAYMOVP1,#0EFH;L4亮
LCALLDELAYMOVP1,#0DFH;L5亮
LCALLDELAY
MOVP1,#0BFH;L6亮
LCALLDELAYMOVP1,#7FH;L7亮
LCALLDELAYSJMP$;重復執(zhí)行本條指令
ORG0F00HDELAY:MOVR7,#10D0:MOVR6,#100D1:MOVR5,#200D2:DJNZR5,D2DJNZR6,D1DJNZR7,D0RET;子程序返回指令
END;程序結(jié)束標記在本工程中,利用P1口實現(xiàn)8個發(fā)光二極管的流水燈控制,主要利用了送數(shù)指令,將要顯示的現(xiàn)象對應的數(shù)據(jù)通過P1口送出。在編寫控制程序時,應首先將每個對應現(xiàn)象分析清楚,比方:要讓L3亮,其余發(fā)光二極管滅,那么P1口的數(shù)據(jù)應為11110111B;要讓L7亮,那么P1口的數(shù)據(jù)應為01111111B。然后找到能實現(xiàn)此操作的指令即可。下面使用我們在本工程中學習的移位指令編寫程序如下:ORG0000HORG0F00HLJMPMAIN2DELAY:MOVR7,#10ORG0200HD0:MOVR6,#100MAIN2:MOVA,#0FEHD1:MOVR5,#200XH:MOVP1,A
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年主持人聘合同(2篇)
- 2025年九年級語文教學年終總結(jié)(2篇)
- 2025年云南省鮮花訂購合同(三篇)
- 2025年二年級語文教學工作心得體會模版(3篇)
- 書店裝修小型合同樣本
- 醫(yī)療設(shè)施土方清運合同
- 清真寺裝修合同樣本
- 金華日式屋頂花園施工方案
- 度假別墅裝修合同協(xié)議
- 醫(yī)療藥品冷鏈運輸協(xié)議
- 商標法基礎(chǔ)知識
- 2025年高考物理一輪復習之機械振動
- 《道路交通安全法》課件完整版
- 初中2025教學工作計劃
- 2024年度市政工程項目三方合作協(xié)議3篇
- 【大學課件】機電設(shè)備管理技術(shù)概論
- (2024)甘肅省公務員考試《行測》真題及答案解析
- 《STP營銷戰(zhàn)略概述》課件
- 醫(yī)院醫(yī)務人員醫(yī)德考評標準
- 急性胸痛患者的急救護理
- 小紅書種草營銷師(初級)認證考試真題試題庫(含答案)
評論
0/150
提交評論