文档库 最新最全的文档下载
当前位置:文档库 › 微机原理实验交通灯控制实验

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

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

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

课程设计时间: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将方波信号输入或门使黄灯闪

烁。

由于计数值最大为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即可。

四:程序流程图

五:程序分析1:源程序设置8255A口

南北路口绿灯

南北路口黄灯

南北路口红灯

南北路口绿灯是否有

返回

data segment

io8255a equ28ah

io8255b equ28bh

portc1 db24h,44h,04h,44h,04h,44h,04h;六个灯可能db81h,82h,80h,82h,80h,82h,80h;的状态数据

db0ffh;结束标志

data ends

code segment

assume cs:code,ds:data

start:

mov ax,data

mov ds,ax

mov dx,io8255b

mov al,90h

out dx,al;设置8255为C口输出

mov dx,io8255a

re_on: mov bx,0

on: mov al,portc1[bx]

cmp al,0ffh

jz re_on

out dx,al;点亮相应的灯

inc bx

mov cx,200;参数赋初值

test al,21h;是否有绿灯亮

jz de1 ;没有,短延时

mov cx,2000;有,长延时

de1: mov di,9000;di赋初值9000

de0: dec di;减1计数

jnz de0 ;di不为0

loop de1

push dx

mov ah,06h

mov dl,0ffh

int21h

pop dx

jz on ;没有,转到on

exit: mov ah,4ch;返回

int21h

code ends

end start

可通过对cx的初始值设定来改变黄色灯亮的时间间隔来改变红灯亮的时间长度。

2:调用函数分析

中断-中断函数简介

1、EnableIntr;

语法:BOOL EnableIntr();

功能描述:将微机实验装置的中断输入设为有效,执行此函数后,PLX9054将接受微机

实验装置上的中断请求,然后根据该请求申请一个PCI中断。

参数:无

返回值:如果成功,则返回True,否则返回False

备注:应用程序在调用该函数之前,必须先调用Startup函数。

2、DisableIntr;

语法:BOOL DisableIntr();

功能描述:将微机实验装置的中断输入设为无效,执行此函数后,PLX9054将不相应微

机实验装置上的中断请求

参数:无

返回值:如果成功,则返回True,否则返回False

备注:应用程序在调用该函数之前,必须先调用Startup函数。

3、RegisterISR;

语法:BOOL RegisterISR(ISR_ROUTINE pfuncISR);

功能描述:注册中断服务程序,当微机实验箱上的中断输入有效时,且实验箱上的中断

输入使能,程序将会执行该中断服务程序。

参数:pfuncISR:该参数即为中断服务函数名

返回值:如果成功,则返回True,否则返回False

备注:应用程序在调用该函数之前,必须先调用Startup函数

六:调试记录及结果分析

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

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

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

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

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

《16/32位微机原理、汇编语言及接口技术》陈涛机械工业出版社

《微机接口技术应用》

八:芯片资料

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中的输出数据。

2.8253定时计数器

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

1. 数据总线缓冲器及数据总线D

0~D

7

2. 读/写控制逻辑及控制引脚

CS* A1 A0 I/O地址读操作RD* 写操作WR*

0 0 0 0 0 1 0 1 0 0 1 1 40H

41H

42H

43H

读计数器

读计数器

1

读计数器

2

无操作

写计数器0

写计数器1

写计数器2

写控制字

3. 控制字寄存器

在初始化编程时,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的计数过程

⑹计数过程结束

九:总结

这个实验是与现实生活是比较接近,通过这个实验,我大概知道了交通灯的工作原理,也加深了以前学的知识,更进一步认识了8255、8253 芯片,并且掌握了对并行接口的使用。交通灯控制设计方面的东西,我了解的较少,只是大概的知道8255可编程并行接口芯片和8253可以用来定时。刚开始只是把实验箱的线连接,原理什么都不知道,只好大量的查资料像怎么样使用8253来定时及输出一定频率的脉冲,怎么样用8282这个地址锁存器来存储高位地址和低位地址以及交通有哪些规则,后来终于弄懂了,并且可以修改代码来得到自己需要的结果,对微机原理越加有兴趣,也想更深入的了解一些有关于这方面的知识。

PLC实验报告(交通灯控制系统)

交通灯控制系统 一、实验目的 (1)用PLC构成十字路口交通灯控制系统。 (2)掌握程序调试的步骤和方法。 (3)掌握构建实际PLC控制系统的能力。 二、实验要求 (1)复习PLC常用指令的功能及用法。 (2)复习PLC程序设计的一般方法。 (3)根据实验要求提前编写程序,待上机验证调试修改。 三、实验环境 软件:STEP 7-Micro_WIN V40+ SP9:S7-200的编程软件 STEP 7-Micro_WIN V32指令库 硬件:THSMS-2A型PLC实验箱(西门子)、电脑、连接导线、USB-PPI 通信电缆 四、实验内容及步骤 交通灯控制系统面板图如上图所示,控制要求如下: 交通信号灯受一个总控制开关控制,当总控制开关接通时,信号灯系统开始工作。 开始工作后,南北红灯和东西绿灯同时点亮,4秒后东西绿灯开始闪烁,闪烁2秒后熄灭,熄灭同时切换成东西黄灯亮,2秒后东西黄灯和南北红灯同时熄灭,东西红灯和南北绿灯同时点亮。4秒后南北绿灯开始闪烁,闪烁2秒后熄灭,熄灭同时切换成南北黄灯亮,2秒后南北黄灯和东西红灯同时熄灭,再次切换成南北红灯和东西绿灯同时点亮。如此循环,周而复始。 当总控制开关断开时,所有信号灯都熄灭。

