标题: 51单片机汇编语言交通灯实现代码 [打印本页]

作者: supAllen    时间: 2017-12-7 20:04
标题: 51单片机汇编语言交通灯实现代码
CODE    SEGMENT ;
        ASSUME CS:CODE
IOCON        EQU 8006H
IOA     EQU 8000H
IOB     EQU 8002H
IOC     EQU 8004H

START:        MOV        AL,80H          ;写方式控制字,A口工作在方式0,做输出,B口工作在方式0,做输出,C口作为输出
        MOV        DX,IOCON
        OUT        DX,AL
        MOV        DX,IOB
        MOV        AL,0F0H                ;4个路口黄灯灯全灭
        OUT        DX,AL
        MOV        DX,IOC
        MOV        AL,0F0H                ;4个路口红灯全亮,绿灯全灭
        ;MOV        AL,0FH                ;4个路口红灯全亮
        OUT        DX,AL
        CALL        DELAY1
IOLED0:        MOV        AL,10100101B;;南北红灯灭,绿灯亮
        ;MOV        AL,01011010B;南北绿灯亮,东西红灯亮
        MOV        DX,IOC
        OUT        DX,AL
        CALL        DELAY1
        CALL        DELAY1
        OR        AL,0F0H                ;南北绿灯灭
        ;AND        AL,10101111B;南北绿灯灭
        OUT        DX,AL
        MOV        CX,8
IOLED1:        MOV        DX,IOB
        MOV        AL,10101111B;南北路口黄灯亮
        ;MOV        AL,01010000B;南北路口黄灯亮
        OUT        DX,AL
        CALL        DELAY2
        OR        AL,01010000B;南北路口黄灯灭
        ;AND        AL,10101111B;南北路口黄灯灭
        OUT        DX,AL
        CALL        DELAY2
        LOOP        IOLED1
        MOV        DX,IOC
        MOV        AL,0F0H        ;4个路口红灯全亮
        ;MOV        AL,0FH        ;4个路口红灯全亮
        OUT        DX,AL
        CALL        DELAY2
        MOV        AL,01011010B;;南北红灯亮,东西绿灯亮
        ;MOV        AL,10100101B;;南北红灯亮,东西绿灯亮
        OUT        DX,AL
        CALL        DELAY1
        CALL        DELAY1
        OR        AL,0F0H;东西绿灯灭
        ;AND        AL,01011111B;东西绿灯灭
        OUT        DX,AL
        MOV        CX,8
IOLED2:        MOV        DX,IOB
        AND        AL,01011111B;东西黄灯亮
        ;MOV        AL,10100000B;东西黄灯亮
        OUT        DX,AL
        CALL        DELAY2
        OR        AL,10100000B;东西黄灯灭
        ;AND        AL,01011111B;东西黄灯灭
        OUT        DX,AL
        CALL        DELAY2
        LOOP        IOLED2
        MOV        DX,IOC
        MOV        AL,0F0H        ;4个路口红灯全亮
        ;MOV        AL,0FH
        OUT        DX,AL
        CALL        DELAY2
        JMP        IOLED0
DELAY1:        PUSH        AX
        PUSH        CX
        MOV        CX,0030H
DELY2:        CALL        DELAY2
        LOOP        DELY2
        POP        CX
        POP        AX
        RET

DELAY2:        PUSH        CX
        MOV        CX,8000H
DELA1:        LOOP        DELA1
        POP        CX
        RET
CODE        ENDS
        END        START


作者: 2522584793    时间: 2019-6-11 17:40
有没有怎么接线的




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1