新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 利用8051單片機(jī)串行口串并轉(zhuǎn)換輸出程序

利用8051單片機(jī)串行口串并轉(zhuǎn)換輸出程序

作者: 時(shí)間:2016-11-26 來(lái)源:網(wǎng)絡(luò) 收藏
;利用8051串行口,和并行輸出串行移位寄存器74LS164,
;擴(kuò)展一位數(shù)碼顯示在數(shù)碼顯示器上循環(huán)顯示0-9這10個(gè)數(shù)字。
;晶振頻率為11.0592MHZ
;4C00為50ms定時(shí)常數(shù)
ORG0000H
LJMPSTART
ORG000BH;定時(shí)器0中斷程序入口地址
AJMP INTT0
ORG0040H
START:
MOVSP,#60H
MOVTMOD,#01H;定時(shí)器0方式 1
MOVTL0,#00H;延時(shí) 50mS 的常數(shù)
MOVTH0,#4CH
MOVR0,#0
MOVR1,#20
MOVSCON,#00H;置串口工作方式 0
CLRTI
CLRRI
SETB TR0;開(kāi)中斷
SETB ET0
SETB EA
SJMP $
INTT0:;定時(shí)器0中斷子程序
PUSH ACC;保護(hù)現(xiàn)場(chǎng)
PUSH PSW
CLRET0;關(guān)定時(shí)器0中斷
CLRTR0
MOVTL0,#00H;延時(shí) 50mS 的常數(shù)
MOVTH0,#4CH
DJNZ R1,EXIT
MOVR1,#20;延時(shí)一秒的常數(shù)
MOVDPTR,#DATAb;置表格基址
MOVA,R0;置表格偏移量
MOVC A,@A+DPTR;讀表格數(shù)據(jù)
CLRTI
MOVSBUF,A;串行發(fā)送數(shù)據(jù)
INCR0
CJNE R0,#0AH,EXIT ;判斷是否到表尾
MOVR0,#00H;調(diào)整表格偏移量
EXIT:
SETB TR0
SETB ET0;開(kāi)定時(shí)器0中斷
POPPSW
POPACC;恢復(fù)現(xiàn)場(chǎng)
RETI
DATAb:;數(shù)碼管顯示常數(shù)表
DB 03H,9FH,25H,0DH,99H,49H,41H,1FH,01H,09H;0 1 2 3 4 5 6 7 8 9
END


評(píng)論


技術(shù)專(zhuān)區(qū)

關(guān)閉