(1)确定I/O点数。列出详细的I/O地址分配表。如(该表仅为举例, (3)输入编好的PLC控制程序。 (4)运行程序,按控制要求设置各输入量,观察PLC运行情况,记录南北、东西各灯顺序亮、灭的运行情况。调试程序直至正确为止。 解:由题目要求得,

②梯形图如下图①,语句表如下图②,时序图如下图③: 图①图① 图②图② 图③ 五、注意事项

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

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),

数字系统课程设计-交通灯控制器实验报告

交通灯控制器 ——数字系统设计报告 姓名: 学号:

一.实验目的 1.基本掌握自顶向下的电子系统设计方法 2.学会使用PLD和硬件描述语言设计数字电路,掌握 Quartus II等开发工具的使用方法 3.培养学生自主学习、正确分析和解决问题的能力 二.设计要求 我所选择的课题是用Verilog HDL实现交通灯控制器。该课题的具体内容及要求如下: 主干道与乡村公路十字交叉路口在现代化的农村星罗棋布,为确保车辆安全、迅速地通过,在交叉路口的每个入口处设置了红、绿、黄三色信号灯。红灯禁止通行;绿灯允许通行;黄灯亮则给行驶中的车辆有时间行驶到禁行线之外。主干道和乡村公路都安装了传感器,检测车辆通行情况,用于主干道的优先权控制。 (1)当乡村公路无车时,始终保持乡村公路红灯亮,主干道绿灯亮。 (2)当乡村公路有车时,而主干道通车时间已经超过它的最短通车时间时,禁止主干道通行,让乡村公路通行。主干道最短通车时间为25s 。 (3)当乡村公路和主干道都有车时,按主干道通车25s,乡村公路通车16s交替进行。 (4)不论主干道情况如何,乡村公路通车最长时间为16s。 (5)在每次由绿灯亮变成红灯亮的转换过程中间,要亮5s时

间的黄灯作为过渡。 (6)用开关代替传感器作为检测车辆是否到来的信号。用红、绿、黄三种颜色的发光二极管作交通灯。 (7)要求显示时间,倒计时。 (C表示乡村道路是否有车到来,1表示有,0表示无;SET用来控制系统的开始及停止;RST是复位信号,高电平有效,当RST=1时,恢复到初始设置;CLK是外加时钟信号;MR、MY、MG分别表示主干道的红灯、黄灯和绿灯;CR、CY、CG分别表示乡村道路的红灯、黄灯和绿灯,1表示亮,0表示灭) 系统流程图如下:(MGCR:主干道绿灯,乡村道路红灯;MYCR:主干道黄灯,乡村道路红灯;MRCG:主干道红灯,乡村道路绿灯;MRCY:主干道红灯,乡村道路黄灯;T0=1表示主干道最短通车时间到,T1=1表示5秒黄灯时间到,T2=1表示乡村道路最长通车时间到。)

微机原理课程设计——交通灯控制系统

南通大学电子信息学院 微机原理课程设计 报告书 课题名交通灯控制系统 班级 _______ 学号 __________ 姓名 ____ 指导教师 ______ 日期 _________

目录 1 设计目的 (1) 2 设计内容 (1) 3 设计要求 (1) 4 设计原理与硬件电路 (2) 5 程序流程图 (4) 6 程序代码 (4) 7 程序及硬件系统调试情况 (8) 8 设计总结与体会 (9) 9 参考文献 (9)

1 设计目的 电子课程设计是电子技术学习中非常重要的一个环节,是将理论知识和实践能力相统一的一个环节,是真正锻炼学生能力的一个环节。交通灯能保证行人过马路的安全,控制交通状况等优点受到人们的欢迎,在很多场合得到了广泛的应用。 交通灯是采用计算机通过编写汇编语言程序控制的。红灯停,绿灯行的交通规则。广泛用于十字路口,车站, 码头等公共场所,成为人们出行生活中不可少的必需品,由于计算机技术的成熟与广泛应用,使得交通灯的功能多样化,远远超过老式交通灯, 交通灯的数字化给人们生产生活带来了极大的方便,而且大大地扩展了交通灯的功能。诸如闪烁警示、鸣笛警示,时间程序自动控制、倒计时显示,所有这些,都是以计算机为基础的。还可以根据主、次干道的交通状况的不同任意设置各自的不同的通行时间。或者给红绿色盲声音警示的人性化设计。现在的交通灯系统很多都增加了智能控制环节,比如对闯红灯的车辆进行拍照。当某方向红灯亮时,此时相应的传感器开始工作,当有车辆通过时,照相机就把车辆拍下。 要将交通灯系统产品化,应该根据客户不同的需求进行不同的设计,应该在程序中增加一些可以人为改变的参数,以便客户根据不同的需要随时调节交通灯。因此,研究交通灯及扩大其应用,有着非常现实的意义。 2 设计内容 交通灯控制系统 利用8253定时器、8255等接口,设计一电路,模拟十字路口交通灯控制。要求能实现自动控制和手动应急控制。 3 设计要求 在Proteus环境下,结合课程设计题目,设计硬件原理图,搭建硬件电路 软件设计

