当前位置:文档之家› 8255,8253交通灯模拟实验

8255,8253交通灯模拟实验

8255,8253交通灯模拟实验
8255,8253交通灯模拟实验

微机原理课程设计

一.设计任务及要求:

交通信号灯的控制:

1.通过8255A并口来控制LED发光二极管的亮灭。

2.A口控制红灯,B口控制黄灯,C口控制绿灯。

3.输出为0则亮,输出为1则灭。

4.用8253定时来控制变换时间。

要求:设有一个十字路口,1、3为南,北方向,2、4为东西方向,初始态为4个路口的红灯全亮。之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车。延迟30秒后,1、3路口的绿灯熄灭,而1,3路口的黄灯开始闪烁(1HZ)。闪烁5次后,1、3路口的红灯亮,同时2、4路口的绿灯亮,2、4路口方向开始通车。延迟30秒时间后,2、4路口的绿灯熄灭,而黄灯开始闪烁。闪烁5次后,再切换到1、3路口方向。之后,重复上述过程。

二.方案比较及评估论证:

分析题意,红,黄,绿灯可分别接在8255的A口,B口和C口上,灯的亮灭可直接由8086输出0,1控制。30秒延时及闪烁由8253控制,由闪烁的实现方法可分为两种方案:

方案一:

设8253各口地址分别为:设8253基地址即通道0地址为04A0H;通道1为04A2H;通道2为04A4H;命令控制口为04A6H。

黄灯闪烁的频率为1HZ,所以想到由8253产生一个1HZ的方波, 8255控制或门打开的时间,在或门打开的时间内,8253将方波信号输入或门使黄灯闪烁。由于计数值最大为65535,1MHZ/65536的值远大于2HZ,所以采用两个计数器级联的方式,8253通道0的clock0输入由分频器产生的1MHZ时钟脉冲,工作在方式3即方波发生器方式,理论设计输出周期为0.01s的方波。1MHZ的时钟脉冲其重复周期为T=1/1MHZ=1 s,因此通道0的计数初值为10000=2710H。由此方波分别作为clock1和clock2的输入时钟脉冲,所以通道1和通道2的输入时钟频率为100HZ,通道1作计数器工作在方式1,计数初值3000=BB8H既30s,计数

口,8255将A口数据输入到8086,8086检测到则输出一个高电平到8255的PA

7

到高电平既完成30s定时。通道2工作在方式3需输出一个1HZ的方波,通过一个或门和8086共同控制黄灯的闪烁,因此也是工作在方波发生器方式,其计数

初值为100=64H,将黄灯的状态反馈到8055的端口PB7和PC7,同样输入到8086,8086通过两次检测端口状态可知黄灯的状态变化,计9次状态变化可完成5次闪烁。

三个通道的门控信号都未用,均接+5V即可。

方案二:

考虑到题目要求黄灯闪烁的频率为1HZ,既每秒1次,那么前0.5秒黄灯亮,后0.5秒黄灯灭,所以最小的定时单位为0.5秒,频率为2HZ,30秒即为60个0.5秒。

显然如方案一一样一个计数器无法完成,所以采用两个计数器级联的方式,将计数器0的输出OUT0接到计数器1的输入端CLK1,CLK0=1MHZ,计数值为50000=C350H,OUT0=20HZ,CLK1=20HZ,记数值=10,OUT1=2HZ。并且计数器0工作于方式3用于产生方波信号,计数器1工作方式2,产生负脉冲信号,计数器1的输出端OUT1接入8255芯片的PC5口,用于读取负脉冲个数,以完成计时功能。8086及8255设置同方案一,8086则每隔0.5秒变换一次黄灯的状态,持续五次,完成闪烁的功能。

经比较,方案二8086在黄灯闪烁时需频繁发送数据到8255,加重了系统的负担,因此我决定采用方案一。

三.系统原理

工作原理说明:

此方案是通过并行接口芯片8255A和8086计算机的硬件连接,以及通过8253延时的方法,来实现十字路口交通灯的模拟控制。

如硬件连接图所示,红灯(RLED),黄灯(YLEDD)和绿灯(GLED)分别接在8255的A,B,C口的低四位端口,PA0,PA1,PA2,PA3分别接1,2,3,4路口

的红灯,B,C口类推。8086工作在最小模式,低八位端口AD

0~AD

7

接到8255和

8253的D

0~D

7

,AD

8

~AD

15

通过地址锁存器8282,接到三八译码器,译码后分别连

到8255和8253的CS片选端。8253的三个门控端接+5V,CLOCK0接由分频器产生的1MHZ的时钟脉冲,OUT0接到CLOCK1和CLOCK2,OUT1接到8086的AD

18,

8086通过检测此端口是否有高电平来判断是否30S定时到。OUT2产生1MHZ方波通过或门和8255的B口共同控制黄灯的闪烁。8255三个口全部工作在方式0既基本输入输出方式,红绿灯的转换由软件编程实现。

四.硬件原理及电路图

由于8255A 与8086CPU 是以低八位数据线相连接的,所以应该是8255A 的1A 、

A 线分别与8086CPU 的2A 、1A 线相连,而将8086的

A 线作为选通信号。如果

是按8255A 内部地址来看,则在图中它的地址是PA 口地址即(CS+000H),PB 口地址为(CS+001H),PC 口地址为(CS+002H),命令控制口地址为(CS+003H),其中,CS 为8255片选信号CS 的首地址;若是按8086CPU 地址来看,则8255A 的地址是PA 口地址即(CS+000H),PB 口地址为(CS+002H),PC 口地址为(CS+004H),命令控制口地址为(CS+006H)。当CS =0288H ,则PA 口地址为0288H ,PB 口地址为028AH ,PC 口地址为028CH ,命令控制口地址为028EH 。

下面,分析8086各个引脚的连接方法。

(1)BHE 引脚:通常用此引线产生片选信号,当为BHE =1,0A =0编码时,在数据总线低8位和偶地址之间进行字节传送(0AD ~7AD )。

(2)CLK (Clock )时钟信号(输入):CLK 为CPU 和总线控制器提供基本的定时脉冲。时钟周期是非对称的,当它为有效高电平的时间和时钟周期的比为33%时,提供最佳的内部定时。由8284时钟发生器产生,8086CPU 使用的时钟频率,因芯片型号不同,时钟频率不同。这里采用5MHz 。

(3)CC V (+5V),GND(地):CPU 所需电源CC V =+5V 。GND 为地线。 (4)QS0ALE (Address Latch Enable )地址锁存允许信号,输出高电平有效,作地址锁存器8282/8283的片选信号,在1T 地址周期状态,ALE 有效,表示AB 、DB 上传送的是地址信息,将它锁存。这是由于AB 、DB 分时复用所需要的,ALE 信号线不能悬空。如图所示,加入2片地址锁存器8282。

(5)RESET:复位信号,输入,高电平有效。8086接到复位信号后,停止现行操作,并初始化段寄存器DS,SS,ES ,标志寄存器PSW ,指令指针IP 和指令队列,而使CS=FFFFH 。RESET 信号至少保持四个周期以上的高电平,当它变为低电平时(一个下降沿),CPU 执行重启过程,8086将从地址FFF0H 开始执行指令。通常FFFF0H 单元开始的几个单元中存放一条JMP 指令,将入口转到引导和装配程序中,从而实现对系统的初始化,引导监控程序或操作系统程序。由于出现突然断电或其它情况时,8086可能正在执行交通灯程序,现有的地址丢失,应按下RESET 键重新开始。另外,应将8255A 与8086的RESET 线相连,保持同步。

(6)MN/MX (Minimun/Maximun): 最小、最大工作模式选择信号,输入。此时MN/MX 接+5V ,构成单处理器系统,系统控制信号由CPU 提供。 接下来,对8282芯片作一下说明:

7DI ~0DI :8位数据输入;7DO ~0DO :8位数据输出;STB:选通信号;

OE :输出允许信号,在不带DMA 控制器的8086单处理器系统中,它接地。

其实,这就是8个D 触发器。由于只用15AD ~0AD ,所以用两片即可。 最后,对时钟发生器8284芯片按两部分进行说明:

(1)

C F /=0钟信号;

CLK :3分频OSC 1/3,大约满足8086CPU 的输入频率5MHz (2)复位生成电路:

