新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 51單片機控制交通燈的課程設計

        51單片機控制交通燈的課程設計

        作者: 時間:2016-11-23 來源:網絡 收藏
        51單片機控制交通燈的課設
        程序如下:
        ORG 00H
        ;************************************************************
        ;燈操作及數碼管顯示
        ;************************************************************
        START:MOV DPTR,#TAB
        MOV SCON,#00H
        MOV P1,#6CH
        MOV R0,#11
        D1: DEC R0;自定義為10S
        CJNE R0,#3,LP0
        LCALL DBDB
        MOV P1,#6CH
        LCALL DISP1
        D11:DEC R0
        CJNE R0,#0,LP00
        MOV P1,#6CH
        LCALL DBDB
        LCALL DISP
        MOV P1,#0AAH
        MOV R0,#04
        D2: DEC R0
        CJNE R0,#0,LP1
        LCALL DBDB
        LCALL DISP
        MOV P1,#0C6H
        MOV R0,#16 ; 自定義為15S
        D3: DEC R0
        CJNE R0,#3,LP2
        LCALL DBDB
        MOV P1,#0C6H
        LCALL DISP1
        D33:DEC R0
        CJNE R0,#0,LP22
        MOV P1,#0C6H
        LCALL DBDB
        LCALL DISP
        MOV P1,#0AAH
        MOV R0,#04
        D4: DEC R0
        CJNE R0,#0,LP3
        LCALL DBDB
        LCALL DISP
        MOV P1,#6CH
        MOV R0,#11
        LJMP D1
        LP0:LCALL DBDB
        LCALL DISP
        LJMP D1
        LP00: LCALL DBDB
        MOV P1,#6CH
        LCALL DISP1
        LJMP D11
        LP1:LCALL DBDB
        LCALL DISP
        LJMP D2
        LP2:LCALL DBDB
        LCALL DISP
        LJMP D3
        LP22: LCALL DBDB
        MOV P1,#0C6H
        LCALL DISP1
        LJMP D33
        LP3:LCALL DBDB
        LCALL DISP
        LCALL D4
        ;************************************************************
        ;除10運算
        ;************************************************************
        DBDB: MOV A,R0
        MOV B,#10
        DIV AB
        MOV R1,A
        MOV R2,B
        RET
        ;************************************************************
        ;顯示子程序
        ;************************************************************
        DISP: MOV A,R2
        MOVC A,@A+DPTR
        MOV SBUF,A
        JNB TI,$
        CLR TI
        MOV A,R1
        MOVC A,@A+DPTR
        MOV SBUF,A
        JNB TI,$
        CLR TI
        LCALL DELAY
        RET
        DISP1: MOV A,R2
        MOVC A,@A+DPTR
        MOV SBUF,A
        JNB TI,$
        CLR TI
        MOV A,R1
        MOVC A,@A+DPTR
        MOV SBUF,A
        JNB TI,$
        CLR TI
        LCALL DELAY1
        MOV P1,#0FFH
        MOV A,#10
        MOVC A,@A+DPTR
        MOV SBUF,A
        JNB TI,$
        CLR TI
        MOV SBUF,A
        JNB TI,$
        CLR TI
        LCALL DELAY2
        RET
        ;************************************************************
        ;延時子程序
        ;************************************************************
        DELAY:MOV R3,#09H
        K1: MOV R4,#100
        K2: MOV R5,#250
        K3: DJNZ R5,K3
        DJNZ R4,K2
        DJNZ R3,K1
        RET
        DELAY1:MOV R3,#09H
        SS1: MOV R4,#80
        SS2: MOV R5,#250
        SS3: DJNZ R5,SS3
        DJNZ R4,SS2
        DJNZ R3,SS1
        RET
        DELAY2:MOV R3,#09H
        AA1: MOV R4,#30
        AA2: MOV R5,#250
        AA3: DJNZ R5,AA3
        DJNZ R4,AA2
        DJNZ R3,AA1
        RET
        TAB:DB 3FH,06H,5BH
        DB 4FH,66H
        DB 6DH,7DH,07H
        DB 7FH,6FH,00H


        評論


        技術專區

        關閉
        主站蜘蛛池模板: 晋中市| 察哈| 淳化县| 武邑县| 织金县| 建昌县| 仪陇县| 昌江| 海安县| 通化县| 科技| 汤原县| 抚松县| 浠水县| 澄江县| 宁夏| 蓬莱市| 曲沃县| 南涧| 兴业县| 巴塘县| 曲阜市| 泰来县| 平安县| 永定县| 临海市| 博客| 弋阳县| 孝义市| 仁化县| 河北省| 民县| 阿克陶县| 红安县| 广安市| 壤塘县| 西充县| 重庆市| 额敏县| 德江县| 射洪县|