EDA实验报告实验五:交通灯控制器设计

实验五十字路口交通灯控制器设计一.实验目的 1.进一步加强经典状态机的设计 2.学会设计模可变倒计时计数器 二.实验要求 一条主干道,一条乡间公路。组成十字路口,要求优先保证主干道通行。有MR(主红)、MY(主黄)、MG(主绿)、CR(乡红)、CY(乡黄)、CG(乡绿)六盏交通灯需要控制;交通灯由绿→红有4秒黄灯亮的间隔时间,由红→绿没有间隔时间;系统有MRCY、MRCG、MYCR、MGCR四个状态; 乡间公路右侧各埋有一个传感器,当有车辆通过乡间公路时,发出请求信号S=1,其余时间S=0; 平时系统停留在MGCR(主干道通行)状态,一旦S信号有效,经MYCR(黄灯状态)转入MRCG(乡间公路通行)状态,但要保证MGCR的状态不得短于一分钟;一旦S信号无效,系统脱离MRCG状态。随即经MRCY(黄灯状态)进入MGCR 状态,即使S信号一直有效,MRCG状态也不得长于20秒钟。 三.实验设计: 1.一条主道,一条乡道,组成十字路口,要求优先保证主道通行。 2.当主道没有车通行,且乡道友车要通行时,并且此时主道通行时间大于1分钟,则主道变黄灯,乡道保持红灯,经过4秒倒计时时间进入主道为红灯乡道为绿灯的状态。再倒计时20秒钟。在倒计时过程中,若乡道突然没有车通行,马上进入主道红灯,乡道黄灯状态,倒计时4秒。 3.之后主道变为绿灯,乡道为红灯,这时无论乡道有无车通行都要倒计时60秒,然后若乡道有车通行则主道为黄灯,乡道为红灯,若乡道一直没有车要通行则保持主道通行,若乡道友车通行则按照上面的状态依次进行转换。 按照以上的思路,设计两个底层文件和一个顶层文件: 1.模块1是状态改变控制6盏灯的亮与灭。

微机原理十字路口红绿灯闪烁实验

实验三十字路口红绿灯闪烁实验 一、实验目的 通过对红绿黄灯的控制,熟练掌握8255A接口芯片的编程方法 二、实验内容 对8255A接口芯片进行编程,使红黄绿发光二级管按照十字路口交通灯的形式点亮或者熄灭。 三、线路连接 发光二级管共8个,其中两组红黄绿灯用六个,L2、L3、L4为一组,L5、L6、L7、为一组;试验台连接如图所示。高电平时,灯点亮。 四、编程提示 1、红、黄、绿灯变化规律 设有一个十字路口,两组灯分别代表东西和南北两个方向,其红黄绿灯变化规律为: (1)两个路口红灯全亮 (2)南北路口绿灯亮,东西路口红灯亮 (3)南北路口绿灯灭,东西路口红灯亮 (4)两个路口黄灯闪烁 (5)两个路口红灯全亮 (6)东西路口绿灯亮,南北路口红灯亮 (7)东西路口绿灯灭,南北路口红灯亮

(8)两个路口黄灯闪烁 (9)转向(2)循环执行 2. 设置8255A 方式控制字 设置8255A 的端口C 工作在方式0,为输出。D0、D1控制绿灯,D2、D3控制黄灯,D4、D5控制红灯。需要点亮哪一位指示灯时,8255A 相应端口对应为就输出“1”。 五、流程图 Y N 两个路口红灯亮 延时 南北路口绿灯亮,东西路口红灯亮 有键按下? 延时 南北路口绿灯灭 两个路口黄灯闪烁 两个路口红灯亮 延时 显示提示信息 东西路口绿灯灭 读端口C 数据并保存 两个路口红灯亮 延时 设控制字为80H(端口C 均为输出) 东西路口绿灯亮,南北路口红灯亮 延时 两个路口黄闪烁 设控制字为81H(端口C 低四位为输入) 读/写 结束 开始

六、实验程序 DATA SEGMENT IOPORT EQU 0D880H-280H IO8255C EQU IOPORT+282H IO8255T EQU IOPORT+283H PB DB ? MESS DB 'ENTER ANY KEY CAN EXIT TO DOS!',0DH,0AH,'$' DATA ENDS STACK SEGMENT STACK STA DW 50 DUP(?) TOP EQU LENGTH STA STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACK START: MOV AX,DATA MOV DS,AX MOV ES,AX MOV AH,09H MOV DX,OFFSET MESS INT 21H MOV DX,IO8255T MOV AL,81H OUT DX,AL MOV DX,IO8255C IN AL,DX MOV PB,AL MOV DX,IO8255T MOV AL,80H OUT DX,AL MOV DX,IO8255C MOV AL,PB OR AL,0CH OUT DX,AL MOV AL,30H OUT DX,AL CALL DELAY10 LLL: MOV DX,IO8255C MOV AL,12H OUT DX,AL CALL DELAY10 CALL DELAY10 CALL DELAY10 CALL DELAY10

