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

2025-10-20 07:48:50

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 10H

D2      EQU 200H

DATA    SEGMENT

PB      DB ?

DATA    ENDS

STACK   SEGMENT STACK

STA     DW 50 DUP(?)

TOP     EQU LENGTH STA

STACK   ENDS

CODE    SEGMENT

ASSUME  CS:CODE,DS:DATA

START:

        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    DLY

BG:     MOV     AL,01011010B   ;南北绿,东西红

        OUT     DX,AL

        MOV     BX,D2

        CALL    DLY

        MOV     CX,03H

XH1:    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,03

XH2:    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     BG

DLY     PROC NEAR

        PUSH    CX

DDD:    MOV     CX,2ffH

CCC:    LOOP    CCC

        DEC     BX

        CMP     BX,0

        JNE     DDD

        POP     CX

        RET

DLY     ENDP

        CODE    ENDS

END     START

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

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

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