微机原理课程设计-8255控制交通灯

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

微机原理课程设计:8255模拟交通灯

1、目的:学习8255使用方法,学习模拟交通灯控制的方法,学习双色灯的使用。

2、要求:控制4个双色LED灯(可发红,绿,黄光),模拟十字路口交通灯管理。

3、电路及连线

PC0-PC3连DG1-DG4,PC4-PC7连DR1-DR4。8255片选CS8255连138译码处210H。

4、说明

(1)因为本实验是模拟交通灯控制实验,所以要先了解实际交通灯的变化规律。假设一个十字路口为东西南北走向。初始状态0为东西红灯,南北红灯。然后转状态1南北绿灯通车,东西红灯。过一段时间转状态2,南北绿灯闪几次转亮黄灯,延时几秒,东西仍然红灯。再转状态3,东西绿灯通车,南北红灯。过一段时间转状态4,东西绿灯闪几次转亮黄灯,延时几秒,南北仍然红灯。最后循环至状态1。

(2)双色LED是由一个红色LED管芯和一个绿色LED管芯封装在一起,公用负端。当红色正端加高电平,绿色正端加低电平时,红灯亮;红色正端加低电平,绿色正端加高电平时,绿灯亮;两端都加高电平时,黄灯亮。

(3)74LS240为8输入输出的反向驱动器。

5、完成的任务

(1)利用计算机和微机原理试验箱,将实验6的程序Tlamp_88.asm在试验箱运行和调试。全速运行,观察整体效果。单步运行,观察程序每条语句额执行效果,理解语句含义。

(2)修改实验连线为,PC7-PC4连DG1-DG4,PC3-PC0连DR1-DR4。8255片选CS8255连138译码处210H孔。将Tlamp_88.asm另存为jiaotong.asm。修改jiaotong.asm,实现交通灯原有功能。

(3)修改实验连线为,PB7-PB4连DG1-DG4,PB3-PB0连DR1-DR4。8255片选CS8255连138译码处210H孔。将jiaotong.asm另存为jiaotong2.asm。修改jiaotong2.asm,实现交通灯原有功能。

(4)将jiaotong2.asm另存为jiaotong3.asm。修改jiaotong3.asm,实现交通灯各个灯亮和灭的时间是原有时间的3倍。

6、实验程序框图

7、源程序: Tlamp_88.asm

;FOR EAT 598

PC55 EQU 212H 211

P55CTL EQU 213H

D1 EQU 10H 30

D2 EQU 50H 3

DA TA SEGMENT

PB DB ?

DA TA ENDS

STACK SEGMENT STACK

STA DW 50 DUP(?)

TOP EQU LENGTH STA

STACK ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DA TA

START:

PUSH CS

POP DS

MOV DX,P55CTL ;设置为全输出

MOV AL,80H

OUT DX,AL

MOV DX,204H

MOV AL,00H

OUT DX,AL ;清LED

MOV DX,PC55 ;全红

MOV AL,0FH

OUT DX,AL

MOV BX,7fH

CALL DL Y

BG: MOV AL,96H ;南北绿,东西红OUT DX,AL

MOV BX,D2

CALL DL Y

MOV CX,03H

XH1: MOV AL,9FH ; 南北绿灭

OUT DX,AL

MOV BX,D1

CALL DL Y

MOV AL,96H ; 南北绿亮

OUT DX,AL

MOV BX,D1

CALL DL Y

LOOP XH1

MOV AL,06H ;南北黄

OUT DX,AL

MOV BX,D1

CALL DL Y

MOV BX,D1

CALL DL Y

MOV AL,69H ;南北红,东西绿

OUT DX,AL

MOV BX,D2

CALL DL Y

MOV CX,03

XH2: MOV AL,6FH ; 东西绿灭

OUT DX,AL

MOV BX,D1

CALL DL Y

MOV AL,69H ; 东西绿亮

OUT DX,AL

MOV BX,D1

CALL DL Y

LOOP XH2

MOV AL,09H ; 东西黄

OUT DX,AL

MOV BX,D1

CALL DL Y

MOV BX,D1

CALL DL Y

JMP BG

DL Y PROC NEAR

PUSH CX

DDD: MOV CX,0FFFH

CCC: LOOP CCC

DEC BX

CMP BX,0

JNE DDD

POP CX

RET

DL Y ENDP

CODE ENDS

END START

相关文档
最新文档