实验3 模拟交通灯控制实验

综合实验一:模拟交通灯控制实验 一、实验目的 1、了解时间常数的计算方法。 2、了解80C51中断的工作机理、过程,掌握中断服务程序的编制。 3、掌握80C51单片机内部定时/计数器的工作方式选择,初始化程序的设置以及中断服务子程序的设计。 二、实验内容 编写模拟交通灯运行控制程序。要求红绿灯亮灯延时时间为30秒,黄灯亮灯延时时间为10秒。利用二位八段LED显示器进行时间显示。时间显示采用倒计时的方式。时间归零时信号进行切换。 三、实验要求 掌握单片机内部通用资源如中断、定时计数器、串行口及并行端口的应用。 时间的延时必须采用定时器定时中断方式进行,定时器0或定时器1可任选一个(默认为0)。编程时请充分考虑定期器的时间扩展问题。 利用二位八段LED显示器进行时间显示,显示码采用串行口模式0进行输出。 显示方式及相应的程序编写请参考实验一。显示部分的详细接线原理及对应的显示码参考图15。 掌握中断系统的基本概念及使用方法。如:中断被响应所需的必要条件;一个完整的中断响应过程;中断优先级的概念 信号灯的控制由并行口P0口输出进行快关控制。 四、实验线路图 图为交通灯控制接线示意图,除红绿黄六路交通灯外,还需要用到两个八段LED显示器,用于显示交通灯时间显示,显示码采用串行口模式0进行输出。 图为八段显示器接线原理图,具体说明了串行口工作模式0的硬件线路。由于开发板一有6个八段显示器,在实验过程中除正常计时的两个八段LED外,将其余四个灭掉。

图交通灯控制接线示意图 图八段显示器接线原理图五、程序及注释 ORG 0000H

ORG 000BH ;定时器计数器T0中断矢量 AJMP T0INT ORG 0030H MAIN: MOV TMOD,#01H ;设定时器/计数器T0为方式1,T1为方式0 MOV SCON,#00H MOV SP,#60H ;设堆栈指针SP为60H SETB TR0 ;启动定时器/计数器T0 SETB PT0 ;T0中断为高优先级 SETB ET0 ;允许定时器/计数器T0中断 SETB EA ;开中断 MOV TL0,#0B0H ;设T0时间常数为100ms MOV TH0,#3CH ;ORG 0100H RED: SETB ;设置灯的初始状态 CLR CLR CLR CLR SETB MOV R0,#30 ;红绿灯亮30秒 MOV R1,#10 ;黄灯亮10秒 LOOP1:MOV A,R0

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口共同控制黄

交通灯控制器课程设计实验报告

2011级课程设计实验报告 交 通 灯 控 制 器 院(系):计算机与信息工程学院 专业年级: 2011级通信工程一班 姓名: 谢仙 学号: 指导教师: 杨菊秋 2013年06月25日

目录 1 引言 (3) 2 任务与要求 (3) 3 课程设计摘要及整体方框图 (3) 4 课程设计原理 (4) 555定时器 (5) 七位二进制计数器4024 (6) 二进制可逆计数器74LS193 (8) 数码显示电路 (9) 结论 (10) 体会与收获 (10) 附录: 1、整体电路原理图 (11) 2、元件表 (12) 3、焊接与调试 (12) 1引言

交通信号灯常用于交叉路口,用来控制车辆的流量,提高交叉路口车辆的通行能力,减少交通事故。本交通灯设计主要由秒脉冲发生器、计数器、译码显示电路组成。秒脉冲发生器由NE555产生脉冲,计数器由74LS193和4024实现,译码电路采用74LS48和七段数码管来显示。 2设计任务与要求 交通灯控制信号的应用非常广泛。本电路设计一个交通灯控制器,需要达到的目的如下; 一个周期64秒,平均分配,前32秒红灯亮,后32秒绿灯亮。 在红灯亮的期间的后8秒与红灯在一起的黄灯闪烁(注意:红灯同时亮)。为了显示效果明显,设计闪烁频率为1。 在绿灯亮的期间的后8秒与绿灯在一起的黄灯闪烁(注意:绿灯同时亮),为了显示效果明显,设计闪烁频率为1。 在黄灯闪烁期间,数码管同时倒计时显示,在此期间以外,数码管不亮。 3课程设计摘要及整体方框图 为了完成交通灯控制电路的设计,方案考虑如下: 一个脉冲信号发生器,一个二进制加法计数器,一个十进制减法计数器,红灯与绿灯以及黄灯是否亮是由二进制加法计数器的输出端状态来决定的,因此,设计一个组合逻辑电路,它的输入信号就是二进制加法计数器的输出信号,它的输出就是发光二极管的控制信号,因此,需要一个组合逻辑电路,六个发光二极管(二个红色发光二极管,二个绿色发光二极管,二个黄色发光二极管)电路,一个数码管显示电路。结构图如下: 4 课程设计原理分析及相关知识概述

