單元3 MCS-51單片機(jī)指令系統(tǒng).doc
《單元3 MCS-51單片機(jī)指令系統(tǒng).doc》由會(huì)員分享,可在線閱讀,更多相關(guān)《單元3 MCS-51單片機(jī)指令系統(tǒng).doc(33頁(yè)珍藏版)》請(qǐng)?jiān)趨R文網(wǎng)上搜索。
1、個(gè)人收集整理 勿做商業(yè)用途單元三 MCS51單片機(jī)指令系統(tǒng)3. 1 P1口外接8只LED發(fā)光二極管模擬彩燈132單片機(jī)做加、減、乘、除運(yùn)算1133 單片機(jī)作邏輯運(yùn)算1734 按鍵控制燈 2135LED顯示電路26 3.1 P1口外接8只LED發(fā)光二極管模擬彩燈學(xué)習(xí)目標(biāo):通過(guò)學(xué)習(xí)任務(wù)二的完成方法,掌握MCS-51單片機(jī)的數(shù)據(jù)傳送指令的功能及MCS-51單片機(jī)的尋址方式。任務(wù)描述:利用P1口外接的8只LED發(fā)光二極管模擬彩燈。常見的彩燈模式有:流水式彩燈、追逐式彩燈、累積式彩燈、開幕式與閉幕式彩燈以及將上述模式組合而成的復(fù)合式彩燈。大多數(shù)的彩燈都是采用單片機(jī)控制的,簡(jiǎn)單的彩燈單片機(jī)的控制程序也較為
2、簡(jiǎn)單,復(fù)雜的彩燈單片機(jī)控制程序也較為復(fù)雜.311硬件電路硬件電路如圖3。1所示。AT89S51是MCS51系列單片機(jī)中的一種,通常采用40腳DIP封裝, 1腳8腳是4個(gè)并行輸入/輸出端口(P0口、P1口、P2口、P3口)中的一個(gè),稱為P1口,8條口線用P1。0P1。7表示,這8個(gè)引腳均可帶最大20mA灌電流負(fù)載,可以直接驅(qū)動(dòng)發(fā)光二極管,圖示電路中D0D7為8只LED,各經(jīng)300電阻限流后接在+5V電源與P1端口之間。圖示電路中18、19腳所接晶振和電容與單片機(jī)內(nèi)部電路組成振蕩器,為單片機(jī)提供工作時(shí)鐘。9腳所接RC電路構(gòu)成單片機(jī)上電復(fù)位電路,單片機(jī)只有經(jīng)過(guò)復(fù)位才能開始執(zhí)行程序.工作原理當(dāng)P1。0
3、P1。7中的某端口為低電平時(shí),對(duì)應(yīng)的發(fā)光二極管亮,為高電平滅。我們只要控制P1口各位的電平狀態(tài),就可以控制8只LED的亮與滅。例如使(P1)=01010101B=55H, D7、D5、D3、D14只LED亮,D6、D4、D2、D04只LED滅,從效果上看亮與滅是相間隔的;反之,使(P1)=10101010B=AAH,則另外4只LED亮,若反復(fù)以一定時(shí)間間隔不斷從P1口輪流輸出55H和AAH,則P1口上8只LED會(huì)呈現(xiàn)流水彩燈的效果。312控制程序?qū)崿F(xiàn)上述8只LED發(fā)光二極管控制的程序非常簡(jiǎn)單,可以用不同的指令來(lái)編程。以下是幾種模式彩燈的控制程序。1。將立即數(shù)送P1口的程序ORG 0000H ;
4、 定義程序從程序存貯器0000H單元開始存放LOOP: MOV P1,#55H ; 立即數(shù)55H送P1口,4只LED亮SJMP LOOP ; 原地踏步END ; 程序結(jié)束第一條指令指明程序在程序存貯中的存貯位置,第二條指令將立即數(shù)55H傳送到P1口,對(duì)應(yīng)的LED燈亮,第三條指令是一條無(wú)條件轉(zhuǎn)移指令,即單片機(jī)執(zhí)行完上一條指令后,會(huì)不斷反復(fù)指行這條指令,直到電源斷電,第四條是程序結(jié)束指令(本例程序演示效果參見隨書光盤)。2。通過(guò)累加器A控制P1口的程序ORG 0000HLOOP: MOV A,#0AAH ;將立即數(shù)AAH送累加器AMOV P1, A ;累加器A中的數(shù)送P1端口SJMP LOOP ;
5、轉(zhuǎn)移到LOOPEND3.流水式彩燈程序最簡(jiǎn)單的流水式彩燈程序也是簡(jiǎn)單的,程序流程圖如圖3.2所示,程序如下。開始55H送P1口延時(shí)0.3秒AAH送P1口延時(shí)0.3秒圖3。2 最簡(jiǎn)單的流水式彩燈程序流程圖ORG 0000H LOOP: MOV P1,#55H ;將立即數(shù)55H送P1端口LCALL TIME ;調(diào)延時(shí)子程序TIMEMOV P1,#0AAH ;將立即數(shù)AAH送P1端口LCALL TIME ;調(diào)延時(shí)子程序TIMESJMP LOOP ;轉(zhuǎn)移到LOOPTIME: MOV R6,200 ;延時(shí)子程序TIMETIME1:MOV R7,#200 TIME2:NOPNOPNOPDJNZ R7,TI
6、ME2DJNZ R6,TIME1RETEND4.開幕式與閉幕式彩燈程序 ORG 0000H LJMP MAIN ;跳轉(zhuǎn)到主程序 ORG 0030HMAIN: MOV R0,#8 ;R0送循環(huán)次數(shù)8 MOV DPTR,TAB ;給數(shù)據(jù)指針賦值LOOP: MOV A,00H ; MOVC A, A + DPTR MOV P1,A LCALL TIME INC DPL DJNZ R0,LOOP SJMP MAINTIME: MOV R6,#200TIME1: MOV R7,200TIME2: NOP NOP NOP DJNZ R7,TIME2 DJNZ R6,TIME1 RETTAB: DB 81H
7、,0C3H,0E7H,0FFH,18H,3CH,7EH,0FFH END313源程序的編輯、編譯、下載打開“偉?!蹦M仿真軟件進(jìn)行程序的編輯、編譯。打開“ISP下載軟件”將目標(biāo)文件下載到ISP4實(shí)驗(yàn)開發(fā)板上的AT89S51單片機(jī)芯片,觀察程序運(yùn)行結(jié)果.314相關(guān)知識(shí)1.單片機(jī)內(nèi)部數(shù)據(jù)是怎樣傳送到端口使二極管發(fā)亮的?單片機(jī)內(nèi)部的端口寄存器與片外引腳是直接相連的,數(shù)據(jù)通過(guò)單片機(jī)內(nèi)部數(shù)據(jù)總線傳送到端口寄存器(用數(shù)據(jù)傳送指令完成數(shù)據(jù)的傳送),結(jié)合發(fā)光二極管硬件電路,二極管便發(fā)亮了。2。什么是數(shù)據(jù)傳送操作與數(shù)據(jù)傳送指令?MCS-51單片機(jī)有哪些數(shù)據(jù)傳遞指令?在剛才的任務(wù)中,我們提到了數(shù)據(jù)傳送指令以及數(shù)據(jù)
- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來(lái)的問(wèn)題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
10 積分
下載 | 加入VIP,下載共享資源 |
- 配套講稿:
如PPT文件的首頁(yè)顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 單元3MCS-51單片機(jī)指令系統(tǒng)