課程設(shè)計:按鍵計數(shù)器(匯編)
//計數(shù)器(0-100)
//此程序功能是:手動計數(shù)器,當(dāng)按鍵按下時,計數(shù)加一,液晶顯示一次(加一的結(jié)果)。
ORG00H
LJMPSTART
ORG30H
START:MOVDPTR,#TABLE;設(shè)置段碼首地址
MOVR0,#00H;計數(shù)初值存R0
MOVP0,#3FH
MOVP2,#3FH;復(fù)位時數(shù)碼管顯示0
S1:INCR0
CJNER0,#100,S2;到100的話重新歸零
MOVR0,#00H
S2:JBP3.3,$;在此死循環(huán)等待按鍵按下
LCALLDELAY;消除抖動延時
JBP3.3,S2
S3:MOVA,R0
MOVB,#10
DIVAB;分離計數(shù)值的個位和十位
MOVCA,@A+DPTR
MOVP0,A
MOVA,B
MOVCA,@A+DPTR
MOVP2,A
JBP3.3,S1;等待按鍵拾起
LJMPS3
DELAY:MOVR5,#20H;延時10ms
D1:MOVR6,#250
DJNZR6,$
DJNZR5,D1
RET
TABLE:DB3FH,06H,5BH,4FH,66H;0-9七段碼值
DB6DH,7DH,07H,7FH,6FH
END
評論