微机原理交通灯控制实验及其详细

交通灯信号控制实验 一、实验目的 1、掌握并行接口8253的基本原理 2、掌握8253的编程方法 二、实验内容 如图,L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连,L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。编程使六个灯按交通变化规律亮灭。 三、编程提示 1、8255控制寄存器地址:28BH—0C40BH A口地址:288H—04C408H C口地址:28AH—04C40AH 2、十字路口交通灯的变化规律要求 (1)南北路口的绿灯、东西路口的红灯同时亮三秒; (2)南北路口的黄灯闪烁三次,同时东西路口的红灯继续亮; (3)南北路口的红灯、东西路口的绿灯同时亮三秒; (4)南北路口的红灯继续亮、同时东西路口的黄灯亮闪烁三次; (5)转(1)重复。 3、程序设计流程 开始 设置8255C口输出 南北路口的绿灯、东西路口的红灯亮 长延时 南北路口的黄灯闪烁,东西路口红灯亮 南北路口的红灯、东西路口的绿灯亮

四、程序设计及实验调试 程序设计的思想及注意事项: 1.首先是在选择程序时是选用软件延时还是硬件延时。我采用的是C口方式0输入,所以选用了软件延时。 2.在选择循环的时间上,老师上课时说过,长延时可以采用双层嵌套,外层嵌套为0FFFFH,内层嵌套为4000H,我在编程时外层送进了0,相当于初值为65536,内层送进了4000H。为了达到闪烁和延时的区别,我在编闪烁的程序时,给外层嵌套送入初值3000H,内层0100H(这是我通过实验的结果)。人眼感觉闪烁的效果只是短延时的结果。 实验程序: CODE SEGMENT ASSUME CS:CODE START: MOV DX,0C40BH MOV AL,10010000B ;C口方式0输入 OUT DX,AL

实验三-交通灯控制实验

南昌大学实验报告 学生姓名:学号:专业班级: 实验类型:□验证□综合□√设计□创新实验日期:实验成绩: 实验三交通灯控制实验 一.实验目的 掌握十字路口交通灯控制方法。 二.实验内容 利用系统提供的双色LED 显示电路,和四位静态数码管显示电路模拟十字路口交通信号灯。4 位LED 数码管显示时间,LED 显示红绿灯状态。 三.实验要求 根据实验内容编写一个程序,并在实验仪上调试和验证。 四.实验说明和电路原理图 交通信号灯控制逻辑如下:假设一个十字路口为东西南北走向。开始为四个路口的红灯全部亮之后,东西路口的绿灯亮,南北路口的红灯亮,东西路口方向通车,延时一段时间后(20 秒),东西路口的绿灯,闪烁若干次后(3 秒),东西路口的绿灯熄灭,同时东西路口的黄灯亮,延时一段时间后(2 秒),东西路口的红灯亮,南北路口的绿灯亮,南北路口方向通车,延时一段时间后(20 秒),南北路口的绿灯闪烁若干次后(3 秒),南北路口的绿灯熄灭,同时南北路口的黄灯亮,延时一段时间后(2 秒),再切换到东西路口的绿灯亮,南北路口的红灯亮,之后重复以上过程。 双色LED 是由一个红色LED 管芯和一个绿色LED 管芯封装在一起,共用负极,当红色正端加高电平,绿色正端加低电平时,红灯亮;红色正端加低电平,绿色正端加高电平时,绿灯亮;两端都加高电平时,黄灯亮。 本实验需要用到CPU 模块(F3 区)、静态数码管/双色LED 显示模块(B4 区) 实验框图如图:

五.实验预习要求 学习教材的相关内容,根据实验要求画出程序流程图,写出实验程序。 六.实验步骤 1)系统各跳线器处在初始设置状态。 P10 同时接G1、G3;P11 同时接R1、R3;P1.2 同时接G2、G4;P1.3 同时接R2、R4;P1.6、P1.7 分别接静态数码显示的DIN、CLK。 2)启动PC 机,打开THGMW-51 软件,输入源程序,并编译源程序。编译无误后,下载程序运行。 3)观察十字路口交通灯效果。 七.实验程序