由RES RESET ,送到CPU 的RESET 端接“电源好“信号,使系统上电后自动复位。

此为最小模式系统,除了8086CPU ,I/O 接口芯片8255A ,定时计数芯片8353外,其它配置如下:

1片8284A ,作为时钟发生器;

2片8282,作为地址锁存器; 2片74LS138,作为地址选通译码器;

1个二输入或非门;1个4输入或非门;1个二输入与非门;4个或门 12个发光二极管;12个限流电阻;1个复位信号开关。

五.软件思想 1.流程图

.

2.源程序:

DATA SEGMENT; 设置数据段,以及端口地址分配

PORTA EQU 218H

PORTB EQU 219H

PORTC EQU 21AH

PTCON8255 EQU 21BH

PORT0 EQU 238H

PORT1 EQU 239H

PORT2 EQU 240H

PTCON8253 EQU 241H

DATA ENDS

CODE SEGMENT

ASSUME DS:DATA,CS:CODE

INIT: MOV AX,DATA

MOV DS,AX

MOV DX, PTCON8253

MOV AL,36H

OUT DX,AL

MOV DX,PORT0

MOV AX,2710H

OUT DX,AL

MOV AL,AH

OUT DX,AL;通道0工作方式3 周期0.01s

MOV DX, PTCON8253

MOV AL,71H

OUT DX,AL;通道1工作方式1

MOV DX, PTCON8253

MOV AL,96H

OUT DX,AL

MOV DX,PORT2

MOV AL,64H

OUT DX,AL;通道2工作方式3 周期1s 8253初始化完成 MOV DX, PTCON8255

MOV AL,80H

OUT DX,AL;8255初始化 A,B,C口均工作在方式0

MOV DX,PORTA

MOV AL,0

OUT DX,AL

MOV DX,PORTB

MOV AL,0FH

OUT DX,AL

MOV DX,PORTC

MOV AL,0FH

OUT DX,AL;灯初始化完成

STA: MOV DX,PORTA

MOV AL,0A0H

OUT DX,AL

MOV DX,PORTB

MOV AL,0F0H

OUT DX,AL

MOV DX,PORTC

MOV AL,50H

OUT DX,AL;1,3绿灯亮,2,4红灯亮

MOV DX,PORT1

MOV AX,0BB8H

OUT DX,AL

MOV AL,AH

OUT DX,AL;8253通道1赋值开始计时

SCAN1: MOV AL,0

MOV DX,PTCON8255

MOV AL,90H

OUT DX,AL

MOV DX,PORTA

IN AL,DX

AND AL,0FH

CMP AL,1

JNZ SCAN1;扫描PA7口

FLA1: MOV DX, PTCON8255

MOV AL,80H

OUT DX,AL

MOV DX,PORTC

MOV AL,0F0H

OUT DX,AL

MOV DX,PORTB

MOV AL,50H

OUT DX,AL

MOV CX,0

TEST1: MOV DX,PTCON8255;检测PB7

MOV AL,82H

OUT DX,AL

MOV DX,PORTB

IN AL,DX

AND AL,0FH

MOV DX,PTCON8255

MOV AL,82H

OUT DX,AL

MOV DX,PORTB

IN AL,DX

AND AL,0FH

XOR AL,AH

ADD CL,AL

CMP CL,9

JNZ TEST1;闪烁5次

MOV DX, PTCON8255

MOV AL,80H

OUT DX,AL

MOV DX,PORTA

MOV AL,50H

OUT DX,AL

MOV DX,PORTB

MOV AL,0F0H

OUT DX,AL

MOV DX,PORTC

MOV AL,0A0H;1,3红灯亮,2,4绿灯亮

MOV DX,PORT1

MOV AX,0BB8H

OUT DX,AL

MOV AL,AH

OUT DX,AL;8253通道1赋值开始计时SCAN2: MOV AL,0

MOV DX,PTCON8255

MOV AL,90H

OUT DX,AL

MOV DX,PORTA

IN AL,DX

AND AL,0FH

CMP AL,1

JNZ SCAN2

FLA2: MOV DX, PTCON8255

MOV AL,80H

OUT DX,AL

MOV DX,PORTC

MOV AL,0F0H

OUT DX,AL

MOV DX,PORTB

OUT DX,AL

TEST2: MOV DX,PTCON8255

MOV AL,88H

OUT DX,AL

MOV DX,PORTC

IN AL,DX

AND AL,0FH

MOV AH,AL

MOV DX,PTCON8255

MOV AL,88H

OUT DX,AL

MOV DX,PORTC

IN AL,DX

AND AL,0FH

XOR AL,AH

ADD CL,AL

CMP CL,9

JNZ TEST2;闪烁5次

CODE ENDS

END STA

六.调试记录及结果分析

(1) 本电路没有设置显示倒计时的七段LED数码管,如果应用到街道上,不利于司机、行人把握

(2)在上机调试中发现,由于此软件延时的时间均为估算时间,不是特别准确,对于交通要求特别高的地方不宜采用。如果是放到一个大的交通灯系统中,会影响到各个交通灯的运行时间,可能整个系统对交通的指挥调度会大大偏离理论计算,不能有效地防止和消除交通堵塞现象;

(3)当出现紧急情况,在特种车(如消防车、救护车)正要通过时,这种编程方式就不能完成;

但是,可以看到以上方案的一般性,只要将程序里的数据排列或规律稍加修改就可应用到任何一个路口的某一个方向上的交通灯上了,可移植性很强。

七.参考资料

《微型计算机原理及运用》谭浩强清华大学出版社

《微机原理及接口技术》

《微机接口技术应用》

《汇编语言程序设计》

八.芯片资料

1.8255

8255的内部结构

8255A是一个40引脚的双列直插式集成电路芯片

按功能可把8255A分为三个逻辑电路部分,即:口电路、总线接口电路和控制逻辑电路。

(1)口电路

8255A共有三个8位口,其中A口和B口是单纯的数据口,供数据I/O使用。而C口则既可以作数据口,又可以作控制口使用,用于实现A口和B口的控制功能。

数据传送中A口所需的控制信号由C口高位部分(PC7~PC4)提供,因此把A 口和C口高位部分合在一起称之为A组;同样理由把B口和C口低位部分(PC3~PC0)合在一起称之为B组。

(2)总线接口电路

总线接口电路用于实现8255A和单片微机的信号连接。其中包括:

(a)数据总线缓冲器

数据总线缓冲器为8位双向三态缓冲器,可直接和80C51的数据线相连,与I/O 操作有关的数据、控制字和状态信息都是通过该缓冲器进行传送。

(b)读/写控制逻辑

与读写有关的控制信号有

CS—片选信号(低电平有效)

RD—读信号(低电平有效)

WR—写信号(低电平有效)

A0、A1—端口选择信号。8255A共有四个可寻址的端口(即A口、B口、C口和控制寄存器),用二位地址编码即可实现选择。参见下表。

RESET—复位信号(高电平有效)。复位之后,控制寄存器清除,各端口被置

为输入方式。

读写控制逻辑用于实现8255A的硬件管理:芯片的选择,口的寻址以及规定

各端口和单片微机之间的数据传送方向。

(c)控制逻辑电路

控制逻辑电路包括A组控制和B组控制,合在一起构成8位控制寄存器。

用于存放各口的工作方式控制字

8255A工作方式及数据I/O操作

(1)8255A的工作方式

8255A共有三种工作方式,即方式0、方式1、方式2.

(a)方式0 基本输入/输出方式

方式0下,可供使用的是两个8位口(A口和B口)及两个4位口(C

口高4位部分和低4位部分)。四个口可以是输入和输出的任何组合。

方式0适用于无条件数据传送,也可以把C口的某一位作为状态位,实现查

询方式的数据传送。

(b)方式1 选通输入/输出方式

A口和B口分别用于数据的输入/输出。而C口则作为数据传送的联络信号。具体定义见表7–2。可见A口和B口的联络信号都是三个,如果A或B

只有一个口按方式1使用,则剩下的另外13位口线仍然可按方式0使用。

如果两个口都按方式1使用,则还剩下2位口线,这两位口线仍然可以进行

位状态的输入输出。

方式1适用于查询或中断方式的数据输入/输出。

