MCS-51單片機(jī)并行口輸出彩燈移動(dòng)程序舉例
掃描二維碼
隨時(shí)隨地手機(jī)看文章
?。保绦蚪Y(jié)構(gòu)采用主程序和中斷服務(wù)子程序結(jié)構(gòu)
2.定時(shí)中斷程序,并行口輸出,控制彩燈移動(dòng)
定時(shí)器0于方式1,16位,10ms中斷一次
40H10ms計(jì)數(shù)單元
41H初值為01101101B
位地址00H=1
定時(shí)方式1為10MS:THX=0ECH,TLX=78H
?。常畢⒖汲绦?/p>
;
DISPEQU0DE00H;顯示子程序入口
;
ORG0000H
START:AJMPMAIN
;
ORG000BH;定時(shí)器0中斷服務(wù)程序入口
AJMPTINT0
;
ORG0030H
MAIN:MOVR0,#39H;顯示緩沖區(qū)初始化
MAIN_0:MOV@R0,#0
INCR0
CJNER0,#40H,MAIN_0
MOV41H,#01101101B
SETB00H
MOVTMOD,#01H
MOVIE,#10000010B
MOVTH0,#0ECH;10ms:EC78H
MOVTL0,#78H
SETBTR0
MAIN_1:ACALLCONT;主程序循環(huán)
SJMPMAIN_1
;
CONT:LCALLDISP;控制程序
RET
;
;定時(shí)器0中斷服務(wù)程序
TINT0:MOVTH0,#0ECH
MOVTL0,#78H
PUSHACC;保護(hù)現(xiàn)場(chǎng)
PUSHPSW
INC40H
MOVA,40H
CJNEA,#50,TINT0R
MOV40H,#0
MOVA,41H
MOVC,00H
RRCA
MOV41H,A
MOV00H,C
MOV3FH,A;輸出顯示緩沖
TINT0R:POPPSW;恢復(fù)現(xiàn)場(chǎng)
POPACC
RETI