实验一 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. 熟悉Multisim仿真软件的主要功能和使用。 2. 熟悉各种常用的MSI时序逻辑电路的功能和使用。 3. 运用逻辑设计知识,学会设计简单实用的数字系统。 二、实验任务及要求: 1.设计一个甲干道和乙干道交叉十字路口的交通灯控制逻辑电路。每个干道各一组指示灯(红、绿、黄)。要求:当甲干道绿灯亮16秒时,乙干道的红灯亮;接着甲干道的黄灯亮5秒,乙干道红灯依然亮;紧接着乙干道的绿灯亮16秒,这时甲干道红灯亮;然后乙干道黄灯亮5秒,甲干道红灯依然亮;最后又是甲干道绿灯亮,乙干道变红灯,依照以上顺序循环,甲乙干道的绿红黄交通指示灯分别亮着。 2.要求: (1)分析交通灯状态变换,画出基于格雷码顺序的交通灯控制状态图。 (2)设计时序逻辑电路部分,写出完整的设计过程,画出逻辑电路图。在Multisim 仿真平台上,搭建设计好的该单元电路,测试验证,将电路调试正确。 (3)设计组合逻辑电路部分,写出完整的设计过程,画出逻辑电路图。在Multisim 仿真平台上,搭建设计好的该单元电路,测试验证,将电路调试正确。 (4)用74LS161计数器构造16秒定时和5秒定时的定时电路,画出连线图。在Multisim仿真平台上,选用74LS161芯片连线,测试验证,将电路调试正确。(5)在Multisim仿真平台上形成整个系统完整的电路,统调测试结果。 三、设计思路与基本原理: 依据功能要求,交通灯控制系统应主要有定时电路、时序逻辑电路及信号灯转换器组合逻辑电路组成,系统的结构框图如图1所示。其中定时电路控制时序逻辑电路状态的该表时间,时序逻辑电路根据定时电路的驱动信号而改变状态,进而通过组合逻辑电路控制交通灯系统正常运行。 在各单元电路的设计顺序上,最先设计基础格雷码顺序的交通灯控制状态图,由此确定时序逻辑电路的设计,并完成该部分电路的调试。接着在设计好时序路逻辑电路的基础上,根据状态输出设计组合逻辑电路,并完成该部分的调试。最后完成定时电路的设计与调试。整合电路,形成整个系统完整的电路,统调测试结果。

微机原理综合实验-交通灯

华北科技学院计算机系综合性实验 实验报告 课程名称微机原理与接口技术 实验学期2011至2012学年第二学期学生所在系部电子信息工程学院 年级09级专业班级自动化B091班学生姓名戴子昱学号15 任课教师王德志 实验成绩 计算机系制

实验报告须知 1、学生上交实验报告时,必须为打印稿(A4纸)。页面空间不够,可以顺延。 2、学生应该填写的内容包括:封面相关栏目、实验地点、时间、目的、设备环境、 内容、结果及分析等。 3、教师应该填写的内容包括:实验成绩、教师评价等。 4、教师根据本课程的《综合性实验指导单》中实验内容的要求,评定学生的综合 性实验成绩;要求在该课程期末考试前将实验报告交给任课教师。综合性实验中,所涉及的程序,文档等在交实验报告前,拷贝给任课教师。任课教师统一刻录成光盘,与该课程的期末考试成绩一同上交到系里存档。 5、未尽事宜,请参考该课程的实验大纲和教学大纲。

《微机原理与接口技术》课程综合性实验报告 开课实验室:接口实验室2012年06月12日 实验题目 交通信号灯的控制 一、实验目的 (1)通过8255并行接口来控制LED发光二极管的亮灭,并精确延时。 (2)实现黄灯闪烁。 (3)通过8255并口控制,人工进行交通灯的转换。 二、设备与环境 PC机(windows XP) 实验箱(TPC-386EM) 8255A、8253 三、实验内容 1需要完成的基本控制要求概览: (1)南北路口的绿灯、东西路口的红灯同时亮5秒。 (2)南北路口的黄灯闪烁若干次,维持3秒,同时东西路口的红灯。 (3)南北路口的红灯、东西路口的绿灯同时亮5秒。 (4)南北路口的红灯、同时东西路口的黄灯亮烁若干次,维持3秒。 (5)转(1)重复。 (6)紧急情况可以手动控制红绿灯的变换。一个开关控制南北绿,东西红,另一个按钮南北红,东西绿。 (7)黄灯闪烁时扬声器发声,提醒。 2交通红绿的设计基本端口规划 8255A口作为灯控制输出,PA0-PA5分别对应东西红黄绿,南北红黄绿,P6与P7口不用;8253B口作为输入,PB0-PB3分别对应启动,停止,东西方向交通管制,南北方向交通管制(高电平有效)。 8253C口最低位作为输入,接入8253通道1的产生的。1s方波上下降沿来定时;8253通道0输入时钟为1Mhz,通道0用来分频,通道1用来产生1s方波,通道2不用。接线图1所示

交通灯控制电路设计与仿真