(c)方式2 双向数据传送方式

只有A口才能选择这种工作方式,这时A口既能输入数据又能输出数据。

在这种方式下需使用C口的五位线作控制线,信号定义如表7–2所示。方

式2适用于查询或中断方式的双向数据传送。如果把A口置于方式2下,则B口只能工作于方式0.

(2)数据输入操作

用于输入操作的联络信号有:

STB(StroBe)—选通脉冲,输入,低电平有效。当外设送来STB信号时,输入数据装入8255A的锁存器。

IBF(Input Buffer Full) —输入缓冲器满信号,输出,高电平有效。

IBF信号有效,表明数据已装入锁存器,因此它是一个状态信号。INTR(INTerrupt Request)—中断请求信号,高电平有效,当IBF数据输入过程:当外设准备好数据输入后,发出信号,输入的数据送入缓冲器。然后IBF信号有效。如使用查询方式,则IBF即作为状态信号供查询使用;如使用中断方式,当信号由低变高时,产生INTR信号,向单片微机发出中断。单片微机在响应中断后执行中断服务程序时读入数据,并使INTR信号变低,同时也使IBF信号同时变低。以通知外设准备下一次数据输入。

(3)数据输出操作

用于数据输出操作的联络信号有:

ACK(ACKnowledge)—外设响应信号输入,低电平有效。

当外设取走输出数据,并处理完毕后向单片微机发回的响应信号为高,信号由低变高(后沿)时,中断请求信号有效。向单片微机发出中断请求。

OBF(Output Buffer Full)——输出缓冲器满信号,输出,低电平有效。

当单片微机把输出数据写入8255A锁存器后,该信号有效,并送去启动外设以接收数据。

INTR—中断请求信号,输出,高电平有效。

数据输出过程:外设接收并处理完一组数据后,发回ACK信号。该信号使OBF变高,表明输出缓冲器已空。如使用查询方式,则OBF可作为状态信号供查询使用;如使用中断方式,则当ACK信号结束时,INTR有效,向单片微机发出中断请求。在中断服务过程中,把下一个输出数据写入8255A的输出缓冲器。写入后OBF有效,表明输出数据已到,并以此信号启动外设工作,取走并处理8255A中的输出数据。

表7–2 8255A C口联络信号定义

2.8253定时计数器

8253内部可分为6个模块,每个模块的功能如下:

在初始化编程时,CPU写入方式控制字到控制字寄存器中,用以选择计数通道及其相应的工作方式。

8253的控制字:

8253的工作方式也是有控制字来决定,其控制字意义如下

4. 计数通道0、计数通道1、计数通道2

3个计数通道内部结构完全相同。每个计数通道都由一个16位计数初值寄存器、一个16位减法计数器和一个16位计数值锁存器组成

计数初值存于预置寄存器,在计数过程中,减法计数器的值不断递减,而预置寄存器中的预置不变。输出锁存器用于写入锁存命令时,锁定当前计数值。

计数器的3个引脚说明:

(1)CLK时钟输入信号

在计数过程中,此引脚上每输入一个时钟信号(下降沿),计数器的计数值减1 (2) GATE门控输入信号

控制计数器工作,可分成电平控制和上升沿控制两种类型

(3) OUT计数器输出信号

当一次计数过程结束(计数值减为0),OUT引脚上将产生一个输出信号

8253有6种工作方式,由方式控制字确定

区分这6种工作方式的主要标志由3点:一是输出波形不同;二是启动计数器的触发方式不同;三是计数过程中门控信号GATE对计数器操作的控制不同。1..方式0--低电平输出(GATE信号上升沿继续计数)

2.方式1--低电平输出(GATE信号上升沿重新计数)

3.方式2--周期性脉冲输出

4.方式3--周期性方波输出

OUT输出低电平,装入计数值n后,OUT立即跳变为高电平。如果当前GATE为高电平,则立即开始减“1”计数,OUT保持为高电平,若n为偶数,则当计数值减到n/2时,OUT跳变为低电平,一直保持到计数值为“0”,系统才重新置入计数值n,实现循环计数。这时OUT端输出周期为n×CLK周期,占空比为1:1的方波序列:若n为奇数,则OUT端输出周期为n×CLK周期,占空比(n+1)/2 : (n-1)/2的近似方波序列。

5.方式4--单次负脉冲输出(软件触发) 6.方式5--单次负脉冲输出(硬件触发) 每种工作方式的设置过程类似: ⑴ 设定工作方式 ⑵ 设定计数初值 〔 ⑶ 硬件启动 〕

⑷ 计数初值进入减1计数器

⑸ 每输入一个时钟计数器减1的计数过程 ⑹ 计数过程结束 3.8282

7

DI ~

DI :8位数据输入;

7

DO ~

DO :8位数据输出;STB:选通信号;

OE :输出允许信号,在不带DMA 控制器的8086单处理器系统中,它接

地。

其实,这就是8个D 触发器。由于只用15

AD ~

AD ,所以用两片即可。

4.3—8译码器74LS138

74LS138译码器引脚图,逻辑图及功能表如下

九.总结

经过这两周的课程设计, 做关于交通灯系统设计,我认真查阅资料,学习关于这方面的知识,比如说要了解8086芯片中各个引脚的功能,怎么样去使用8255这个可编程并行接口芯片,怎么样使用8253来定时及输出一定频率的脉冲,怎么样用8282这个地址锁存器来存储高位地址和低位地址以及交通有哪些规则.在理论学习的基础上,又下了一次苦工夫,算是明白了设计一个系统的过程;也让我体会到要想成功地设计某个东西,光学好专业知识是不够的,必须要系统的知识,无论在哪方面都要有个明白的概念,只有这样才不至于在设计过程中摸不着头脑,知道去哪些是需要查的资料,还有一点,我觉得我在芯片编程方面,特别是在初始化方面是我最大的困难,或许是我的汇编语言学得不够好,我只能借助参考资料,查每一条指令的作用与功能,这样一来又巩固了我的对汇编语言的了解.

如此,我体会到学习理论知识固然重要,但在你学完了之后,你不在实践中运用你所学的知识,我想学是白学了,过一段时间后,你可能什么都记不起来了,或许在学的时候心里有一个概念,认为这个知识我曾经学得不错,我现在怎么想不起来了,一心想依赖课本;如果我们用实践来学习知识,你会努力地去搜索你想要需要的东西,即使是过了一段时间后,你也会记得你曾经对这点不明白认真地查阅过,所以你不容易忘记!.

(整理)应用8255A实现交通灯控制设计

二○一一~二○一二学年第二学期信息科学与工程学院课程设计报告书 课程名称:微机原理课程设计 班级:电子信息工程2009级6 班学号:200904135150 姓名:张强 指导教师:徐守明 二○一二年二月二十日

