新聞中心

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

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

        作者: 時間:2016-11-26 來源:網(wǎng)絡(luò) 收藏
        ;利用8051串行口,和并行輸出串行移位寄存器74LS164,
        ;擴展一位數(shù)碼顯示在數(shù)碼顯示器上循環(huán)顯示0-9這10個數(shù)字。
        ;晶振頻率為11.0592MHZ
        ;4C00為50ms定時常數(shù)
        ORG0000H
        LJMPSTART
        ORG000BH;定時器0中斷程序入口地址
        AJMP INTT0
        ORG0040H
        START:
        MOVSP,#60H
        MOVTMOD,#01H;定時器0方式 1
        MOVTL0,#00H;延時 50mS 的常數(shù)
        MOVTH0,#4CH
        MOVR0,#0
        MOVR1,#20
        MOVSCON,#00H;置串口工作方式 0
        CLRTI
        CLRRI
        SETB TR0;開中斷
        SETB ET0
        SETB EA
        SJMP $
        INTT0:;定時器0中斷子程序
        PUSH ACC;保護現(xiàn)場
        PUSH PSW
        CLRET0;關(guān)定時器0中斷
        CLRTR0
        MOVTL0,#00H;延時 50mS 的常數(shù)
        MOVTH0,#4CH
        DJNZ R1,EXIT
        MOVR1,#20;延時一秒的常數(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;開定時器0中斷
        POPPSW
        POPACC;恢復現(xiàn)場
        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


        評論


        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 固始县| 桃园县| 巍山| 六盘水市| 长武县| 屏山县| 定州市| 英山县| 定日县| 静乐县| 赤峰市| 石台县| 分宜县| 五河县| 和顺县| 巴彦淖尔市| 峡江县| 长岭县| 宁德市| 交城县| 越西县| 全南县| 新巴尔虎左旗| 扎鲁特旗| 闸北区| 曲松县| 宜春市| 乌恰县| 垦利县| 吉木乃县| 孝昌县| 潼关县| 淮阳县| 曲水县| 嵊泗县| 徐闻县| 建水县| 青河县| 大化| 丹江口市| 屏东县|