多语言展示
当前在线:653今日阅读:23今日分享:25

双色灯实验-------汇编语言

双色灯实验是经典汇编语言练习实验,也能真实模拟现实生活中交通灯。
方法/步骤
1

一、实验要求编写程序,以8255为输出口,控制四个双色灯按要求发光。第三副图是8255内部引脚图

2

二、实验目的1.学习单板方式下扩展简单I/O接口的方法以双色灯的使用。2.进一步学习微处理器的编程技术。

3

三、实验电路连线8255的CS片选接至适配板上138译码处的200H~207H插孔。

4

四、实验说明1、 因为本实验是模拟交通灯控制实验,所以要先了解实际交通灯的变化规律。假设一个十字路口为东西南北走向。初始状态0为东西红灯,南北红灯。然后转状态1南北绿灯通车,东西红灯。过一段时间转状态2,南北绿灯闪几次转亮黄灯,延时几秒,东西仍然红灯。再转状态,东西绿灯通车,南北灯灯。过一段时间转状态4,东西绿灯闪几次转亮黄灯,延时几秒,南北仍然红灯。最后循环至状态1。 2、 双色LED是由一个红色LED管芯和一个绿色LED管芯封装在一起,公用负端。当红色正端加高电平,绿色正端加低电平时,红灯亮;红色正端加低电平,绿色正端加高电平时,绿灯亮;两端都加高电平时,黄灯亮。

5

D1      EQU 10HD2      EQU 200HDATA    SEGMENTPB      DB ?DATA    ENDSSTACK   SEGMENT STACKSTA     DW 50 DUP(?)TOP     EQU LENGTH STASTACK   ENDSCODE    SEGMENTASSUME  CS:CODE,DS:DATASTART:        PUSH    CS        POP     DS        MOV     DX,203H       ;设置为全输出        MOV     AL,80H        OUT     DX,AL        MOV     DX,200H        MOV     AL,0ffh        OUT     DX,AL         ;清LED        MOV     DX,200H                MOV     AL,0F0H        OUT     DX,AL         ;全红        MOV     BX,7fH        CALL    DLYBG:     MOV     AL,B   ;南北绿,东西红        OUT     DX,AL        MOV     BX,D2        CALL    DLY        MOV     CX,03HXH1:    AND     AL,0F5H        ;绿灭黄亮        OUT     DX,AL        MOV     BX,D1        CALL    DLY        OR      AL,0aH         ;绿亮        OUT     DX,AL        MOV     BX,D1        CALL    DLY        LOOP    XH1        OR      AL,0a0H         ;南北黄        OUT     DX,AL        MOV     BX,D1        CALL    DLY        MOV     BX,D1        CALL    DLY        MOV     AL,10100101B  ;南北红,东西绿        OUT     DX,AL        MOV     BX,D2        CALL    DLY        MOV     CX,03XH2:    AND     AL,0FaH        OUT     DX,AL        MOV     BX,D1        CALL    DLY        OR      AL,05H        OUT     DX,AL        MOV     BX,D1        CALL    DLY        LOOP    XH2        OR      AL,50H        OUT     DX,AL        MOV     BX,D1        CALL    DLY        MOV     BX,D1        CALL    DLY        JMP     BGDLY     PROC NEAR        PUSH    CXDDD:    MOV     CX,2ffHCCC:    LOOP    CCC        DEC     BX        CMP     BX,0        JNE     DDD        POP     CX        RETDLY     ENDP        CODE    ENDSEND     START

6

上述汇编程序模拟了日常生活中交通红绿灯。

推荐信息