交通灯控制电路设计与仿真 一、实验目的 1、了解交通灯的燃灭规律。 2、了解交通灯控制器的工作原理。 3、熟悉 VHDL 语言编程,了解实际设计中的优化方案。 二、实验原理 交通灯的显示有很多方式,如十字路口、丁字路口等,而对于同一个路口又有很多不同的显示要求,比如十字路口,车辆如果只要东西和南北方向通行就很简单,而如果车子可以左右转弯的通行就比较复杂,本实验仅针对最简单的南北和东西直行的情况。要完成本实验,首先必须了解交通路灯的燃灭规律。本实验需要用到实验箱上交通灯模块中的发光二极管,即红、黄、绿各三个。依人们的交通常规,“红灯停,绿灯行,黄灯提醒”。其交通的燃灭规律为:初始态是两个路口的红灯全亮,之后,东西路口的绿灯亮,南北路口的红灯亮,东西方向通车,延时一段时间后,东西路口绿灯灭,黄灯开始闪烁。闪烁若干次后,东西路口红灯亮,而同时南北路口的绿灯亮,南北方向开始通车,延时一段时间后,南北路口的绿灯灭,黄灯开始闪烁。闪烁若干次后,再切换到东西路口方向,重复上述过程。 在实验中使用 8 个七段码管中的任意两个数码管显示时间。东西路和南北路的通车时间均设定为 20s。数码管的时间总是显示为 19、18、17……2、1、0、19、18……。在显示时间小于 3 秒的时候,通车方向的黄灯闪烁。 三、实验内容 本实验要完成任务就是设计一个简单的交通灯控制器,交通灯显示用实验箱 的交通灯模块和七段码管中的任意两个来显示。系统时钟选择时钟模块的 1KHz 时钟,黄灯闪烁时钟要求为 2Hz,七段码管的时间显示为 1Hz脉冲,即每 1s 中递 减一次,在显示时间小于 3 秒的时候,通车方向的黄灯以 2Hz 的频率闪烁。系统 中用 S1 按键进行复位。 实验箱中用到的数字时钟模块、按键开关、数码管与 FPGA 的接口电路,以及 数字时钟源、按键开关、数码管与 FPGA 的管脚连接在以前的实验中都做了详细说 明,这里不在赘述。交通灯模块原理与 LED 灯模块的电路原理一致,当有高电平输 入时 LED 灯就会被点亮,反之不亮。只是 LED 发出的光有颜色之分。其与 FPGA 的 管脚连接如下表 19-1 所示: 四、实验步骤 1、打开 QUARTUSII 软件,新建一个工程。 2、建完工程之后,再新建一个 VHDL File,打开 VHDL 编辑器对话框。

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个总线接

交通灯控制器的设计

EDA实验报告 一、课程设计题目及要求 题目: 十字路口交通灯 具体要求: 设计一个十字路口得交通灯控制器,能显示十字路口东西、南北两个方向红、黄、绿灯得指示状态。用两组红、黄、绿三种颜色得灯分别作为东西、南北两个方向红、黄、绿等。变化规律为:东西绿灯亮,南北红灯亮——东西黄灯亮,南北红灯亮——东西红灯亮,南北绿灯亮——东西红灯亮,南北黄灯亮——东西绿灯亮,南北红灯亮······,这样循环下去。南北方向每次通行时间为45秒,东西方向每次通行时间为45秒,要求两条交叉道路上得车辆交替运行,时间可设置修改。绿灯转为红灯时,要求黄灯先亮5秒钟,才能变换运行车道。并要求所有交通灯得状态变化在时钟脉冲上升沿处。 二、实验编程环境 QuartusII 8、0 三、课程设计得详细设计方案 (一)、总体设计方案得描述 1、1、根据交通灯系统设计要求,可以用一个有限状态机来实现这个交通灯控制器。首先根据功能要求,明确两组交通灯得状态,这两组交通灯总共共有四种状态,我们用ST0,ST1,ST2,ST3 来表示: St0表示东西路绿灯亮,南北路红灯亮; St1表示东西路黄灯亮,南北路红灯亮; St2表示东西路红灯亮,南北路绿灯亮; St3表示东西路红灯亮,南北路黄灯亮; 1、2、根据上述四种状态描述列出得状态转换表 1、3、根据状态转换表得到交通灯控制器得状态转移图如图所示。

交通灯控制器得状态转移图 (二)各个模块设计 2、1、控制器模块 控制器模块示意图 其中,clk 为时钟信号,时钟上升沿有效。hold 为紧急制动信号,低电平有效。ared,agreen,ayellow 分别表示东西方向得红灯,黄灯,绿灯显示信号,高电平有效。 bred,bgreen,byellow 分别表示南北方向得红灯,黄灯,绿灯显示信号,高电平有效。 用于控制红绿黄灯得亮暗情况。 2、2、45秒倒计时计数器模块 45秒倒计时计数器模块示意图 其中,CLK 为时钟信号,时钟上升沿有效。EN 为使能端,高电平有效。CR 为紧急制动信号低电平有效。QL{3、、0}就是计数低位。QH{3、、0}就是计数高位。 用于45秒得倒计时计数。 2、3、7位译码器模块 7位译码器模块示意图 其中dat{3、、0}为要译码得信号。a,b,c,d,e,f,g 为译码后得信号。 用于将45秒倒计时计数得信号译码成数码管可以识别得信号。 2、4、50MHZ 分频器模块 50MHZ 分频器模块示意图 其中clk 为50MHZ 时钟信号,时钟上升沿有效。输出clk_out 为1HZ 时钟信号,时钟上升CLK EN CR QL[3、、0] QH[3、、0] OC m45 inst2

微机原理 交通灯

宿迁学院 《微机原理与接口技术》课程设计 题目:交通灯系统设计 学院(系):三系 年级专业: 学号: 学生姓名: 指导教师:张兵

