-
交通信号灯电路图
2015-05-04 22:27:32交通信号灯控制系统 protues文件 电路图 -
交通信号控制灯仿真电路图
2010-08-30 16:15:34交通信号灯是交通信号中的重要组成部分,是道路交通的基本语言。交通信号灯由红灯(表示禁止通行)、绿灯(表示允许通行)、黄灯(表示警示)组成。分为:机动车信号灯、非机动车信号灯、人行横道信号灯、车道信号灯... -
单片机交通灯的电路图以及代码_学习电路仿真:基于proteus电路仿真软件的交通灯控制电路设计...
2020-12-14 05:41:09本文对于电路仿真软件的介绍,为基于proteus的交通灯控制电路设计,一起来了解下吧。城市道路错综复杂,相互交错,交通灯是城市交通的重要指挥系统。交通信号灯作为管制交通流量、提高道路通行能力的有效手段,对...电路仿真软件是当代重要软件之一,缺乏电路仿真软件,模拟运行环境将无法搭建。对于电路仿真软件,虽然市面上类别众多,但知名电路仿真软件为proteus。本文对于电路仿真软件的介绍,为基于proteus的交通灯控制电路设计,一起来了解下吧。
城市道路错综复杂,相互交错,交通灯是城市交通的重要指挥系统。交通信号灯作为管制交通流量、提高道路通行能力的有效手段,对减少交通事故有明显效果。但是车流量是随时变化的,而传统的交通灯模式采用的是定时控制,反而容易造成交通堵塞。因此设计一种基于Proteus与单片机的交通灯控制系统的设计与仿真,对减少交通事故,缓解交通阻塞,提高畅通率具有很重要的现实意义.
1、系统设计方案
东西、南北两干道交于一个十字路口,各干道有一组交通指示灯,每一个状态方向上均有一组红、绿灯,即一组交通指示灯都有左转、直行、右转3组红、绿灯和一个黄灯,指示车辆和行人安全通行.红灯点亮禁止通行,绿灯点亮允许通行.黄灯闪烁提示人们注意交通灯状态即将切换.
1.1、系统硬件电路的设计
利用单片机设计应用系统应考虑在满足设计要求的前提下,硬件电路要尽可能地简单,最大限度地用程序设计完成系统的各项功能.因此本文以STC89C52单片机为控制核心,设计交通灯的控制系统.在该系统中STC89C52和外围电路的各个模块进行信息交流并且进行相应的控制,系统组成框图如图1所示.
图1 交通灯系统组成框图
该系统由时钟电路、复位电路、控制系统电路、LED交通灯显示电路、七段数码管显示时间电路、自动和手动按键控制电路等组成.主控制器采用STC89C52单片机.P1口设置红、绿灯点亮和黄灯闪烁的功能,P0、P2口来显示时间,P3口设置系统工作模式.用发光二极管实现交通灯的红绿黄灯,时间的显示则采用七段数码管实现.
1.2、系统软件电路的设计
1)LED交通灯显示模块
89C52单片机P1口对LED交通灯进行控制,在不同的状态时控制相应的LED交通灯状态.
2)数码管显示模块
89C52单片机P0口进行时间倒计时段选,P2.0~P2.3端口进行数码管时间显示位选,用T2中断定时每2ms对七段数码管刷新一次.
3)键盘控制模块
89C52单片机P3.0~P3.3口与P3.6口外部键盘控制交通灯自动和手动状态及手动控制时的不同状态进行实时扫描,进入相应的运行状态.
2、系统工作模式
2.1、自动控制模式
本系统启动为自动控制模式.最初为南北直行方向导通即直行为绿灯,其余为红灯,并且数码管从15s开始倒计时,当倒计时至8s时黄灯开始闪烁(1s完成闪烁一次),闪烁3s后,即倒计时至5s时,南北方向左转和右转变为绿灯,直行为红灯;当倒计时至0s时,路口进入禁行等待状态,即绿灯全部熄灭红灯点亮,并且数码管从3s开始倒计时,同时黄灯开始闪烁3s;当倒计时再次为0s,黄灯闪烁完毕后,南北方向数码管从18s开始倒计时,同时东西直行方向导通即为绿灯,其余为红灯,并且数码管从15s开始倒计时,当倒计时至8s时黄灯开始闪烁(1s完成闪烁一次),闪烁3s后,即倒计时至5s时,东西方向左转和右转变为绿灯,直行为红灯;当倒计时至0s时,路口进入禁行等待状态,即绿灯全部熄灭红灯点亮,并且数码管从3s开始倒计时,同时黄灯开始闪烁3s;当倒计时再次为0s,黄灯闪烁完毕后,东西方向数码管从18s开始倒计时,同时南北直行方向导通即为绿灯,其余为红灯,并且数码管从15s开始倒计时,以此方式循环.
2.2、手动控制模式
1)当系统工作在自动模式时,如果按下当前正在导通状态的手动控制按键时,系统直接进入该导通状态,并且南北和东西方向的数码管均显示99;如果按下不是当前正在导通状态的手动控制按键时,系统将对当前正在导通的状态进行3s的黄灯闪烁倒计时状态,当倒计时结束后,系统将进入所按下的键的导通状态,同时南北和东西方向的数码管均显示99;此时再按下其余的手动控制按键时,系统将进入所按下的键的导通状态.
2)当系统工作在手动模式时,如果按下自动控制按键时,系统将对当前正在导通的状态进行3s的黄灯闪烁倒计时状态,当倒计时结束后,系统将进入最初的自动控制模式.
3)当系统工作时,如果系统处在南北直行方向导通时,此时南北方向的人行横道导通,人们可以通过人行横道穿越东西方向的人行横道;同理如果系统处在东西直行方向导通时,此时东西方向的人行横道导通,人们可以通过人行横道穿越南北方向的人行横道.
3、Proteus仿真设计
通过Proteus软件对系统硬件设计和软件设计结合仿真,程序代码通过Keil编辑、编译后生成HEX文件,然后通过点击单片机加载程序,实现硬件与程序的结合仿真.系统仿真结果如图2所示.
图2 基于Proteus和Keil的仿真结果
本文设计的交通灯控制系统以单片机STC89S52为主控制器,利用Proteus软件绘制硬件电路,利用Keil进行编程,然后进行整合仿真,实现了预定的功能.本系统分别在每一路,即南北和东西方向分别设有三路交通信号灯进行控制,即左转红绿灯、直行红绿灯、右行红绿灯,每个方向的三路交通灯同时运行.除此之外,本系统还设置了自动和手动两种模式可供选择,一般情况下,本系统在自动状态下运行,如果在交通运行高峰时,交警就会进行疏导,在此时,交警可以将本系统切换到手动模式,对交通进行疏导,特别适合在炎热和阴雨等不好的天气状况.本系统实用性较强、操作相对简单、扩展功能较强并且成本较低、功耗小,具有非常广泛的应用前景。
-
交通信号灯控制器
2012-01-12 10:11:08交通信号灯控制器 传的是一个文件夹 内含电路图以及设计报告等 电路图是用老师要求的用multisim2001做的 华北电力大学电子技术课程设计用 有兴趣可以参考一下 -
基于单片机的交通灯信号控制器设计(含源程序和电路图)
2020-08-07 05:10:41本文给读者提供了基于单片机的交通灯信号控制器设计方案,给出了源程序供读者设计参考。 -
PLC交通信号灯控制程序.docx
2020-04-22 17:45:15在如今这个经济飞速发展的世界,交通已...西门子可编程控制器指令丰富,可以接各种输出、输入扩充设备,有丰富的特殊扩展设备,其中的模拟输入设备和通信设备更是符合交通灯控制系统的要求与特点,能够方便地联网通信。 -
交通控制信号电路图用途广泛
2009-06-16 19:49:24交通信号灯控制器 在十字路口东西南北各设置红、黄、绿三种信号灯,如图1所示。正常情况下,东西、南北方向轮流放行。当东西方向(A线)放行、南北方向(B线)禁行时,东西方向(A线)绿灯亮25秒,然后黄灯亮5秒,南北方向... -
multisim红绿灯元器件在哪里_Multisim交通灯仿真电路图
2020-12-31 08:46:222018-12-20 11:48 上传点击文件名下载附件设计任务设计一个有一条主干道和一条支干道汇合形成的十字交叉路口的交通信号灯控制电路。 基本要求:1、通行,在交叉路口的每个入口处设置了红、绿、黄三色信号灯。红灯...2018-12-20 11:48 上传
点击文件名下载附件
设计任务
设计一个有一条主干道和一条支干道汇合形成的十字交叉路口的交通信号灯控制电路。 基本要求:
1、通行,在交叉路口的每个入口处设置了红、绿、黄三色信号灯。红灯亮禁止通行;绿灯亮允许通行;黄灯亮提醒司机将行使中的车辆靠在禁行线之外。
2、主、支干道交替通行,主干道每次放行60s,支干道每次放行50s,在每次有亮绿灯变成红灯的转换过程中,要求亮5s的黄灯作为过渡。
3、 十字路口要有数字显示,作为时间提示,以便人们更直观地把握时间。具体要求主、支干道通行时间及黄灯的时间均以秒作为单位,采用倒计时的方式显示。
4、 画出电路原理图。
5、 进行电路的仿真与调试。设计目的
1、巩固加深对电子线路的基本知识,提高综合运用专业知识的能力;
2、培养学生查阅参考文献,独立思考、设计、钻研专业知识相关问题的能力;
3、通过实际制作安装电子线路,学会单元电路以及整机电路的调试与分析方法;
4、掌握相关电子线路工程技术规范以及常规电子元器件的性能技术指标;
5、了解电气图国家标准以及电气制图国家标准,并利用电子multisim正确绘制电路图;
6、培养严肃认真的工作作风与科学态度,建立严谨的工程技术观念;
7、培养工程实践能力、创新能力和综合设计能力。倒计数电路设计
根据主干道与支干道红绿灯交替状况可知:当主干道绿灯亮60s开始计时,支干道亮红灯,当到第0s时,主干道黄灯亮;倒计时5秒,只干道亦亮红灯,再主干道为红灯,此时从50s开始计时,支干道绿灯亮。当倒计时末第0秒时,只干道亮黄灯5秒。如此循环往复,整个倒计时器完成。
由此可知,倒计数器的时钟脉冲应为秒脉冲,控制倒计数器开始工作和停止工作的都是主控制器。由于是由灯亮控制相应倒计时器,根据百度所查加减计数器元件中我们可以用74LS190、74LS191、74LS193、CD4518等集成元件实现倒计数的设计,亦可利用所学74LS161外加非门做成十进制减计数器,而由74LS190N是十进制可逆计数器,考虑到元件连接的简单性,我采用74LS190设计倒计数器。控制电路与显示电路模块仿真
主干道黄灯倒计时模块仿真如图
主干道红灯倒计时模块仿真如图
主干道绿灯倒计时模块仿真如图
系统总述系统由三大部分组成分别为:主控制器、倒计数器、显示管译码器。整个系统内含有一个开关控制总体电路的工作,开关闭合后输入信号通过脉冲发生器变成秒脉冲,然后秒脉冲输入到倒计数器,变成周期为5秒的脉冲,并且每个周期里只有一个下降沿和一个上升沿,使主控制器工作以便控制指示灯的工作和显示管译码器的工作。接入倒计时器的秒脉冲起到计时的作用,每次来一个脉冲倒计时器就变化一下(即为递减一次)耗时一秒。然后把倒计时的信号通过显示管译码器译码输入到显示管内显现出来,以通知路人红灯离转换到绿灯还需要多长时间。在交通灯的变换过程中,绿灯变成红灯时中间有个过渡时期即绿灯停止计时后黄灯亮五秒秒钟后红灯才亮,中间穿插黄灯这个时间内是为了提醒路人过斑马线的赶快走过十字路口,没有过斑马线的就在斑马线前停一会,等下次绿灯亮时再过十字路口。
交通灯是城市交通监管系统的重要组成部分,对于保证机动车辆的安全运行,维持城市道路的顺畅起到了重要的作用。随着车辆的日益增多,交通问题将日趋严重。可通过多修建道路或 车辆的办法来解决,但道路的增加是有限的,而限制撤了会使汽车及其相关产业受到压制。目前,发达国家的交通主要是向智能化交通方向发展。交通灯是管理城市交通的重要工具,交通灯对道路交通流的影响近年来引起广大学者的广泛注意。目前绝大部分交通灯其时间都是设定好的,不管是车流高峰还是低谷,红绿灯的时间都固定不变,还有一些交通灯能根据简单划分的时间段来调整时间,但控制起来都不是很灵活,这使得城市车流的调节不能达到最优。
本论文在电子线路仿真的基础上,结合实际,采用模拟逻辑的测试方法,对整个道路的交通现状进行简单的统计。经过模拟仿真得出整个系统的都可以实现预定的功能,具有一定的实用性。
-
数电设计 交通灯控制逻辑电路设计---proteus
2020-07-01 09:19:37设计一个十字路口交通信号灯控制器,其要求如下: 1.满足如图4.1顺序工作流程。 图中设南北方向的红、黄、绿灯分别为NSR、NSY、NSG,东西方向的红、 黄、绿灯分别为EWR、EWY、EWG。 它们的工作方式,有些必须是并行... -
北京大学 数字电路课程设计之 交通控制灯的设计
2018-08-06 10:20:19设计一个十字路口的红、绿、黄三色信号交通灯控制电路。 设计要求: 1). 用红、绿、黄三色发光二极管作信号灯。主干道为东西向,有红、绿、黄三个灯;支干道为南北向,也有红、绿、黄三个灯。红灯亮禁止通行;绿灯... -
三态门有一个信号控制端en_模拟十字路口交通灯控制
2021-01-03 23:26:50一、设计内容 利用8253定时器、8255等接口,设计一电路,模拟十字路口交通灯控制。二、设计原理及方案2.1 8255A的内部结构及引脚功能8255A的内部结构8255A的内部结构如图1所示,它由...一、设计内容
利用8253定时器、8255等接口,设计一电路,模拟十字路口交通灯控制。
二、设计原理及方案
2.1 8255A的内部结构及引脚功能
8255A的内部结构
8255A的内部结构如图1所示,它由数据总线缓冲器,数据端口A、端口B和端口C,A组和B组控制电路和读/写控制逻辑4部分组成。
(1)数据总线缓冲器
数据总线缓冲器是一个双向三态的8位数据缓冲器,8255A通过它与系统总线相连。输入数据、输出数据、CPU发给8255A的控制字和从8255A传入的状态信息都经过这个缓冲器缓存。
(2)数据端口
端口A对应一个8位数据输入锁存器和一个8位数据输出锁存器/缓冲器。用端口A作为输入或输出端口时,数据均受到锁存。端口B和端口C均对应一个8位输入缓冲器和一个8位数据输出锁存器/缓冲器。用端口B和端口C作为输入端口时,数据不被锁存,而作为输出端口时,数据被锁存。
(3)A组和B组控制电路
8255A把3个I/O端口分为两组:A组和B组,分别进行控制。A组控制电路控制端口A和端口C的高4位的工作方式和读/写操作,B组控制电路控制端口B和端口C的低4位的工作方式和读/写操作。这两组控制电路一方面接收CPU发来的控制字并决定8255A的工作方式;另一方面接收来自读/写控制逻辑电路的读/写命令,完成接口的读/写操作。
(4)读/写控制逻辑
读/写控制逻辑负责管理8255A的数据传输过程。它将读信号、写信号、片选信号、端口选择信号A1和A0等信号进行组合后,获得对A组部件和B组部件的控制命令,并将命令发给这两个部件,以完成对数据信息、状态信息和控制信息的传输。
图1 8255A内部结构
8255A的引脚功能
8255A采用双列直插式封装,有40个引脚,引脚排列如图2所示。
8255A有A、B、C三个独立的数据端口,可以通过编程来设置其工作方式;有一个控制端口,通过控制端口可以设置8255A 数据端口的工作方式。
PA7~PA0:是三态数据引脚,对应于端口A,可通过编程设定8位全部作为输入或全部作为输出。
PB7~PB0:是三态数据引脚,对应于端口B,可通过编程设定8位全部作为输入或全部作为输出。
PC7~PC0:是三态数据引脚,对应于端口C,通过编程可设定8位全部作为输入或全部作为输出。端口C也可分成两组分,高4位PC7~PC4一组和低4位PC3~PC0一组,可以分别设定端口C的高4位和低4位作为输入或输出,也可以对端口C的每一位PC7~PC0分别设定为输入或输出。
A1、A0:是8255A内部端口地址的选择信号,用来寻址8255A内部的3个数据端口和1个控制端口。当A1A0=00时,选择端口A(可读/写);当A1A0=01时,选择数据端口B(可读/写);当A1A0=10时,选择数据端口C(可读/写);当A1A0=11时,选择控制端口(只可写)。
2.2、8255A的工作方式
8255A的3个端口的工作方式不完全相同。端口A可工作于方式0、方式1和方式2三种工作方式;端口B可工作于方式0和方式1两种工作方式;端口C只能工作于方式0。下面分别介绍方式0、方式1、方式2三种工作方式。
1、方式0
8255A方式0是基本输入/输出方式。在方式0下,每一个端口都可作为基本的输入或输出口,端口C的高4位和低4位以及端口A、端口B都可独立地设置为输入口或输出口。CPU可采用无条件传输方式与8255A交换数据。当外设传送数据需要联络信号时,也可采用查询方式与8255A交换数据。采用查询方式时,通常可利用端口C作为与外设的联络信号。利用8255A的方式0进行数据传输时,由于没有指定专门的应答信号,所以这种方式常用于与简单外设之间的数据传送,如向LED显示器输出数据或从开关装置输入数据等。
2、方式1
8255A方式1是单向选通输入/输出方式。只有端口A和端口B可以工作在方式1。8255A在工作方式1时,把3个数据端口分为A、B两组,分别称为A组控制和B组控制。此时,端口A和端口B仍作为数据的输入或输出口,而端口C作为联络控制信号,被分成两部分,一部分作为端口A和端口B的联络信号,另一部分仍可作为基本的输入/输出口。
3、方式2
8255A方式2是双向选通输入/输出方式,只有端口A可以工作于方式2。8255A端口A的方式2可使8255A与外设进行双向通信(既能发送数据,又能接收数据),可采用查询方式或中断方式进行传输。
当端口A工作于方式2、端口B工作于方式1时,端口C各位的功能如图7所示,PC7~PC3作为端口A的联络口信号,PC2~PC0作为端口B的联络信号。当端口A工作于方式2,端口B工作于方式0时,PC7~PC3作为端口A的联络信号,PC2~PC0可工作于方式0。
INTEA1与INTEA2分别为输出和输入中断允许,INTEA1由PC6置位/复位;INTEA2由PC4置位/复位。联络信号和IBFA的含义与方式1输入和输出时相同。INTRA既用于输出中断请求,也用于输入中断请求。联络信号线的时序是方式1下输入和输出时序的组合。
8255A的编程
8255A的控制字
(1)方式选择控制字
这是一个8位的控制字,8255A内部的3个端口分为A、B两组,因此方式选择控制字也就相应地分成两个部分,分别控制A组和B组。
2.3、8253的内部结构及引脚功能
每片8253定时/计数器有3个独立的16位计数通道,每个计数通道最高计数速率可达2.6MHz。每个计数器可编程设定6种工作方式,使用时可以根据需要选择其中的一种工作方式。每个计数通道可按二进制或十进制来计数。定时和计数在工作原理上是相同的,都是对一个输入脉冲进行计数。如果输入脉冲的频率一定,那么记录脉冲的个数与所需的时间是一一对应的关系。例如,当输入脉冲频率为2MHz,计数值是2´106时,可定时1s。
8253的内部结构
8253的内部结构如图10所示,各部分功能介绍如下。
(1)数据总线缓冲器
数据总线缓冲器是一个8位的双向三态缓冲器,主要用于8253与CPU之间进行数据传送,缓存3类数据:向8253写入的控制字;向计数器设置的计数初值和从计数器读取的计数值。
(2)读/写控制逻辑
输入到8253的读信号、写信号、片选信号、端口选择信号A1和A0,经过逻辑控制电路的组合后产生相应的操作控制信号,如表2所示。
(3)控制字寄存器
该寄存器接收CPU发来的8253初始化控制字。对控制字寄存器只能写入,不能读出。
(4)计数器
8253内部有3个独立的计数器。每个计数器内部都包含1个16位计数初值寄存器、1个16位减1计数寄存器和1个16位当前计数输出寄存器。当前计数输出寄存器值跟随减1计数寄存器内容变化。收到锁存命令后,当前计数输出寄存器将锁定当前计数值,直到其值被CPU读走之后,才又随减1计数寄存器的变化而变化。
当A1A0分别为00、01、10和11时,分别选中3个计数器和控制字寄存器。在8086微型计算机系统中,通常将8253的8位数据线与8086的低8位相连,即使用偶地址,在这种情况下,8086的A2A1分别与8253的A1A0相连。
8253的引脚功能
8253采用双列直插式封装,有24个引脚,如图11所示。
A0、A1和:8253具有3个独立的计数器,每一个计数器可单独编程使用。每个计数器可将输入频率减小(1~65536)倍(即分频)后输出。8253共有4个端口地址,其控制寄存器和3个计数器分别有各自的端口地址,由A0、A1控制,如表3所示。
CLK:CLK是输入时钟信号。3个计数器各自有一个独立的时钟输入信号,分别为:CLK0、CLK1和CLK2。8253工作时,每收到一个时钟信号CLK,计数值就减1。
OUT:OUT是输出信号。3个计数器各自有一个独立的计数器输出信号,分别为:OUT0、OUT1和OUT2。当计数值减为0时,OUT线上将输出OUT信号。OUT信号可以是方波或脉冲等,用来指示定时或计数已到。
GATE:GATE是输入信号,是用于禁止、允许或开始计数过程的门控信号。3个计数器各自有一个独立的门控信号,分别为:GATE0、GATE1和GATE2。在8253不同的工作方式下,GATE信号的控制作用不同。
D7~D0:8253的数据总线D7~D0是三态输入/输出线,直接与系统的数据总线D7~D0相连接,用于传送数据、命令和状态信息。
2.4、8253的工作方式
8253的每个计数器都有6种工作方式:方式0~方式5。这6种工作方式的不同点是:输出波形不同;启动计数器的触发方式不同;计数过程中GATE信号对计数过程的影响不同。
1、方式0——低电平输出
采用这种工作方式,8253可完成计数功能,且计数器只计一遍。当控制字写入后,输出端OUT变为低电平。在计数初值写入后下一个CLK脉冲的下降沿,计数初值寄存器内容装入减1计数寄存器,计数器开始计数。在计数期间,当计数器减为0之前,输出端OUT维持低电平。当计数值减到0时,OUT输出端变为高电平,此信号可作为中断请求信号,并可保持到重新写入新的控制字或新的计数值为止。8253方式0的时序波形如图12所示。
在计数过程中,若GATE信号变为低电平,则在GATE信号为低电平期间,暂停计数,减1计数寄存器值保持不变;若GATE信号重新变高,则计数器从暂停值开始继续计数;若重新写入新的计数初值,则在下一个CLK脉冲的下降沿,减1计数寄存器以新的计数初值重新开始计数。
2、方式1——低电平输出
方式1是硬件触发单稳态方式,采用这种工作方式可在输出端OUT输出单个负脉冲信号,脉冲的宽度可通过编程来设定。写入控制字后,输出端OUT变为高电平,并保持高电平状态。然后在写入计数初值后,只有在GATE信号的上升沿之后的下一个CLK脉冲的下降沿,才将计数初值寄存器内容装入减1计数寄存器,同时OUT端变为低电平,然后计数器开始减1计数。当计数值减到0时,输出端OUT变为高电平。8253方式1的时序波形如图13所示。
如果在输出端OUT输出低电平期间,又来一个GATE信号上升沿触发,则在下一个CLK脉冲的下降沿,将计数初值寄存器内容重新装入减1计数寄存器,并开始计数,输出端OUT保持低电平。直至计数值减到0时,输出端OUT才变为高电平。
在计数过程中,如果CPU又送来新的计数初值,将不影响当前计数过程。要等到计数器计数到0,OUT端输出高电平且出现新的一次GATE信号的触发时,才会将新的计数初值装入,并以新的计数初值开始计数过程。
3、方式2——周期性负脉冲输出
采用方式2可产生连续的负脉冲信号,可用作频率发生器。负脉冲的宽度为一个时钟周期。写入控制字后,输出端OUT变为高电平。若GATE为高电平,那么写入计数初值后,在下一个CLK的下降沿计数初值寄存器内容装入减1计数寄存器,开始减1计数。当减1计数寄存器的值为1时,OUT端输出低电平,经过一个CLK时钟周期,OUT端输出高电平,并自动开始一个新的计数过程。8253方式2的时序波形如图14所示。
在计数过程中,如果减1计数寄存器未减到1时GATE信号由高变低,则停止计数。但当GATE由低变高时,则重新将计数初值寄存器内容装入减1计数寄存器,并重新开始计数。
如果GATE信号保持高电平时,在计数过程中重新写入计数初值时,要等正在计数的一轮结束并输出一个CLK周期的负脉冲后,才以新的初值进行计数。
2. 方式3——周期性方波输出
采用方式3可产生连续的方波信号,可用作方波发生器采用方式3。当控制字写入后,输出端OUT输出高电平。当写入计数初值后,在下一个CLK的下降沿,计数初值寄存器内容装入减1计数寄存器,开始减1计数。当计数到计数值的一半时,输出端OUT变为低电平。此时,减1计数寄存器继续减1计数,计数到0时,OUT端变为高电平。之后,自动开始一个新的计数过程。当计数初值为偶数时,输出端OUT输出对称方波;当计数初值为奇数时,输出端OUT输出不对称方波。8253方式3的时序波形如图15所示。
在计数过程中,若GATE变为低电平,则停止计数;当GATE由低变高时,则重新启动计数过程。如果在输出端OUT为低电平时,GATE变为低电平,则减1计数器停止,同时,输出端OUT立即变为高电平。在GATE又变成高电平后的下一个时钟脉冲的下降沿,减1计数器重新得到计数初值,开始新的减1计数。
在计数过程中,如果写入新的计数值,那么,将不影响当前输出周期。但是,如果在写入新的计数值后,又受到GATE信号上升沿的触发,那么,就会结束当前输出周期,而在下一个时钟脉冲的下降沿,减1计数器重新得到计数初值,开始新的减1计数过程。
5、方式4的功能——软件触发的单次负脉冲输出
方式4是软件触发的选通方式。采用方式4可产生单个负脉冲信号,负脉冲宽度为一个时钟周期。写入控制字后,输出端OUT变为高电平,若GATE为高电平,则在写入计数初值后下一个CLK的下降沿计数初值寄存器内容装入减1计数寄存器,开始减1计数。当减1计数寄存器的值为0时,输出端OUT变为低电平,经过一个CLK时钟周期,输出端OUT变为高电平。8253方式4的时序波形如图16所示。
如果在计数时,又写入新的计数值,则在下一个CLK的下降沿此计数初值被写入减1计数寄存器,并以新的计数值作减1计数。
6、方式5——硬件触发的单次负脉冲输出
方式5是硬软件触发的选通方式。采用方式5可产生单个负脉冲信号,负脉冲宽度为一个时钟周期。方式5的计数过程由GATE的上升沿触发。当控制字写入后,输出端OUT输出高电平,并保持高电平状态。写入计数初值后,只有在GATE信号的上升沿之后的下一个CLK脉冲的下降沿,计数初值寄存器内容才装入减1计数寄存器,并开始减1计数。当计数值减到0时,输出端OUT变为低电平,并持续一个CLK周期,然后自动变为高电平。8253方式5下的时序波形如图17所示。
在计数过程中,若GATE端又来一个上升沿触发,则在下一个CLK脉冲的下降沿,减1计数寄存器将重新获得计数初值,并按新的初值作减1计数,直至减为0为止。
在计数过程中,若写入新的计数值,但没有触发脉冲,则当前输出周期不受影响。当前周期结束后,在再次触发的情况下,才将按新的计数初值开始计数。
在计数过程中,若写入新的计数值,并在当前周期结束前又受到触发,则在下一个CLK脉冲的下降沿,减1计数寄存器将获得新的计数初值,并按此值作减1计数操作。
8253的初始化
8253具有3个独立的计数器,每一个计数器必须单独编程进行初始化后才可使用。为了使计数器按某一工作方式工作,首先必须设定计数器的工作方式,即将初始化控制字写入8253控制寄存器,对8253进行初始化。
1、8253方式控制字
8253的3个独立计数器可单独使用,每个计数器在使用前要通过把控制字写入控制寄存器的方法设定其工作方式。8253控制字是一个8位的数据,将这1字节的控制字写到8253控制寄存器,就可以设定8253计数器的工作方式。8253控制字格式分4个部分,如图18所示。
· SC1SC0
SC1SC0对应D7D6两位,用于选择计数器。
· RL1RL0
RL1RL0对应D5D4两位,用于控制读/写操作的方式。
M2M1M0
M2M1M0对应D3D2D1三位,用于设置计数器的工作方式。
· BCD
BCD对应D0位,用于选择计数码制。当D0=0时,选择二进制计数,计数值范围是:0000H~FFFFH。最大计数初值是0000H,表示最大计数次数是65536次。当D0=1时,选择BCD码计数,计数值范围是:0000~9999。最大计数初值是0000,表示最大计数次数是10000次。
特别需要注意的是:8253控制字必须写到控制端口。8253端口地址由芯片引脚A1A0来决定,A1A0=00是计数器0的端口地址;A1A0=01是计数器1的端口地址;A1A0=10是计数器2的端口地址;A1A0=11是控制端口的地址。
2、8253初始化编程
(1)8253初始化编程原则
8253的控制寄存器和3个计数器分别具有独立的编程地址,由控制字的内容确定使用的是哪个计数器以及执行什么操作。因此8253在初始化编程时,并没有严格的顺序规定,但在编程时,必须遵守两条原则:
① 在对某个计数器设置初值之前,必须先写入控制字;
② 在设置计数初始值时,要符合控制字的规定,即只写低位字节,还是只写高位字节,还是高、低位字节都写(分两次写,先低字节后高字节)。
(2)8253的编程命令
8253的编程命令有两类:一类是写入命令,包括设置控制字、设置计数器的初始值命令和锁存命令;另一类是读出命令,用来读取计数器的当前值。
锁存命令是配合读出命令使用的。在读计数值前,必须先用锁存命令锁定当前计数寄存器的值。否则,在读数时,减1计数寄存器的值处在动态变化过程中,当前计数输出寄存器随之变化,就会得到一个不确定的结果。当CPU将此锁定值读走之后,锁存功能自动失锁,于是当前计数输出寄存器的内容又跟随减1计数寄存器变化。在锁存和读出计数值的过程中,减1计数寄存器仍在作正常减1计数。这种机制就保证了既能在计数过程中读取计数值,又不影响计数过程的进行。
(3)8253的初始化编程
所谓8253初始化编程,就是用户在使用8253前,用软件编程来定义端口的工作方式,选择所需要的功能。下面举例说明8253初始化编程。8253初始化编程步骤是:先写控制字到8253的控制端口,再写计数器初值到相应的计数器端口。
在本次设计中将计数器0设置为方式2(方式控制字为14H),计数初值设置为30,计数器1设置为方式2,设计初值为20(方式控制字为54H),计数器2设置为方式0,(方式控制字为90H)。
-
基于51单片机的十字路口交通红绿灯控制系统仿真原理图方案设计
2020-07-20 14:34:24单片机本身就是一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格地工作。其电路如图3.4所示: 图3.4 时钟电路模块 3.2.2复位电路模块 电容在上接高电平,电阻在下接地,中间...硬件设计系统
(末尾附文件)
原理图:
仿真图
时钟电路模块
时钟电路模块
时钟电路由一个晶体振荡器12MHZ和两个30pF的瓷片电容组成。时钟电路用于产生单片机工作所需的时钟信号,而时序所研究的是指令执行中各信号之间的相互关系。单片机本身就是一个复杂的同步时序电路,为了保证同步工作方式的实现,电路应在唯一的时钟信号控制下严格地工作。其电路如图3.4所示:
图3.4 时钟电路模块
3.2.2复位电路模块
电容在上接高电平,电阻在下接地,中间为RST。这种复位电路为高电平复位。其工作原理是:通电时,电容两端相当于是短路,于是RST引脚上为高电平,然后电源通过电阻对电容充电,RST端电压慢慢下降,降到一定程度,即为低电平,单片机开始正常工作。其电路如图3.5所示:
图3.5 复位电路模块道口交通灯指示采用红、黄、绿发光二极管进行提示。其图如图3.7所示:
当R=1000欧时,按公式A=(5-1.8)/R计算,电路中的电流大小应为A=3.2mA。由于每个路口的通行双向指示处理相同,因此每个端口应具有6.4mA的吸收电流能力。时间显示电路模块
考虑设计需要,我们在各个方向分别用二位数码管用来显示倒计时时间,构成交通提示信息,形象逼真。本系统使用数码管完成倒计时显示功能。以方向东西为为例,数码管显示的数值从绿灯的设置时间最大值往下减,每秒钟减1,一直减到0。然后又从红灯的设置时间最大值往下减,一直减到0。接下来又显示绿灯时间,如此循环。
系统共有4个二位的LED 数码管,分别放置在模拟交通灯上方。
道口通行剩余时间采用红色7段数码管显示,采用共阴数码管,如用单片机P0口加上拉电阻驱动,P3.0/P3.1来控制数码管的位。其显示电路如图3.8所示:
系统电源模块电路
由于该系统中 51 单片机及二极管工作电压均为 5V 电压,所以要保证系统稳定可靠的工作,需要设计一个可以稳定提供 5V 电压的供电系统。本设计采用外置3节5号电池作为系统的供电电源,该系统电源电路设计如图3.9所示:
按键输入模块
由于该系统具有夜间模式,紧急模式和交通灯倒计时时间设定功能,所有需要加上这些功能键,如下图3.10所示:
夜间模式:按下夜间模式按键进入,四方向红灯长亮,再次按下按键退出。
紧急模式:按下紧急模式按键进入,四方向黄灯闪烁,再次按下按键退出。
设定倒计时时间:按下设定键后,进入设定状态,先设定南北方向,再次按下按键设定东西方向,设定好后,按下按键退出,正常运行。部分代码
#include<reg51.h> #include<intrins.h> //包含库文件 sbit smg1=P3^0; //定义南北方向数码管低位 sbit smg2=P3^1; //定义南北方向数码管高位 sbit smg3=P3^2; //定义东西方向数码管低位 sbit smg4=P3^3; //定义东西方向数码管高位 sbit N_green=P2^0; //定义北向绿灯端口 sbit N_red=P2^1; //定义北向红灯端口 sbit N_yellow=P2^2; //定义北向黄灯端口 sbit S_green=P2^7; //定义南向绿灯端口 sbit S_red=P2^6; //定义南向红灯端口 sbit S_yellow=P2^5; //定义南向黄灯端口 sbit W_green=P1^0; //定义西向绿灯端口 sbit W_red=P1^1; //定义西向红灯端口 sbit W_yellow=P1^2; //定义西向黄灯端口 sbit E_green=P1^7; //定义东向绿灯端口 sbit E_red=P1^6; //定义东向红灯端口 sbit E_yellow=P1^5; //定义东向黄灯端口 sbit k0=P3^4; //定义复位按键 sbit k1=P3^5; //定义夜间模式按键 sbit k2=P3^6; //定义紧急模式按键 sbit menu=P3^7; //定义设定时间按键 sbit zj=P1^3; //定义时间加按键 sbit jx=P1^4; //定义时间键按键 int kkk=0,fk=0; int djs22,js1=0,djs21,flgaa,nbdjs=20,dxdjs=20; //以上为临时变量 int js=0,djs=20,djs1=20; //初始倒计时时间 int table[]={0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x40}; //共阴极数码管段值 /************以下为函数声明*************/ void jtd(); void jtda(); void jtdb(); void djsxs(); void yj(); void jj(); void jtday(); void jtdby(); /*****************************************************/ /* 函数名:delayms */ /* 功能:产生毫秒级延时 */ /*****************************************************/ void delayms(int x) { char i; while(x--) { for(i=150;i>0;i--); } } /*****************************************************/ /* 函数名:Timer0_init() */ /* 功能:定时器0初始化 */ /*****************************************************/ void Timer0_init() { js=0; TMOD=0x01; //定义定时器0工作模式 TH0=0x4c; //赋初值高位 TL0=0x00; //赋初值低位 TR0=1; //启动定时器 ET0=1; //开中断 EA=1; //开全局中断 } /*****************************************************/ /* 函数名:timer0() interrupt 1 using 1 */ /* 功能:定时器0中断服务函数 */
,
链接:https://pan.baidu.com/s/1ONKFb_h68vU5-QjCyGJMZw
提取码:zro6,
-
PLC交通灯控制系统设计
2021-01-19 16:12:200 引言随着自动化控制技术和微电子技术的迅猛发展,PLC作为前沿的工业控制器,具有体积小、可靠性高、易操作、灵活性强、抗干扰能力强等一系列...交通灯控制工艺:南北、东西向的十字路口,均设有红、黄、绿三只信号 -
课设 交通灯 自动控制
2008-12-17 12:41:14该控制器能实现城市“十字”路口正常情况下以及特殊情况和紧急情况下交通信号灯的模拟控制。 1、在十字路口东西南北各设置红、黄、绿三种信号灯,如图1所示。正常情况下,东西、南北方向轮流放行。当东西方向(A线)... -
基于单片机智能远程可控交通信号灯系统设计
2019-03-11 15:21:26从网上找了一份资料,满足了基本的需要,但没有实现远程控制的功能,于是我将代码和电路图进行了修改,使其能进行远程通信 代码 #include &lt;reg52.h&gt; //头文件 #define uchar unsigned char #... -
交通灯控制系统C语言版+Proteus原理图设计与仿真
2009-10-30 21:56:13第五次按“设置键”时,系统退出设置状态,回到交通信号灯状态,并且东西向先通行,南北向后通行 软件设计:采用Keil C开发环境与语言 1)软件模块:根据上述工作流程和设计要求,软件设计可以分为以下几个功能... -
基于STM32的交通灯控制系统.rar
2019-07-11 10:43:25该设计中用光二极管来模拟信号灯,紧急车的优先通过请求信号由外部中断技术来模拟。要求使STM32中TIM2作为定时器,要求对通行时间进行倒计时,在LED上显示并进行递减,以此来实现十字路口交通灯的指示功能。为了节省... -
单片机控制交通灯说明书
2009-01-04 21:57:00单片机控制交通灯说明书一、设计思路 如何使主干道通车时间 ,可任意设置;...怎样采用倒计时的方式,用两位十进制数字显示红、绿、黄色信号灯的倒计时时间。二、电路图 二、 使用材料1、单片机89c51 -
嵌入式红绿灯控制系统
2010-12-25 21:29:18本文介绍了一种城市十字路口交通信号灯控制系统。该系统采用了以8051为内核的单片机芯片AT89s51作为核心控制器,以嵌入式操作系统RTX51为软件开发平台,通过控制城市十字路口的交通信号灯来指挥交通。该系统具有制作... -
EDA中的交通控制器的系统设计方案
2021-01-19 23:00:40图中9个单元电路分别为交通灯控制器JTDKZ:根据主、支干道传感器信号SM、SB以及来自时基发生电路的时钟信号CLK,发出主、支干道指示灯的控制信号,同时向各定时单元、显示控制单元发出使能控制信号EN45、EN25、EN... -
step fpga上实现呼吸灯和交通灯
2019-07-18 23:29:30它是利用微控制器的数字输出调制实现,是对模拟电路进行控制的一种非常有效的技术,广泛应用于测量、通信、功率控制与变换等众多领域。 硬件设计 实现原理:如上图所示,脉冲信号的周期为T,高电平脉冲宽度为t,... -
EDA/PLD中的EDA中的交通控制器的系统设计方案
2020-11-16 00:28:53图中9个单元电路分别为交通灯控制器JTDKZ:根据主、支干道传感器信号SM、SB以及来自时基发生电路的时钟信号CLK,发出主、支干道指示灯的控制信号,同时向各定时单元、显示控制单元发出使能控制信号EN45、EN25、EN... -
电路研究性教学(RFID)------北京交通大学
2020-10-07 19:30:55(6)闪光灯触发电路 (7) RFID原理研究 (8)简单信号处理电路设计 (9)音箱分频器设计 (10)有源RC滤波器应用 • 报告标题,作者姓名,班级,学号 • 对于题目的简要描述 • 方案和电路原理的描述,理论分析和... -
555定时器
2020-09-17 10:15:47交通信号灯控制系统ASM图 用典型电路基本模块实现交通灯控制系统 用可编程逻辑器件实现交通灯控制系统 数字密码锁 数字密码锁的ASM图 用典型电路基本模块实现数字密码锁 用可编程逻辑器件实现数字密码锁 ... -
经典电路200例,DDB格式。有文件列表。
2012-08-05 21:56:15教室灯控制器.ddb 数字电位器.Ddb 数字钟1.ddb 数控电压表.ddb 数控电源.DDB 数控直流电流源.ddb 数码管1.DDB 数码音响修改完成 无线串口通信.ddb 无线报警器.ddb 智能充电器--OK.ddb 智能充电器-huang.DDB 智能车--... -
sjtu嵌入式实验合集,红绿灯,方波,中断
2020-04-27 22:19:31编写程序,控制三色LED灯(可发红,绿,黄光),模拟十字路口交通灯管理。 如果要求74LS244的选片地址为90H~97H之间的偶地址,74LS273的选片地址为A0H~A7H之间的偶地址,请修改电路图,再完成实验要求1。 8255芯片使用... -
200个经典电路,非pdf文件
2011-10-30 00:41:37机器人.Ddb 2008年1月5日 16:12 309248 单片机在线编程板-下载板.Ddb 2011年10月30日 0:07 <dir> 低频功率放大器 2008年12月9日 16:44 380928 电话报警器.ddb 2007年4月15日 11:18 632832 电机控制电路.ddb 2008年2... -
数字逻辑课程设计报告
2009-11-24 12:18:01城市交通控制系统是用于城市交通数据监测、交通信号灯控制与交通疏导的计算机综合管理系统,它是现代城市交通监控指挥系统中最重要的组成部分。,然而,随着交通量的快速增长和缺乏对高速道路的系统研究和控制,如何...