前言 随着计算机科学技术的不断发展,微型计算机得到了广泛的应用,是人们利用计算机设计和开发各种应用系统的基础。同时微型计算机接口技术也是一门实践性较强的课程,理论与实践相结合可以更好的掌握知识,这也是这次交通灯系统控制的设计目的。交通灯是交通安全的关键,已广泛应用于城乡的十字路口,它的有无作为交通安全检查的重要依据,是交通秩序正常进行的有力保障。 十字道口的红绿灯是交通法规的无声命令,是司机和行人的行为准则。十字道口的交通红绿灯控制是保证交通安全和道路畅通的关键。当前,国内大多数城市正在采用“自动”红绿交通灯,它具有固定的“红灯—绿灯”转换间隔,并自动切换。它们一般由“通行与禁止时间控制显示、红黄绿三色信号灯和方向指示灯”三部分组成。交通灯的时间控制显示,以固定时间值预先“固化”在单片机中,每次只是以一定周期交替变化。但是,实际上不同时刻的车辆流通状况是十分复杂的,是高度非线性的、随机的,还经常受认为因素的影响。采用定时控制经常造成道路有效应用时间的浪费,出现绿灯方向车辆较少,红灯方向车辆积压。它不顾当前道路上交通车辆数的实际情况变化,其最大的缺陷就在于当路况发生变化时,不能满足司机与路人的实际需要,轻者造成时间上的浪费,重者直接导致交通堵塞,导致城市交通效率的下降。目前,有一种使用“模糊控制”技术控制交通灯的方法。能够根据十字路口两个方向上车辆动态状况,自动判断红绿灯时间间隔,以保证最大车流量,减少道口的交通堵塞。但是却不像定时控制,能用数字显示器显示当前灯色剩余时间,以便于驾驶员随时掌握自己的驾驶动作,及时停车或启动。 本次的交通灯控制系统主要由8255A并行口、8253定时/计算器、8259单极中断控制器以及74LS139译码器实验等芯片组成。整个课程设计主要使用8255A的A口和B口模拟十字路口交通灯的闪烁情况。主要包括以下五个方面:1.课程设计题目名称;2.课程设计要求完成的任务;3.系统设计文档(包括了总体设计、详细设计以及程序设计等文档);4、课程设计总结;5.参考文献本次课程设计以固定的程序实现对交通灯实行控制,没有实现智能化,但智能化是交通控制系统是交通控制系统发展的必然趋势,也是满足日益发展的社会需要。通过本次的课程设计,更好的学习微机接口的应用技术,使我们将课堂所学到的知识和实践有机结合起来,初步掌握计算机应用系统设计的步骤和接口设计的方法,提高分析和解决实际问题的能力。 由于时间仓促和水平所限,本次课程设计难免有欠妥之处,请不吝批评指正。 摘要:本文介绍了以计算机为核心.利用可编程并行接口芯片8255A的软硬件功能,实现对交通灯控制 关键词:计算机可编程并行接日芯片交通灯 8255A

微机原理课程设计报告交通灯

WORD格式微机原理课程设计 设计题目交通灯的设计 实验课程名称微机原理 姓名王培培 学号080309069 专业09自动化班级2 指导教师张朝龙 开课学期2011至2012学年上学期

一、实验设计方案 实验名称:交通灯的设计实验时间:2011/12/23 小组合作:是□否?小组成员:无 1、实验目的: 分析实际的十字路口交通灯的亮灭过程,用实验箱上的8255实现交通灯的控制。(红,黄,绿三色灯) 2、实验设备及材料: 微机原理和接口技术实验室的实验箱和电脑设备等。 3、理论依据: 此设计是通过并行接口芯片8255A和8086计算机的硬件连接,以及通过8253延时的方法,来实现十字路口交通灯的模拟控制。 如硬件连接图所示(在后),红灯(RLED),黄灯(YLEDD)和绿灯(GLED)分别接在8255 的A,B,C口的低四位端口,PA0,PA1,PA2,PA3分别接1,2,3,4(南东北西)路口的红灯,B,C口类推。8086工作在最小模式,低八位端口AD0~AD7接到8255和8253的D0~D7,AD8~AD15通过地址锁存器8282,接到三八译码器,译码后分别连到8255和8253的CS片选端。8253的 三个门控端接+5V,CLOCK0接由分频器产生的1MHZ的时钟脉冲,OUT0接到CLOCK1和CLOCK,2 OUT1接到8086的AD18,8086通过检测此端口是否有高电平来判断是否30s定时到。OUT2产生 1MHZ方波通过或门和8255的B口共同控制黄灯的闪烁。8255三个口全部工作在方式0既基本 输入输出方式,红绿灯的转换由软件编程实现。

4、实验方法步骤及注意事项: ○1设计思路 红,黄,绿灯可分别接在8255的A口,B口和C口上,灯的亮灭可直接由8086输出0,1 控制。 设8253各口地址分别为:设8253基地址即通道0地址为04A0H,通道1为04A2H,通道2 为04A4H,命令控制口为04A6H。 黄灯闪烁的频率为1HZ,所以想到由8253产生一个1HZ的方波,8255控制或门打开的时 间,在或门打开的时间内,8253将方波信号输入或门使黄灯闪烁。 由于计数值最大为65535,1MHZ/65536的值远大于2HZ,所以采用两个计数器级联的方 式,8253通道0的clock0输入由分频器产生的1MHZ时钟脉冲,工作在方式3即方波发生器方 式,理论设计输出周期为0.01s的方波。1MHZ的时钟脉冲其重复周期为T=1/1MHZ=1s,因此 通道0的计数初值为10000=2710H。由此方波分别作为clock1和clock2的输入时钟脉冲,所以 通道1和通道2的输入时钟频率为100HZ,通道1作计数器工作在方式1,计数初值3000=BB8H 既30s,计数到则输出一个高电平到8255的PA7口,8255将A口数据输入到8086,8086检测 到高电平既完成30s定时。通道2工作在方式3需输出一个1HZ的方波,通过一个或门和8086 共同控制黄灯的闪烁,因此也是工作在方波发生器方式,其计数初值为100=64H,将黄灯的状态 反馈到8055的端口PB7和PC7,同样输入到8086,8086通过两次检测端口状态可知黄灯的状态 变化,计9次状态变化可完成5次闪烁。 三个通道的门控信号都未用,均接+5V即可。 ○ 2硬件原理及电路图 由于8255A与8086CPU是以低八位数据线相连接的,所以应该是8255A的A1、A 0 线分别与 8086CPU的A2、A线相连,而将8086的 1 A 0 线作为选通信号。如果是按8255A内部地址来看, 则在图中它的地址是PA口地址即(CS+000H),PB口地址为(CS+001H),PC口地址为(CS+002H),

实验一 8255控制交通灯实验

D034D133D232D331D430D529D628D727PA04PA13PA22PA31PA440PA539PA638PA737PB018PB119PB220PB321PB422PB523PB624PB725PC014PC115PC216PC317PC413PC512PC611PC7 10 RD 5WR 36A09A18RESET 35CS 6 8255 U36 D0D1D2D3D4D5D6D7WR RD RST A0 A1 PC5PC6PC7 PC2PC3PC4PC0PC1DS35DS36DS37DS38DS39DS40DS4112345678 VCC DS42 A0A1 CS CS1(0F000H) 510 R111510 R112 510R113510R114510R115510R116510R117510R118

.MODEL TINY COM_ADD EQU 0F003H PA_ADD EQU 0F000H PB_ADD EQU 0F001H PC_ADD EQU 0F002H .STACK 100 .DATA LED_Data DB 01111101B ;东西绿灯,南北红灯DB 11111101B ;东西绿灯闪烁,南北红灯 DB 10111101B ;东西黄灯亮,南北红灯 DB 11010111B ;东西红灯,南北绿灯 DB 11011111B ;东西红灯,南北绿灯闪烁 DB 11011011B ;东西红灯,南北黄灯亮 .CODE START: MOV AX,@DATA MOV DS,AX NOP MOV DX,COM_ADD MOV AL,80H ;PA、PB、PC为基本输出模式 OUT DX,AL MOV DX,PA_ADD ;灯全熄灭 MOV AL,0FFH OUT DX,AL LEA BX,LED_Data

交通灯实验二

实验二:单一十字路口交通灯控制实验。 一、实验目的: 1.熟悉使用CCW软件,掌握CCW软件中常用功能。 2.学会对功能块的创建和调用。 3.学会循环控制的方法。 二、实验原理 在实验一的基础上设计单一十字路口交通灯的控制实验,此实验内容应包括四个路口红绿灯的工作及同步的时间显示。 一般情况下,红绿灯设在十字路口,或在多干道的叉口上,目的是为了调整叉口的交通秩序使各干道来往车辆能够有条不紊地行驶,否则将造成意想不到的严重后果。当然在叉口设置合理的红绿灯后,也可大大减少交通管理部门的人力、物力。叉口交通信号等的基本作用:红灯亮表示车辆、行人禁止通行,绿灯亮表示车辆、行人可以通行,绿灯转换成红灯前几秒,可用黄灯亮来暗示驾驶员或行人即将禁止通行。屏幕时间显示用倒计时方式表示红绿灯的切换时间,时间显示器的作用是协助红绿灯工作,跟随红、绿灯反复地进行切换。每个路口分直行左转和右转。颜色分别为红,黄,绿。其中红灯和绿灯同时亮显示为黄灯。一个路口由三盏灯控制使控制更有条理,安全型更高。 三、实验器材(设备、软件、元器件): 十字路口交通灯实验设备、CCW编程软件、850控制器 四、实验内容: 1、单一十字路口交通灯设置6个状态。状态1:南北直行绿灯和所有右行绿灯亮,其它灯全红灯,行人红灯,四个路口的时间显示都从28秒开始倒计时,20秒后南北直行绿灯闪烁5秒,然后变成黄灯3秒。状态2:南北直行黄灯变成红灯,南北左行红灯变成绿灯,同时28秒倒计时,20秒后绿灯闪烁5秒变成黄灯,持续3秒。状态3:南北左行黄灯由黄灯变成红灯,同时东西直行由红灯变成绿灯,时间显示都从28秒开始倒计时,20秒后东西直行绿灯闪烁5秒,然后变成黄灯3秒。状态4:东西直行黄灯变成红灯,东西左行红灯变成绿灯,同时28秒倒计时,20秒后东西左行绿灯及所有右行绿灯闪烁5秒变成黄灯,持续3秒。状态5:所有右行绿灯变成红灯,东西左行绿灯变成红灯,南北直行红灯变成绿灯,同时南北人行道绿灯亮,状态5开始时同样28秒倒计时,20秒后南北直行绿灯和行人绿灯闪烁5秒,行人灯变成红灯,南北直行灯则变成黄灯持续3秒。状态6:南北直行黄灯变成红灯,东西直行红灯变成绿灯,同时东西人行灯