一、设计条件: 1.运用所学的微机原理和接口技术知识; 2.微机原理和接口技术实验室的实验箱设备。 二、设计思路: 该课程设计采用8255A和8253进行控制,对两个方向车辆的通行时间分别计时,可随意进行更改双向的通行时间。具体要求如下: 1.东西方向车辆放行15秒钟。即东西方向绿灯和南北方向的红灯同时 点亮15秒; 2.15秒后,东西方向的黄灯闪烁3秒钟,以警示车辆将切换红绿灯。 此时南北方向仍维持红灯点亮。 3.东西方向的黄闪烁3秒钟后,转为南北方向放行15秒钟。即东西方 向的红灯和南北方向的绿灯同时点亮15秒钟; 4.南北方向放行15秒钟后,转为南北方向的黄灯闪烁3秒钟,以警示 将切换红绿灯。此时东西方向仍维持红灯点亮。 5.南北方向的黄灯闪烁3秒钟后转为东西方向放行15秒。如此循环重 复。 6.严格按照课程设计说明书要求撰写课程设计说明书。 三、时间安排: 指导教师签名:年月日

目录 摘要........................................ 错误!未定义书签。 第一部分概论............................... 错误!未定义书签。1.1课题:交通灯设计........................ 错误!未定义书签。1.2课题介绍................................ 错误!未定义书签。1.3实验目的................................ 错误!未定义书签。1.4实验内容................................ 错误!未定义书签。1.5交通信号灯实时控制和管理的总体设计.. (2) 第二部分硬件设计........................... 错误!未定义书签。2.1硬件原理及线路示意图.................... 错误!未定义书签。2.2硬件连接图:............................ 错误!未定义书签。 第三部分软件设计........................... 错误!未定义书签。3.1流程如下................................ 错误!未定义书签。3.2实验环境及条件.......................... 错误!未定义书签。3.3程序清单. (6) 3.4 分工详情 (7) 第四部分调试记录及结果分析 (7) 4.1调试记录 (7) 4.2结果分析 (8) 第五部分芯片资料 (8) 5.1 8255的内部结构 (8) 5.1.1 口电路 (9) 5.1.2总线接口电路 (9) 5.2 8255A的工作方式 (10) 5.2.1方式0 基本输入/输出方式 (10) 5.2.2 方式1 选通输入/输出方式.......... 错误!未定义书签。 5.2.3 方式2 双向数据传送方式........... 错误!未定义书签。5.3 8253定时计数器......................... 错误!未定义书签。 5.3.1控制字寄存器...................... 错误!未定义书签。 5.3.2 8253有6种工作方式,由方式控制字确定错误!未定义书签。第六部分总结 (13) 第七部分参考资料 (13)

模拟交通灯控制实验

实验报告 课程名称:微机原理与接口技术 指导老师:彭勇刚 成绩:__________________ 实验名称:_______________________________实验类型:________________同组学生姓名:__________ 一、实验目的和要求(必填) 二、实验内容和原理(必填) 三、主要仪器设备(必填) 四、操作方法和实验步骤 五、实验数据记录和处理 六、实验结果与分析(必填) 七、讨论、心得 模拟交通灯控制实验 一、实验目的 1、了解时间常数的计算方法。 2、了解80C51中断的工作机理、过程,掌握中断服务程序的编制。 3、掌握80C51单片机内部定时/计数器的工作方式选择,初始化程序的设置以及中断服务子程序的设计。 二.实验内容和实验原理 编写模拟交通灯运行控制程序。要求红绿灯亮灯延时时间为30秒,黄灯亮灯延时时间为10秒。利用二位八段LED 显示器进行时间显示。时间显示采用倒计时的方式。时间归零时信号进行切换。 实验线路图如下图:装 订 线

除红绿黄六路交通灯外,还需要用到两个八段LED显示器,用于显示交通灯时间显示,显示码采用串行口模式0进行输出 三.实验器材: 1. Micetek仿真器一台 2. 实验板一块 四.程序及实验结果: 调试通过的.LST文件如下: ORG 0000H 0000 0130 AJMP MAIN ORG 000BH ;定时器T0的中断矢量 000B 21A3 AJMP T0INT ;跳转到中断服务程序 ORG 0030H MAIN: 0030 758901 MOV TMOD,#01H ;写控制字,T0为方式1; 0033 759800 MOV SCON,#00H 0036 758160 MOV SP,#60H ;设堆栈指针SP为60H 0039 D28C SETB TR0 ;启动T0; 003B D2B9 SETB PT0 ;T0中断为高优先级 003D D2A9 SETB ET0 ;允许T0中断 003F D2AF SETB EA ;开放CPU中断 0041 758AB0 MOV TL0,#0B0H ;定时常数为100ms 0044 758C3C MOV TH0,#3CH ORG 0100H RED: ;红灯 0100 D280 SETB P0.0 ;设置输出的初始状态 0102 C281 CLR P0.1 0104 C282 CLR P0.2 0106 C283 CLR P0.3 0108 C284 CLR P0.4 010A D285 SETB P0.5 010C 781E MOV R0,#30 ;红灯亮30s 010E 790A MOV R1,#10 ;黄灯亮10s 0110 E8 LOOP1:MOV A,R0 0111 120166 LCALL SHOW ;转移到数码显示子程序 0114 3000FD WAIT1:JNB 20H.0,WAIT1 ;数码管计数间隔为1s 0117 C200 CLR 20H.0 0119 D9F9 DJNZ R1,WAIT1 011B 790A MOV R1,#10 011D 18 DEC R0 ;红灯从30s开始倒计时 011E B800EF CJNE R0,#00H,LOOP1

相关文档
相关文档 最新文档