实验6.1_8255并行接口与交通灯控制

8255端口地址: 控制寄存器地址28BH A口的地址288H B口的地址289H C口的地址28AH 实验程序: DATA SEGMENT BUF1 EQU 00100100B ;南北绿灯亮东西红灯亮BUF2 EQU 01000100B ;南北黄灯亮东西红灯亮BUF3 EQU 00000100B ;南北灯灭东西红灯亮BUF4 EQU 10000001B ;南北红灯亮东西绿灯亮BUF5 EQU 10000010B ;南北红灯亮东西黄灯亮BUF6 EQU 10000000B ;南北红灯亮东西灯灭DATA ENDS CODE SEGMENT ASSUME CS:CODE, DS:DATA START: MOV AX,DATA MOV DS,AX MOV AL,80H MOV DX,28BH OUT AX,AL ALL: MOV AL,BUF1 MOV DX,28AH OUT DX,AL CALL DELAYL MOV CX,5 YEL1: MOV AL,BUF2 MOV DX,28AH OUT DX,AL CALL DELAYS MOV AL,BUF3 MOV DX,28AH OUT DX,AL CALL DELAYS LOOP YEL1 MOV AL,BUF4 MOV DX,28AH OUT DX,AL CALL DELAYL MOV CX,4 YEL21: MOV AL,BUF5 MOV DX,28AH

OUT DX,AL CALL DELAYS MOV AL,BUF6 MOV DX,28AH OUT DX,AL CALL DELAYS LOOP YEL2 JMP ALL MOV AH,4CH INT 21H DELAYL PROC NEAR ;长延时 PUSH CX PUSH DI Y1:MOV CX,2000H X1:MOV DI,2000H DEC DI JNE X1 LOOP Y1 POP DI POP CX RET DELAYL ENDP DELAYS PROC NEAR ;短延时 PUSH CX PUSH DI Y2:MOV CX,500H X2:MOV DI,1000H DEC DI JNE X2 LOOP Y2 POP DI POP CX RET DELAYS ENDP CODE ENDS END START 桂林电子科技大学信息与通信学院

8255交通灯控制系统(倒计时显示,紧急中断)

《单片机原理与应用》 课程设计报告 题目:简单交通灯控制系统 专业:计算机科学与技术 班级:09计算机1班 学号:09070009 姓名:陈民厅 天津理工大学中环信息学院 计算机工程系 2011年12月29 日

交通灯控制系统设计 摘要 设计一个交通灯控制系统,该控制系统工作后,交通灯按照下列规律变化:初始态东南西北均为红灯,持续时间为2s;然后转为状态1(10s),为东西红、南北绿;状态2(3s)东西红灯不变、南北绿灯灭、黄灯闪烁三次;状态3(15s),为东西绿、南北红;状态4(3s),为东西绿灯灭、黄灯闪烁三次、南北红灯不变;最后回到状态1,依此循环。如遇到特殊情况,可拨动应急开关,使各向均为红灯,特殊车辆不受红灯限制,待其顺利通过后拨动另一个开关,系统返回继续运行。同时用LED用倒计时方式显示各路口亮灯时间。 关键词:单片机,交通灯,应急开关,LED

1绪论 1.1设计背景 红绿交通灯自动控制系统在城市十字(或丁字)路口有着广泛的应用。随着社会的进步,人们生活水平的提高,私家车数量会不断增加,对城市交通带来前所为有的压力。道路建设也将随之发展,错综复杂的道路将不段增多。为维持稳定的交通秩序,红绿灯自动控制系统将得到更为广泛的应用。现在实际应用的红绿灯系统中一般没有倒计时功能,使司机和行人不知道指示灯还有多久将会改变现有状态。本设计应用基本数字电路知识,采用LED灯作红、绿、黄三交通灯,用七段数码管作同步倒计时显示。实现两方向通行时间不相等的控制并配有倒计时。 1.2设计目的 熟悉单片机控制系统,并了解系统设计的一般规律。 掌握8255芯片的结构及编程方法。 熟悉模拟交通灯控制的实现方法。 1.3设计任务及要求 设计一个交通灯控制系统,该控制系统工作后,交通灯按照下列规律变化:初始态东南西北均为红灯,持续时间为2s;然后转为状态1(10s),为东西红、南北绿;状态2(3s)东西红灯不变、南北绿灯灭、黄灯闪烁三次;状态3(15s),为东西绿、南北红;状态4(3s),为东西绿灯灭、黄灯闪烁三次、南北红灯不变;最后回到状态1,依此循环。如遇到特殊情况,可拨动应急开关,使各向均为红灯,特殊车辆不受红灯限制,待其顺利通过后拨动另一个开关,系统返回继续运行。同时用LED用倒计时方式显示各路口亮灯时间。 2 设计使用的仪器和设备 2.1 达爱思教仪 本实验采用达爱思教仪型号是Dais-PG206FD 2.2八段数码管 码管, 2.3 8255芯片 8255是Intel公司生产的可编程并行I/O接口芯片,有3个8位并行I/O口。具有3个通道3种工作方式的可编程并行接口芯片(8255引脚如图1,8255编程模式如图2)。 的中间接口电路。8255作为主机与外设的连接芯片,必须提供与主机相连的3个总线接

实验2 交通灯实验

西华大学实验报告(理工类) 开课学院及实验室:电气信息学院电气信息专业实验中心 实验时间:2016年 4 月 26 日 一、实验目的 1、 通过熟悉编程软件及可编程控制器输入模拟装置的面板上各部分的作用,初步掌握可编程控制器从 编程到运行的全过程操作。了解和掌握计数器、定时器的使用方法、STL 指令编程方法,并通过十字路口交通灯控制(带强通控制)的程序设计、编辑与运行,熟练掌握基于STL 指令的顺序控制程序的设计方法,初步掌握模块化的编程思想,并进一步提高运用多种方法进行程序设计、分析和调试的能力。 2、 完成带强制通行的十字路口交通灯控制程序设计及调试。 二、实验原理 根据十字路口交通灯控制系统结构流程分析I/O 信号: 输入I 信号:启动X5,停止X6; 输出O 信号:南北绿灯Y0,南北黄灯Y1,南北红灯Y2,东西绿灯Y4,东西黄灯Y5,东西红灯Y6,画出PLC 的I/O 接线图,根据I/O 地址就可以进行编程设计。在设计之前画出控制波形图和状态转移图,在此基础上就可有序地编写梯形图。 1)十字路口交通灯波形如图1.1所示:

2)基于PLC 控制的十字路口交通灯控制模拟接线图如图1.2所示: 3)十字路口交通灯控制的单流程状态转移图如图1.3所示: S20 S23 图1.3单流程状态转移图

3)十字路口交通灯控制的双流程状态转移图如图1.4所示: 同学们可先选择一种进行基于STL 指令的编程练习,对所编的梯形图下载到PLC 中进行运行,同时在编程平台上监控运行情况,根据运行情况修改程序,最后实现十字路口交通灯控制的全部功能。 三、实验设备、仪器及材料 提供三菱FX2N 可编程控制器、模拟板、计算机。详细内容见实验指导书。 四、实验步骤(按照实际操作过程) 1、验证性实验步骤 1) 学习用SFC 语言编制用户程序的方法: a ) 单流程的程序编制方法,见图1.3; b ) 双流程(并行分支与汇合)的程序编制方法,见图1.4; 2) 编写图3或图4的梯形图; 3) 将编好的程序下载到可编程控制器; 4) 运行操作:完成对十字路口交通灯控制的程序调试 5) 细心体会和掌握STL 指令编制顺序控制程序的方法和优越性。 2、设计性实验步骤 1)设计带强制通行的十字路口交通灯控制:东西、南北强制通行。 要求如下: 在正常的十字路口交通灯控制运行时,如果东西强制通行开关接通,则进入强制通行状态。此时东西绿灯常亮,而南北红灯常亮;东西强制通行结束后,东西强制通行开关关闭,恢复正常运行。此时应从南北绿灯亮、东西红灯亮开始循环工作。 南北强制通行情况与东西强制通行相似,其运行状态相反。 图1.4 双流程的状态转移图

8255,8253交通灯模拟实验

微机原理课程设计——8255,8253交通灯模拟实验 文档介绍:交通信号灯的控制: 1.通过8255A并口来控制LED发光二极管的亮灭。 2.A口控制红灯,B口控制黄灯,C口控制绿灯。 3.输出为0则亮,输出为1则灭。 4.用8253定时来控制变换时间。 要求:设有一个十字路口,1、3为南,北方向,2、4为东西方向,初始态为4个路口的红灯全亮。之后,1、3路口的绿灯亮,2、4路口的红灯亮,1、3路口方向通车。延迟30秒后,1、3路口的绿灯熄灭,而1,3路口的黄灯开始闪烁(1HZ)。闪烁5次后,1、3路口的红灯亮,同时2、4路口的绿灯亮,2、4路口方向开始通车。延迟30秒时间后,2、4路口的绿灯熄灭,而黄灯开始闪烁。闪烁5次后,再切换到1、3路口方向。之后,重复上述过程。 系统原理 工作原理说明: 此方案是通过并行接口芯片8255A和8086计算机的硬件连接,以及通过8253延时的方法,来实现十字路口交通灯的模拟控制。 如硬件连接图所示,红灯(RLED),黄灯(YLEDD)和绿灯(GLED)分别接在8255的A,B,C口的低四位端口,PA0,PA1,PA2,PA3分别接1,2,3,4路口的红灯,B,C口类推。8086工作在最小模式,低八位端口AD0~AD7接到8255和8253的D0~D7,AD8~AD15通过地址锁存器8282,接到三八译码器,译码后分别连到8255和8253的CS片选端。8253的三个门控端接+5V,CLOCK0接由分频器产生的1MHZ的时钟脉冲,OUT0接到CLOCK1和CLOCK2,OUT1接到8086的AD18,8086通过检测此端口是否有高电平来判断是否30S定时到。OUT2产生1MHZ 方波通过或门和8255的B口共同控制黄

微机原理实验四实验报告 8255控制交通灯实验

实验四 8255控制交通灯实验 一、实验目的与要求 1、了解8255芯片的工作原理,熟悉其初始化编程方法以及输入、输出程序设计技巧。学会使用8255并行接口芯片实现各种控制功能,如本实验(控制交通灯)等。 2、熟悉8255内部结构和与8088的接口逻辑,熟悉8255芯片的3种工作方式以及控制字格式。 3、认真预习本节实验内容,尝试自行编写程序,填写实验报告。 二、实验设备 STAR系列实验仪一套、PC机一台 三、实验内容 1、编写程序:使用8255的PA0.. 2、PA4..6控制LED指示灯,实现交通灯功能。 2、连接线路验证8255的功能,熟悉它的使用方法。 四、实验原理图 五、实验步骤 六、演示程序

.MODEL TINY COM_ADD EQU 0F003H PA_ADD EQU 0F000H PB_ADD EQU 0F001H PC_ADD EQU 0F002H .STACK 100 .DATA LED_Data DB 01111101B ;东西绿灯,南北红灯DB 11111101B ;东西绿灯闪烁,南北红灯 DB 10111101B ;东西黄灯亮,南北红灯 DB 11010111B ;东西红灯,南北绿灯 DB 11011111B ;东西红灯,南北绿灯闪烁 DB 11011011B ;东西红灯,南北黄灯亮 .CODE START: MOV AX,@DATA MOV DS,AX NOP MOV DX,COM_ADD MOV AL,80H ;PA、PB、PC为基本输出模式 OUT DX,AL MOV DX,PA_ADD ;灯全熄灭 MOV AL,0FFH OUT DX,AL LEA BX,LED_Data START1: MOV AL,0 XLAT OUT DX,AL ;东西绿灯,南北红灯 CALL DL5S MOV CX,6 START2: MOV AL,1 XLAT OUT DX,AL ;东西绿灯闪烁,南北红灯 CALL DL500ms MOV AL,0 XLAT OUT DX,AL CALL DL500ms LOOP START2 MOV AL,2 ;东西黄灯亮,南北红灯 XLAT OUT DX,AL CALL DL3S MOV AL,3 ;东西红灯,南北绿灯

交通灯实验报告

微机原理课程设计报告 新疆农业大学 计算机与信息工程学院 课程题目:微机原理与几口技术 班级:电科112 指导老师:张婧婧 姓名:刘建国 学号:114633222

基于8086的交通信号控制器的设计报告摘要: 这次课程设计,我们的任务是:基于8086的交通信号控制器的设计。8086系统是我们这个学期学习的主线方向,我们将在8086系统的基础上完成交通信号控制器的设计,其具体功能是:1.显示十字路口东西、南北2个方向的红、黄、绿的指示状态。2.实现正常的倒计时功能。用2组数码管作为东西和南北方向的倒计时显示,显示时间为红灯30s,绿灯50s,黄灯5s。3.按S1键能实现特殊的功能,显示倒计时的2组数码管闪烁,计数器停止计数并保持在原来的状态;东西、南北路口均显示红灯状态;特殊状态解除后能继续计数。4.按S2键实现总体清零功能。计数器由初始状态计数,对应的指示灯亮。 关键词:8086系统 74154 74HC373 8255A LED交通灯

(一) 1) 设计目的 交通信号控制灯是日常交通不可缺少的工具,涉及到人们的人生和财产安全,在道路行驶上起了相当关键的作用,因而设计交通信号控制灯是非常有意义的。同时我们这次设计的课题就是“基于8086交通信号控制器的设计”,基于以上目的,我利用一周时间精心设计出课题要求的交通灯。 2) 设计思想 在此次设计过程中,我们选择了数码管、发光二极管、74LS138、74LS373、8255A和8086来控制实现交通灯按设计要求工作。 3)硬件部分 1、LED设计说明: 用LED作为倒计时时间的显示器,LED在亮度、功耗、可视角度和刷新速率等方面,都更具优势。LED与LCD的功耗比大约为10:1,利用LED技术,可以制造出比LCD更薄、更亮、更清晰的显示器,LED是发光二极管属于二极管的一种,LCD是液晶显示器,两者相差太多.但是用LED的点阵也能组成显示器,适用于户外大屏幕显示,分辨率较低,LED与LCD具体比较如下图 表1-1:LCD与LED的比较 2、8255设计说明: 用8255A可编程并行接口芯片的A、B、C三口作为红、绿、黄交通灯的控制输入口。8255有三个并行输入输出口,可以方便的对三种颜色的交通灯进行很好的控制。解决方案是:PB0~PB7接模拟灯二极管,PA0~PA7接7段二极管的段选,PC0~PC3接7段二极管的位选,PC4~PC7与开关相连,处理器芯片集成芯片卡PCI卡连接,用于完成硬件方面的实验正常通信。其芯片比较说明:如下表: 表1-2:8255A与8251芯片的比较

微机原理实验交通灯控制实验

微机原理实验交通灯控制实验

课程设计时间:2014.12.22---2015.1.2微机原理专业课程设计任务书 学生姓名专业 班级 学号 题 目 交通灯控制实验 课题 性质 工程设计课题来源自拟课题指导 教师 同组姓名 主要内容L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连,L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。编程使六个灯按交通灯变化规律亮灭。

任务要求1:掌握并理解芯片8255和8253计时器工作原理 2:掌握并理解源程序和程序中的函数 3:熟悉8255内部结构和与单片机的接口逻辑,掌握8255芯片的3种工作方式。 4:了解单片机外围芯片8255的工作原理、初始化编程以及输入、输出程序设计方法 参考文献《微型计算机原理及运用》谭浩强清华大学出版社 《16/32位微机原理、汇编语言及接口技术》陈涛机械工业出版社《微机接口技术应用》 审查意见指导教师签字: 教研室主任签字:年月日 一:设计的目的和内容 1 目的:通过并行接口8255实现十字路口交通灯的模拟控制,进一步掌握对并行口的使用。 2 内容:如图1,L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连,L2、L1、L0作为东 西路口的交通灯与PC2、PC1、PC0相连。编程使六个灯按交通灯变化规律亮灭。

图1 二:设计思想: 在选择循环的时间上,老师上课时说过,长延时可以采用双层嵌套,外层嵌套为0FFFFH,内层嵌套为4000H,我在编程时外层送进了0,相当于初值为65536,内层送进了4000H。为了达到闪烁和延时的区别,我在编闪烁的程序时,给外层嵌套送入初值3000H,内层0100H (这是我通过实验的结果)。人眼感觉闪烁的效果只是短延时的结果此方案是通过并行接口芯片8255A和8086计算机的硬件连接,以及通过8253延时的方法,来实现十字路口交通灯的模拟控制。 如上图所示,红灯(RLED),黄灯(YLEDD)和绿灯(GLED)分别接在8255的A,B,C口的低四位端口,PA0,PA1,PA2,PA3分别接南,东,北,西路口 的红灯,B,C口类推。8086工作在最小模式,低八位端口AD 0~AD 7 接到8255和 8253的D 0~D 7 ,AD 8 ~AD 15 通过地址锁存器8282,接到三八译码器,译码后分别连 到8255和8253的CS片选端。8253的三个门控端接+5V,CLOCK0接由分频器产生的1MHZ的时钟脉冲,OUT0接到CLOCK1和CLOCK2,OUT1接到8086的AD 18, 8086通过检测此端口是否有高电平来判断是否30S定时到。OUT2产生1MHZ方波通过或门和8255的B口共同控制黄灯的闪烁。8255三个口全部工作在方式0既基本输入输出方式,红绿灯的转换由软件编程实现。 三:设计方案与硬件连接 设8253各口地址分别为:设8253基地址即通道0地址为04A0H;通道1为04A2H;通道2为04A4H;命令控制口为04A6H。 黄灯闪烁的频率为1HZ,所以想到由8253产生一个1HZ的方波, 8255控制或门打开的时间,在或门打开的时间内,8253将方波信号输入或门使黄灯闪

基于单片机8255交通灯

8255控制交通灯 一、实验目的 了解8255芯片的结构及编程方法,学习模拟交通灯控制的实现方法。 二、实验内容 用8255做输出口,控制十二个发光二极管燃灭,模拟交通灯管理。 三、实验说明 1.因为本实验是交通灯控制实验,所以要先了解实际交通灯的变化情况和规律。假设一个十字路口为东西南北走向。初始状态0为东西红灯,南北红灯。然后转状态1东西绿灯通车,南北红灯。过一段时间转状态2,东西绿灯灭,黄灯闪烁几次,南北仍然红灯。再转状态3,南北绿灯通车,东西红灯。过一段时间转状态 4,南北绿灯灭,闪几次黄灯,延时几秒,东西仍然红灯。最后循环至状态1。 四、实验程序框图 五、实验接线图

六、实验步骤 ①8255 PA0—PA7、PB0—PB3依次接发光二极管L1—L12。 ②以连续方式从0BB0H开始执行程序,初始态为四个路口的红灯全亮之后,东西路口的绿灯亮南北路口的红灯亮,东西路口方向通车。延时一段时间后东西路口的绿灯熄灭,黄灯开始闪耀。闪耀若干次后,东西路口红灯亮,而同时南北路口的绿灯亮,南北路口方向开始通车,延时一段时间后,南北路口的绿灯熄灭,黄灯开始闪耀。闪耀若干次后,再切换到东西路口方向,之后重复以上过程。 一摘要: 本系统采用单片机、键盘、LED显示、交通灯演示系统组成。设计一个用于十字路口的车辆及行人的交通管理,系统包括左拐、右拐、及行基本的交通灯的功能,计时牌显示路口通行转换剩余时间,在出现紧急情况时可由交通手动实现全路口车辆禁行而行人通行状态。另外,在特种车辆如119、120通过路口时,系统可自动转为特种车辆放行,其他车辆禁止通行的状态,15s后系统自动恢复正常管理。其他还有 84s与60s通行管理转换等功能。采用数码管与点阵LED相结合的显示方法,既要求倒计时数字输出,又要求有状态灯输出等。 关键字: 单片机系统(AT89C51)控制8255、交通规则、LED显示、动态扫描、按键输入、分时段调整 参考文献:《单片机课程设计指导》北京航天航空大学出版社《基于MCS-51系列的单片机原理的应用设计》国防工业出版社 《单片机实训教程》北京大学出版社 《单片机系统原理及应用》 《微机原理及应用》

交通灯实验报告——数字电路

一、用中规模器件设计交通灯控制器 一、任务要求 1)通过数字电路的设计,在面包板上模拟交通红绿灯。要求分主干道和支干道,每条道上安装红(主R,支r)绿(主G,支g)黄(主Y,支y)三种颜色的灯,由四种状态自动循环构成(G、r→Y、r→R、g→R、y); 2)在交通灯处在不同的状态时,设计一计时器以倒计时方式显示计时,并要求不同状态历时分别为:G、r:30秒;R、g:20秒;Y、r,R、y:5秒。 二、总体方案 三、单元电路设计 1)主控电路 在设计要求中要实现四种状态的自动转换,首先要把这四种状态以数字的形态表示出来。因2*2=4,所以可以两位二进制数表示所需状态(00—G、r, 01—Y、r, 10—R、g, 11—R、y),循环状态:(00—10—11—01—00) 数字电路课程中介绍的计数器就是通过有限几个不同状态之间的循环实现不同模值计数,由此可以尝试设计一模值为4的计数器,其输出(代表不同状态)既可以循环转换,而且能够控制其他部分电路。在课程设计中本人利用74LS74(双上升沿D触发器)设计模4计数器作为主控部分电路。 主控电路图如下:

红绿灯显示电路接线如下: 4)计时部分电路 a)计时器状态产生模块: 设计要求对不同的状态维持的时间不同,而且要以十进制倒计时显示出来。限于实验 室器材本人采用两个74LS161完成计时器状态产生模块设计。 设计思路: 要以十进制输出,而又有一些状态维持时间超过10秒,则必须用两个74LS161分别 产生个位和十位的数字信号。显然,计数器能够完成计时功能,我们可以用74LS161设计, 并把它的时钟cp接秒脉冲。74LS161计数器是采用加法计数,要想倒计时,则在74LS161 输出的信号必须经过非门处理后才能接入数码管的驱动74LS48,而在显示是最好以人们 习惯的数字0---9显示计时,故在设计不同模值计数器确定有效状态时,本人以0000,0001,0010-----1111这些状态中靠后的状态为有效状态。 例如:有效状态1011—1100—1101—1110—1111 取反0100—0011—0010—0001—0000即4------3------2-------1------0实现模5的倒计时。 在将74LS161改装成其他模值时既可以采用同步清零法,也可采用异步置数法,但 0000不可能为有效状态,所以采用异步置数法完成不同模值转化的实现。 首先对控制个位输出的74LS161设计: 按要求对系统的状态不同,即红绿灯的状态不同,个位的进制也就要求不同。本人利 用系统的状态量Q 2、Q 1 控制74LS161的置数端D 3 D 2 D 1 D 。当系统处在G、r或R、g状态时, 个位的进制是十(模10),即逢十进一,当系统处在Y、r或R、y状态时,个位的进制是 五(模5),即逢五进一,模10时,有效状态为0110-----1111,置D 3D 2 D 1 D 为0110,模5

基于8253和8255的模拟交通灯控制系统

广东外语外贸大学信息科学技术学院 《微型计算机接口技术》大作业设计报告 基于8255,8253的 发声人性化交通灯控制设计 日期:2011-1-7

摘要 十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。井然秩序的实现,靠的是交通信号灯的自动指挥系统。交通信号灯控制方式有很多。本系统采用8255A芯片实现了A口设置红、绿、黄灯点亮时间的功能,从而控制LED发光二极管实现红、黄、绿灯循环点亮。另外结合日常生活经验,并且从亚残会中对残疾人的生活不便中得出感悟,采用8253进行控制扬声器,在红、绿灯变换之间黄灯闪烁时,同时添加了“声音提示"功能。整个系统具有固定的“红灯—黄灯—绿灯”转换间隔,并自动切换,对东西南北方向的道路进行“自动”的控制。但是,经过小组成员提出的各种假设,发现此系统需要加入更多人性化的元素:交警可以根据实际的路面情况,针对不同的突发事件,进行手工控制红绿灯的转换。例如救护车警车执行紧急任务;例如东西道路塞车,南北道路空闲无车辆行驶时,需要灵活调节红绿灯的转化。通过8255并口控制,可以达到更加人性化的效果从而方便各种人群。 关键字:8255 交通灯控制8253 发声人性化 第一部分概论 1.1设计任务:交通信号灯的控制 (1)通过8255并行接口来控制LED发光二极管的亮灭,并适当延时。(2)黄灯闪烁时,通过8253控制扬声器发出声音,以提醒灯的转换。(3)通过8255并口控制,人工进行交通灯的转换。 1.2 任务要求 (1)南北路口的绿灯、东西路口的红灯同时亮5秒左右。 (2)南北路口的黄灯闪烁若干次,扬声器鸣叫,同时东西路口的红灯闪烁。(3)南北路口的红灯、东西路口的绿灯同时亮5秒左右。

实验一 8255控制交通灯实验

实验一 8255控制交通灯实验 一、实验目的与要求 1、了解8255芯片的工作原理,熟悉其初始化编程方法以及输入、输出程序设计技巧。学会使用8255并行接口芯片实现各种控制功能,如本实验(控制交通灯)等。 2、熟悉8255内部结构和与8088的接口逻辑,熟悉8255芯片的3种工作方式以及控制字格式。 3、认真预习本节实验内容,尝试自行编写程序,填写实验报告。 二、实验设备 STAR 系列实验仪一套、PC 机一台 三、实验内容 1、编写程序:使用8255的PA0.. 2、PA4..6控制LED 指示灯,实现交通灯功能。 2、连接线路验证8255的功能,熟悉它的使用方法。 四、实验原理图 D034D133D232D331D430D529D628D727PA04PA13PA22PA31PA440PA539PA638PA737PB018PB119PB220PB321PB422PB523PB624PB725PC014PC115PC216PC317PC413PC512PC611PC7 10 RD 5WR 36A09A18RESET 35CS 6 8255 U36 D0D1D2D3D4D5D6D7WR RD RST A0 A1 PC5PC6PC7 PC2PC3PC4PC0PC1DS35DS36DS37DS38DS39DS40DS4112345678 VCC DS42 A0A1 CS CS1(0F000H) 510 R111510 R112 510R113510R114510R115510R116510R117510R118

.MODEL TINY COM_ADD EQU 0F003H PA_ADD EQU 0F000H PB_ADD EQU 0F001H PC_ADD EQU 0F002H .STACK 100 .DATA LED_Data DB 01111101B ;东西绿灯,南北红灯DB 11111101B ;东西绿灯闪烁,南北红灯 DB 10111101B ;东西黄灯亮,南北红灯 DB 11010111B ;东西红灯,南北绿灯 DB 11011111B ;东西红灯,南北绿灯闪烁 DB 11011011B ;东西红灯,南北黄灯亮 .CODE START: MOV AX,@DATA MOV DS,AX NOP MOV DX,COM_ADD MOV AL,80H ;PA、PB、PC为基本输出模式 OUT DX,AL MOV DX,PA_ADD ;灯全熄灭 MOV AL,0FFH OUT DX,AL LEA BX,LED_Data

EDA交通灯实验报告

实验:交通灯设计 一、设计任务及要求: 设计任务:模拟十字路口交通信号灯的工作过程,利用实验板上的两组红、黄、绿LED作为交通信号灯,设计一个交通信号灯控制器。要求: (1)交通灯从绿变红时,有4秒黄灯亮的间隔时间; (2)交通灯红变绿是直接进行的,没有间隔时间; (3)主干道上的绿灯时间为40秒,支干道的绿灯时间为20秒; (4)在任意时间,显示每个状态到该状态结束所需的时间。 主干道 图1 路口交通管理示意图 设计要求: (1)采用VHDL语言编写程序,并在QuartusII工具平台中进行仿真,下载到EDA实验箱进行验证。 (2)编写设计报告,要求包括方案选择、程序清单、调试过程及测试结果。 二、设计原理 1、设计目的: 学习DEA开发软件和QuartusII的使用方法,熟悉可编程逻辑器件的使用。通过制作来了解交通灯控制系统,交通灯控制系统主要是实现城市十字交叉路口红绿灯的控制 2、设计说明

(1)第一模块:clk时钟秒脉冲发生电路 在红绿灯交通信号系统中,大多数情况是通过自动控制的方式指挥交通的。 因此为了避免意外事件的发生,电路必须给一个稳定的时钟(clock)才能让系统正常运作。 模块说明: 系统输入信号: Clk: 由外接信号发生器提供256的时钟信号; 系统输出信号: full:产生每秒一个脉冲的信号; (2)第二模块:计数秒数选择电路 计数电路最主要的功能就是记数负责显示倒数的计数值,对下一个模块提供状态转换信号。 模块说明: 系统输入:full: 接收由clk电路的提供的1HZ的时钟脉冲信号; 系统输出信号:tm:产生显示电路状态转换信号 tl:倒计数值秒数个位变化控制信号 th:倒计数值秒数十位变化控制信号 (3)第三模块:红绿灯状态转换电路 本电路负责红绿灯的转换。 模块说明: 系统输入信号:full: 接收由clk电路的提供的1hz的时钟脉冲信号; tm: 接收计数秒数选择电路状态转换信号; 系统输出信号:comb_out: 负责红绿灯的状态显示。 (4)第四模块:时间显示电路 本电路负责红绿灯的计数时间的显示。 模块说明: 系统输入信号:tl:倒计数值秒数个位变化控制信号; th:倒计数值秒数十位变化控制信号; 系统输出信号:led7s1: 负责红绿灯的显示秒数个位。 led7s2:负责红绿灯的显示秒数十位。 三、设计方案

8255,8253交通灯模拟实验报告

(-)课题简介 (2) (二)设计方案 (2) (三)具体设计 (4) 1.电路原理 (4) 2. ........................................................ 程序原理: 6 3.系统原理 (8) 1)....................................................................... 8259, 8255A, 8254 工作原理:8 4.关键技术分析 (13) 1)实时控制和管理设计 (13) 2)发光二极管闪烁程序 (14) 3)源程序 (15) (四)测试 (21) 1.在测试中遇到的问题记录 (21) 2.测试结果 (22) (五)....................... 总结22 (六)........................... 设计体会23 (七)........................... 参考文献24 (一)课题简介 十字道口的红绿灯是交通法规的无声命令,是司机和行人的行为准则。十字道口的交通红绿灯控制是保证交通安全和道路畅通的关键。当前,国大多数城市正在采用“自动”红绿交通灯,它具有固左的“红灯一绿灯”转换间隔,并自动切换。它们一般由“通行与禁止时间控制显示、红黄绿三色信号灯和方向指示灯”三部分组成。在交通灯的通行与禁止时间控制显示中,通常要么东西、南北两方向务50秒:要么根拯交通规律,东四方向60秒,南北方向40秒,时间控制都是固泄的。交通灯的时间控制显示,以固定时间值预先"固化”在单片机中,每次只是以一泄周期交替变化。但是,实际上不同时

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

微机原理课程设计: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、实验程序框图

相关主题
文本预览
相关文档 最新文档