AT89C52单片机控制交通灯系统
基于单片机AT89C52控制的交通灯
十字路口车辆穿梭,行人熙攘,车行车道,人行人道,有条不紊。
那么靠什么来实现这井然秩序呢?靠的是交通信号灯的自动指挥系统。
交通信号灯控制方式很多。
本设计主要分为五大模块输入控制电路、时钟控制电路、片内外程序切换控制、显示电路。
以MSC-51系列单片机IntelAT89C52为中心器件来设计交通灯控制器,实现了AT89C52芯片的P1口设置红、绿灯、黄灯燃亮时间的功能;为了系统稳定可靠采用了74LS14施密特触发器芯片的消抖电路,避免了系统因输入信号抖动产生误操作;显示时间直接通过AT89C52的P3口输出,由NPN驱动LED数码管显示红灯燃亮时间。
AbstractThe intersections vehicle wears shuttle, pedestrian Xi Rang, garage driveway, person's sidewalk, orderly. So depend what to carry out this well arranged order? What to depend is a traffic sign light of automatic conductor system. The control method of the traffic sign light is a lot of. This design is mainly divided into five greatest molds a piece the electric circuit, clock of the importation control a control outside procedure inside the electric circuit, slice to cut over a control and shows electric circuit. Take single slice the machine IntelAT89 C52of the serieses MSC-51s as a center spare part to design transportation light controller, carried out the AT89 C52's P's 1 people's constitution of the chips red, the function in bright time of green light, Huang2 Deng Ran2;For the sake of system stability the credibility adopted a 74 LS14 airtight trigger eliminate of machine chip to tremble electric circuit especially, avoided system because of importation the signal tremble movable property to living a mistake operation; The P 3 people who shows that time directly passes the AT89 C52 output, is driven LED figures a tube by the NPN to show red-light Ran bright time.摘要 (I)Abstract (I)目录........................................................................................................................... I I 第一章绪论.. (1)1.1交通灯设计的意义 (1)1.2交通灯设计的思想 (1)1.3交通灯设计满足的基本功能 (2)第二章总体方案 (3)2.1总体方案设计思想 (3)2.2系统方案选择与比较 (3)2.3系统总体方案论证 (4)第三章硬件设计 (6)3.1 总体设计与描述 (6)3.2 交通灯通行模式及行车方向指示 (6)3.3 主干道单独时间设置功能 (8)3.4 倒计时计数功能及其实现 (8)3.5 各功能模块硬件设计及实现 (9)第四章软件设计 (12)4.1 软件总体流程图 (12)4.2 定时器初始化 (12)4.3 动态显示 (13)4.4 设置状态子程序 (13)第五章系统调试 (15)5.1 系统操作说明 (15)5.2 调试 (15)5.3 调试心得 (19)第六章设计总结 (21)致谢 (22)参考资料 (23)附录 (24)Ⅰ原理图 (24)Ⅱ原程序 (25)第一章绪论1.1交通灯设计的意义交通的发达,标志着城市的发达,相对交通的管理则显得越来越重要。
基于AT89C52单片机的交通灯C语言程序
_nop_(); _nop_(); delay(1); _nop_(); _nop_(); _nop_(); delay(1); } void shu5() { d0=0; d1=0;
d2=0; delay(1); d0=0; d1=1; d2=0; delay(1); d0=1; d1=1; d2=0; delay(1); d0=1; d1=0; d2=1;
d2=0; delay(1); d0=1; d1=0; d2=0; delay(1); d0=0; d1=1; d2=0; delay(1); d0=1; d1=1;
d2=0; delay(1); d0=0; d1=1; d2=1; delay(1); _nop_(); _nop_(); _nop_(); delay(1); _nop_(); _nop_(); _nop_();
基于 AT89C52 单片机的交通灯 C 语言程序
如图,简易交通灯 。 有四个状态 0,1,2,3 数码管为 2 位 7 段共阳数码管,可以通过修改 i,j 的值进而修改倒计时的长 短。 不当地方,敬请批评指正! 图一:十字路口交通灯 图二:状态 0 绿灯:0x42 红灯:0xbd
_nop_(); delay(1); _nop_(); _nop_(); _nop_(); delay(1); _nop_(); _nop_(); _nop_(); delay(1); _nop_(); _nop_();
_nop_(); delay(1); } void shu2() { d0=0; d1=0; d2=0; delay(1); d0=1; d1=0; d2=0; delay(1);
图三:状态 1 绿灯:0x25 红灯:0xda 图四:状态 2 绿灯:0x90 红灯:0x6f 图五:状态 3 绿灯:0x2c 红灯:0xd3
AT89C52单片机智能交通灯的设计
AT89C52单片机智能交通灯的设计引言随着城市汽车保有量的越来越多,城市的交通拥挤问题正逐渐引起人们的注意。
交通灯是交管部分管理城市交通的重要工具。
目前绝大部分交通灯其时间都是设定好的,不管是车流高峰还是低谷,红绿灯的时间都固定不变;还有一些交通灯能根据简单划分的时间段来调整时间,但控制起来都不是很灵活,这使得城市车流的调节不能达到最优。
本文所述设计正是针对这一弊端进行了改进,根据实时车流量对各路口的绿灯时间进行动态调节,大大加强了其灵活性和实时性;软件编程采用了实时操作系统RTX51,在确保实时性要求的同时,简化了复杂的软件设计工作。
1 方案论证图1是一个典型的十字路口示意图。
分别用1、2、3、4表明四个流向的主车道,用a、b、c、p分别表示各主车道的左行车道、直行车道、右行车道以及人行横道。
通过分析很容易得知,除了四个右行车道外,在同一时间,最多只能有两个车道通行,如1a、1b通行时,其它车道都会被阻断。
所以在设计红绿灯时,可以两两组合,共有四组(如la-1b、2a-2b、3a-3b、4a-4b);而各车道的红灯时间和人行横道通停时间都由这四个组合的绿灯窗口时间决定。
本文将以广泛采用的图2所示的通行顺序来讲述智能交通灯的设计。
2 系统软硬件设计本系统硬件上采用上位机和下位机设计,其中下位机四个,均采用AT89C52单片机,分别控制图2所示的四个组合。
AT89C52单片机具有MCS-51内核,片内有8KB Flash、256字节RAM、6个中断源、1个串行口、最高工作频率可达24MHz,完全可以满足本系统的需要。
上位机和下位机之间的串行通信采用RS-485标准接口。
在通信频率为9600bps的情况下,有效通信距离可达2.1km。
基于AT89c52制作的多功能交通灯
基于STC89C52制作的多功能交通灯一、摘要AT89C52单片机具有控制二连体共阴极数码管和发光二极管的输出显示以及检测按键输入的功能。
利用AT89C52单片机模仿制作室外十字路口多功能交通灯,实现室内控制与室外显示的功能。
合理控制交通繁忙,交通特殊情况和恢复交通正常的三种情况。
二、方案设计与验证1.数码管显示部分方案一:利用9013三极管驱动二连体数码管,由于总共用到5个二连体数码管,需要使用40个9013三极管,故舍弃该方案。
方案二:利用4511译码器驱动二连体数码管,可以使用动态扫描法同时驱动5个二连体数码管,只需要使用一个4511译码器,故选择该方案。
2.二连体数码管位码显示方案一:利用软件进行动态扫描使十位数码管同时显示,但程序会过于冗长,故舍弃该方案。
方案二:利用74LS04反向器在硬件上进行动态扫描,同时点亮十个数码管,编写程序简单,故选择该方案。
3.按键模块由于只有五个按键,故使用行列式按键,在程序上使用动态扫描法,测试按键是否按下。
三、总体设计利用proteus设计的整体电路图:1、首先自己画好显示面板、小系统面板和控制面板三部分的电路图。
2、将元器件在实际洞洞板上布局。
四、局部设计1、显示部分用四个共阴极LED显示东西南北方向的时间,用一个LED显示主控制台的选择时间。
并在每一路口有一个红灯、一个黄灯和两个绿灯(其中一绿灯作执行指示灯,另一个作左转指示灯)。
在每一人行道两端均有两个红绿灯,作为人行控制灯。
在主控制台有两灯,分别用于指示正常与繁忙。
2、核心控制部分用89C52单片机作为核心控制,P00——P03与HEF4511相接,使其驱动十个数码管,控制数码管的代码。
P20——P25与74LS04相接,使其控制数码管的位码。
3、主控台部分为实现工作人员智能调控交通指示灯时间,在主控台部分有五个按键实现,有正常指示按键,特殊指示按键,繁忙指示按键以及时间加减按键。
五、测试1.用keil写好程序,利用PROTEUS仿真,电路运行良好2.焊接好硬件电路,用万用表分别检测单片机最小系统,控制面板,显示面板,所有发光二极管和二连体数码管均正常显示。
基于89C52单片机的交通流量感应式交通灯设计
泰山学院本科毕业设计基于单片机的交通流量感应式交通灯所在学院机械与工程学院专业名称机械设计制造及其自动化申请学士学位所属学科工科年级二○○九级学生姓名、学号尹彦柏 2009170113 指导教师姓名、职称许振保讲师完成日期二○一三年五月摘要随着社会的进步,科技的进步使人们的生活水平逐步提高,各种方便人们生活的自动控制系统进入了人们的生活,以单片机为核心的产品越来越多,这标志了自动控制系统成为了数字化时代的一员。
本设计主要从单片机的应用上来实现十字路口交通灯智能化的管理,用以控制过往车辆的正常运作。
利用单片机作为控制系统,使红绿黄灯按指定时序按不同时间循环点亮,并增添了主从道模式和普通模式的传感器自动检测与转换,蜂鸣器对闯红灯行人的自动检测与声音警示,信号灯转换时间的自动倒计时并进行LED显示等附加功能,使交通灯发挥更加人性化、智能化与自动化的作用,为建立智能、安全、高效的指挥交通秩序而服务。
关键词:交通灯,MSC-51,单片机,自动检测ABSTRACTAlong with the progress of the society, the progress of science and technology make people's life level gradually improve, a variety of convenient automatic control system of people's life has entered people's lives, with the single chip processor as the core product more and more, this marks the automatic control system became a member of the digital age.This design mainly from the MCU application up to achieve intelligent traffic lights at an intersection management, to control the vehicles normal operation. Microcontroller as the control system, make the red, green and yellow lights lit according to specified sequence according to different time cycle, and added a master-slave mode and normal mode sensor automatic detection and conversion, a buzzer for running a red light pedestrian automatic detection and warning of sound and light conversion time of additional features such as automatic countdown and LED display, traffic lights play a more humane, intelligent and automation for a smart, safe and efficient traffic order and service.Keywords: traffic light ,MSC-51, SCM, automatic checking目录目录1引言 (1)1.1交通灯控制系统的发展概况及发展前景 (1)1.2 单片机交通控制系统设计 (2)1.3单片机交通控制系统的功能要求 (4)1.3.1 倒计时显示 (4)1.3.2 时间的设置 (4)1.3.3 紧急处理 (4)1.3.4 普通模式和主从模式的切换功能 (5)1.3.5 蜂鸣器报警 (5)1.4单片机交通控制系统的基本构成及原理 (5)1.5设计思路 (6)2 系统硬件电路的设计 (8)2.1 系统硬件总电路构成。
AT89C52单片机为控制器的多功能交通灯控制系统
AT89C52 单片机为控制器的多功能交通灯控制系统汽车数量越来越多,而现在的红绿灯处的交通灯模式采用的是定时控制,由于车流量是随时变化的,当此时没有车通过,而相对的车要等到此方向的绿灯结束显示红灯才能通过,在时间和空间方面的应变性能较差,这样不仅浪费了时间,还使得相对方向的车辆造成堵车现象。
要想解决城市红绿灯处的大堵车现象,改善原有的红绿灯处交通灯控制系统是很有必要的。
本文以AT89C52 单片机为控制器的交通灯控制系统,该系统通过红外接收器接收信号实现特种车辆(119、120 等)自动放行;通过车辆检测电路采集路况信号,经单片机处理后,分配各车道的绿灯时间,实现车流动态调节,LED 数码管显示通行倒计时;系统除基本交通灯功能外,还具有通行时间手动设置、可倒计时显示、急车强行通过、车流量检测及调整、交通异常状况判别及处理等相关功能。
1、交通控制系统的总体框图设计及原理该交通灯控制系统用单片机直接控制信号灯的状态变化,接入的LED 数码管就可显示倒计时以提醒行使者。
本系统在此基础上加入了违规检测电路和车流量检测电路为单片机采集数据,同时接上蜂鸣器。
本设计以单片机为控制核心,连接成最小系统,由车流量检测模块、违规检测模块和按键设置模块等产生输入,信号灯状态模块、LED 倒计时模块和蜂鸣器状态模块接受输出。
系统的总体框图如图1 所示。
图1 系统的总体框图2、系统硬件总电路构成及工作原理本设计选用AT89C52 单片机及外围器件构成最小控制系统,12 个发光二极管分成4 组红绿黄三色灯构成信号灯指示模块,8 个LED 东西南北各两个构成倒计时显示模块,车流量检测传感器采集流量数据,光敏传感器捕获违规信号,若干按键组成时间设置和模式选择按钮和紧急按钮等,以及用1 个蜂鸣器进行报警。
系统硬件电路构成:单片机为核心,组成一个集车流量采集、处理、自动控制为一身的闭环控制系统。
系统硬件电路由车流量检测电路、单片机、违规检测电路,状态灯,LED 显示,按键,语音提示器组成。
基于AT89S52单片机的十字路口的交通灯控制系统方案
摘要稳压电源是各种电子的动力源,被人称为电路的心脏,所有用电设备,包括电子仪器仪表,家用电器等对供电电压都有一定的要求。
至于精密的电子仪器,对供电电压的要求更为严格。
所谓的DC/DC直流稳压是指电压或电流的变化小到可允许的程度,并不是绝对的不变。
目前,随着单片开关电源集成电源的应用,开关电源正朝着短、小、轻、薄的方向发展。
单片开关电源自20世纪90年代中期问世以来便显示出来强大的生命力,它作为一项颇具发展和影响力的新产品,引起了国外电源界的普遍重视。
尤其是最近两年来,国外一些著名的芯片厂家又竞相推出了一大批单片开关电源集成电路,更为新型开关电源的推广与奠定了良好的基础。
单片开关电源具有集成度高、高性价化、最简外围电路,最佳性能等指标,现已成为开发中小功率开关电源、精密开关电源与电源模块的优选集成电路。
关键词:稳压电源;DC/DC直流稳压电源;单片开关电源AbstractPower supply is a power source for a variety of electronic, has been called the heart of the circuit, all electrical equipment, including electronic instrumentation, and household appliances to the supply voltage has certain requirements. The sophisticated electronic equipment, the supply voltage requirements more stringent. The so-called DC / DC voltage or DC current is small change to the extent permissible, not absolute change.ow, with the single application of integrated power switching power supply, switching power supply is moving in the short, small, light, thin direction. Chip switching power supply since the mid-20th century, 90 have shown since the advent of great vitality, as a considerable development and impact of new products, the power sector attracted widespread attention at home and abroad.Especially in the last two years, foreign manufacturers and some well-known chip introduced a large number of competing single-chip switching power supply integrated circuit, more promotion of the new switching power supply and lay a good foundation. Chip switching power supply with high integration, high price, the most simple external circuit, the best performance and other indicators, has now become the development of small and medium-power switchingpower supply, precision and power modules switching power supply integrated circuit optimization.Key words:Power Supply; DC / DC DC Power Supply; Chip switching power supply目录引言 (1)1 DC/DC变换器的基础知识 (1)1.1 DC/DC变换的含义 (1)1.2 DC/DC变换器的分类 (1)1.3 DC/DC变换技术的应用围 (1)1.4 DC/DC变换技术的优点 (1)2 MC34063的简介 (1)2.1集成电路MC34063概述 (1)2.2部结构与管脚概述 (3)2.3 主要性能 (4)2.4 技术指标 (4)3电路原理与参数计算 (6)3.1部原理框图 (6)3.2部电路工作原理 (7)3.3 主要参数的计算方法 (7)3.4 MC34063的局限性 (8)4 电路设计 (8)4.1设计技术指标要求 (8)4.2电路器件的参数选择 (8)4.3升压电路原理图与原理解释 (10)4.4升压电路的相关计算公式 (11)4.5此设计要求中升压的相关计算 (12)5 电路板制作与调试 (12)6 结束语 (13)辞 (15)参考文献 (16)引言随着微控技术的日益完善和发展,单片机的应用在不断走向深入。
基于AT89C52单片机的多功能交通灯设计与仿真
红灯亮 ,告知其他车辆本路段拥堵 ,提醒广大司机 师傅
绕行;为保证 有效性 ,P 3 . 3 ,P 3 . 4 ,P 3 . 6共 同连接至 P 3 . 2引脚 ,P 3 . 2是外部 中断 引脚,单片机会及 时响应
中断 请 求 信 号 。
本文设计的交通灯主要有 以下功能:①默认设置是
直行 4 0 5 ,拐弯 2 0 5 ,可 以根据车流量信息 以 5 s递增或
控制 ,也可以用硬件 电路控制 ,但 P L C 价格 昂贵 ,硬件 电路一旦确定控 制信号便无法 更改 ,鉴于此,本文采用
单 片 机 控 红灯。P 3 . 3时问递增按键 ,P 3 . 4时问递 减按键 ,P 3 . 6繁忙信 号按键 ,按下此键 ,P 2 . 7控制 的
2 系统 软件 设 计
单片机 可用汇编语言或 c语言编程, K E I L 软件对此
两种语言都支持 。鉴于汇编语 言的可读性差 ,开发周期 长, 本次设计采用可移植性好的 C 语言来编程实现交通 灯 的所有功能。
该 程序 包 括 主 程 序和 子 程 序 。 主 程 序 主 要完 成 初 始
递减 ,灵活调:②整通行时间,有效减少车辆滞留;③
倒计时显示,通行的最后 3 S用黄灯 闪烁的方式起到警
示作用 ;④紧急车辆优先通行;⑤若遇交通繁忙则发送
拥堵信号,提醒其他司机师傅及时绕。
1 系统硬件设计
本设计主要 由单片机主控模块,L E D倒计时显示模
块,交通灯显示模块 ,时间参数调整模块,特殊情况处
摘 要 :本设计采 用 A T 8 9 C 5 2 单 片机作为主控元件,采用 C语言编程 ,可以实现倒计时,通行时 间以 5 5递进 的方式 自由设 定.遇
基于AT89C52的多功能交通灯控制系统设计与仿真实现
基于AT89C52的多功能交通灯控制系统设计与仿真
实现
本文介绍的交通灯控制系统与目前国内一般的交通灯控制系统相比较,具有一定的优势,具体体现在以下几方面:
1)控制参数可以灵活调整。
目前,城市交叉口大多采用定周期控制方式,一旦周期和绿信比选定之后就不再变化,这样就有可能造成信号灯控制信号与实际的交通流量不适应。
因此,只有周期、红灯时间、绿灯时间等控制参数可根据交通流的实际情况来调整,才能更好地控制交叉口的交通,减少车辆延误和提高交叉口的通行能力。
2)相位可以变换。
针对一个实际的十字路口,两相位控制交通流简单,效率高,但冲突点比较多,安全性较低。
而4相位由于消除了左转车辆造成的冲突,安全性很高,但在小交通流的情况下,交通效率低,因此,如果能根据交通流量的大小和车辆的转向比例来进行相位变换,交叉口交通会更有秩序,控制效果也会更好。
3)紧急车辆通行控制。
当紧急车辆执行紧急任务通过某个交叉口时,不管原来交通灯的时序怎幺样,2车道都应禁行,让紧急车通过。
紧急通行的。
基于AT89S52单片机交通灯控制系统
序号
状态
序号
状态
1
绿色显示灯亮,红色和、黃色的灯 不亮
1
红色显示灯点亮,绿色和黃色的 显示灯熄灭。
2
黃色显示灯亮,红色和绿色灯不亮
2
当绿色显示灯点亮的时候,红色 和黃色不点亮。
3
红色显示灯亮,绿色和黄色显示灯 不亮
3
黄色显示灯点亮,红色和绿色显 示灯不亮。
南北方向
东西方向
序号
状态
序号
状态
1
绿灯亮38秒,红黃灯灭
1
红灯壳40秒,绿黃灯灭
2
黃灯亮2秒,红、绿灯灭
2
绿灯亮18秒,红黃灯灭
3
红灯亮20秒,绿黄灯灭
3
黄灯亮2秒,红绿灯灭
回到状态1
回到状态1
表2.2高邮时段倒计时显示转换
南北方向
东西方向
序号
状态
序号
状态
1
绿灯亮28秒,红黄灯灭
1
红灯亮30秒,绿黃灯灭
作为一个交通的控制指示系统,20世纪50年代进入了它的电气化控制,伴 随着其他领域,如科学,自动化的飞速发展。我们将先进的技术融入其中,给 他带来一次次新生。
1.2.2现在的交通灯系统
就我们国家而言,交通等发展还不是很发达,我们只是在大体上有红黄绿3种指 示灯。再加一个倒计时的显示器来完善它的功能。在很多情况下我们交通系统还是存 在很多漏洞。
1
现在我们要求设计一个关于交通灯的控制系统。要求做到:在东西方向和南北方 向这两个十字交义方向各安装相应显示的灯,与普通的交通灯一样南北红灯亮的时 候,东西方向上的绿灯,黄灯依次点亮。当东西方向成为红灯亮时,东西方向的红灯 才亮,和南北方向一样,南北方向上的绿灯才点壳南北依次经过绿灯亮的过程和黃 灯亮的顺序过程。下面是红黃绿灯的转换表如表1.1示所示
基于AT89S52单片机交通灯控制系统的方案设计书
一、设计任务与要求用AT89S52单片机控制一个交通信号灯系统,晶振采用12MHZ 。
设A 车道与B 车道交叉组成十字路口,A 是主道,B 是支道。
设计要求如下:用发光二极管模拟交通信号灯,用按键开关模拟车辆检测信号。
正常情况下,A 、B 两车道轮流放行,A 车道放行50s ,其中5s 用于警告;B 车道放行30s ,其中5s 用于警告。
交通繁忙时,交通信号灯控制系统应有手控开关,可人为地改变信号灯的状态,以缓解交通拥挤状况。
在B 车道放行期间,若A 车道有车而B 车道无车,按下开关K1 使 A 车道放行15s ;在 A 车道放行期间,若B 车道有车而A 车道无车,按下开关K1 使B 车道放行15s 。
有紧急车辆通过时,按下K2开关使 A 、B 车道均为红灯,禁行20s 。
二、方案设计与论证 方案一:交通控制系统主要控制A 、B 两车道的交通,以A T89S52单片机为核心芯片,通过控制三色LED 的亮灭来控制各车道的通行;另外通过2个按键来模拟各车道有无车辆的情况和有紧急车辆的情况。
根据设计要求,制定总体设计思想如下:1、正常情况下运行主程序,采用0.5S 延时子程序的反复调用来实现各种定时时间。
2、一道有车而另一道无车时,采用外部中断1执行中断服务程序,并设置中断为低优先级中断。
3、有紧急车辆通过时,采用外部中断0执行中断服务程序,并设置中断为高优先级中断,实现二级中断嵌套。
该电路具有电路简单,设计方便,显示亮度高,耗电较少,也非常的可靠等点。
总体设计框图如图1所示:图1 系统整体设计方框图方案二:采用标准AT89S52单片机作为控制器;通行倒计时显示采用3位数码管;主、次通道及行人指示灯采用双色高亮发光二极管;LED 显示采用动态扫描,以节省端口。
紧急车辆通行采用实时中断完成,识别方法采用手动按钮。
按以上系统构架设计,单片机端口资源刚好满足要求。
该系统具有电路简单,设计方便,显示亮度高耗电少,可靠性高,但是占用单片机资源太多了。
(完整word版)基于AT89S52单片机交通灯控制系统的设计
单片机系统开发与应用工程实习报告选题名称:基于AT89S52单片机交通灯控制系统的设计系(院):计算机工程学院专业:计算机科学与技术(嵌入式软件设计)班级:姓名:学号:指导教师:学年学期:2009 ~ 2010 学年第 2 学期2010 年 5 月30 日摘要:随着我国经济的高速发展,私家车、公交车的增加,无疑会给我国交通系统带来沉重的压力,很多大城市都不同程度地受到交通阻塞问题的困扰。
下面以AT89S52单片机为核心,设计出以人性化、智能化为目的的交通信号灯控制系统我用发光二极管模拟交通信号灯,用按键开关模拟车辆检测信号。
正常情况下,A、B两车道轮流放行,A车道放行45s,其中5s用于警告;B车道放行25s,其中5s用于警告。
交通灯繁忙时,可人为地改变信号灯状态,以缓解交通拥挤状况。
遇到紧急情况时,A、B两车道均为红灯,禁行20s。
本设计主要做了如下几方面的工作:一是确定系统交通控制的总体设计,包括,十字路口具体的通行禁行方案设计以及系统应拥有的各项功能,二是显示电路等的设计和基本功能要求.三是进行软件系统的设计,对于本系统,本人采用单片机汇编语言编写,总体上完成了软件的编写。
关键词:交通控制;AT89S52;汇编语言;目录1 绪论 01.1单片机交通控制系统的选题背景 01。
2单片机交通控制系统选题的现实意义 02 项目概述 (2)2.1项目要求 (2)2.2系统设计 (2)3 硬件设计 (3)3。
1电路图原理 (3)3。
2单片机控制交通信号灯模拟系统的电路图 (5)4 软件设计 (5)4。
1程序流程图 (6)4.2程序清单 (7)5 系统仿真及调试 (10)总结 (11)参考文献 (12)1 绪论1.1单片机交通控制系统的选题背景随着人口快速的增多,交通工具的爆炸性的发展,以及道路资源的有限性,交通控制就应运而生,在人类的生活、工作环境中,交通扮演着极其重要的角色,人们的出行都无时不刻与交通打着交道.自18世纪工业革命以来,工业发展带动整个交通运输的发展,从而催生了单独的交通控制学问与管理机构.交通控制系统是近现代社会随着物流、出行等交通发展产生的一套独特的公共管理系统。
AT89C52单片机完成数字交通灯的毕业设计资料
学业作品论文题目数字交通灯专业计算机应用技术班级201402班姓名胡安富学号201402121229 指导教师董毅学业作品开题报告学生姓名胡安富学号201402121229 专业数字交通灯班级201402班指导教师董毅开题时间2016年11月1日电子信息学院电子信息学院学业作品开题报告学业作品(论文)评审表(指导教师用)学生姓名:胡安富专业:数字交通灯班级: _______201402班_____________学号:201402121229 题目:数字交通灯注:此表存学业作品(论文)档案学业作品答辩记录表系别:电子信息学院学业作品(论文)成绩评定表(答辩小组用)注:此表存学业作品(论文)档案学业作品论文题目数字交通灯专业计算机应用技术班级201402班姓名胡安富学号201402121229指导教师董毅说明:一、毕业设计(论文)要求:1.毕业设计(论文)必须打印或者用钢笔书写,且符合下列次序:(1)毕业设计(论文)题目(2)目录(3)内容提要(200字左右,提倡用英文书写)(4)引言(5)正文(6)参考文献(7)附录。
2.文字通顺,语言流畅,书写工整,无错别字。
3.绘图要求整洁,布局合理,线条粗细均匀,圆弧连接光滑,尺寸标注规范,文字注释必须用工程字书写,提倡用计算机绘图。
4.曲线图表要求用曲线、图表、线路图、流程图、程序框图、示意图等不准徒手画,必须按国家规定标准或工程要求绘制。
5.毕业设计说明不少于15000字,毕业论文不少于6000字。
二、毕业设计(论文)成绩评定:毕业论文和答辩成绩采用五级分制:优秀、良好、中等、及格、不及格。
毕业设计成绩由答辩小组结合毕业论文、答辩成绩采用五级分制综合评定。
数字交通灯毕业设计任务书一、设计任务:用89C52A作为主控芯片,通过C语言编些程序,用LED代替各个路口交通灯,通过keil和Proteus 联合调用来实现对十字路口交通灯控制系统的模拟。
二、设计内容:设计内容:用keil编写C程序,通过软件延时实现交通灯控制;在Proteus中设计出电路图,其中各个路口交通灯用led模拟,计时器用八段数码管显示;z最后通过keil和Proteus联合调用实现交通灯的模拟。
89C52A作为主控芯片的数字交通灯设计
河南工业职业技术学院毕业设计——数字交通灯专业:班级:学号:姓名:指导老师:数字交通灯毕业设计任务书一、设计任务:用89C52A作为主控芯片,通过C语言编些程序,用LED代替各个路口交通灯,通过keil和Proteus联合调用来实现对十字路口交通灯控制系统的模拟。
二、设计内容:设计内容:用keil编写C程序,通过软件延时实现交通灯控制;在Proteus中设计出电路图,其中各个路口交通灯用led模拟,计时器用八段数码管显示;z最后通过keil和Proteus联合调用实现交通灯的模拟。
设计效果: 软件延时控制南北(A﹑C)路口红灯亮65s0,东西(B﹑D)路口绿灯亮60秒;然后南北(A﹑C)路口不变,东西(B﹑D)路口绿灯闪5下,然后南北东西路口黄灯亮;再变为南北(A﹑C)路口绿灯亮60s,东西(B﹑D)红灯亮65s秒;然后南北(A﹑C)路口绿灯闪5下,再黄灯亮,B ﹑D不变。
再循环······。
并将绿灯剩余时间显示在LED上 (该项编程可将其结果显示在计算机屏幕上代替)。
如下图十字交通灯模拟图三、设计要求:(1). 设计硬件原理图(印制版图),(2). 制作实物或软件仿真或实验板上模拟,任选一种;(3). 设计软件流程图;(4). 编程并调试;(5). 软硬件综合调试。
摘要交通控制系统是近现代社会随着物流、出行等交通发展产生的一套独特的公共管理系统。
要保证高效安全的交通秩序,除了制定一系列的交通规则,还必须通过一定的科技手段加以实现。
本文在对目前交通控制进行深入分析的基础上,用89C52A作为主控芯片,通过C语言编些程序,用LED代替各个路口交通灯,通过Keil和Proteus联合调用来实现对十字路口交通灯控制系统的模拟。
近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。
在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。
基于AT89C52单片机的交通灯控制系统的设计
译文题目: 8-bit Microcontroller With 8K Bytes Flash AT89C52 外文资料8-bit Microcontroller With 8K Bytes Flash AT89C52FeaturesCompatible with MCS-51™ Products8K Bytes of In-System Reprogrammable Flash MemoryEndurance: 1,000 Write/Erase CyclesFully Static Operation: 0 Hz to 24 MHzThree-level Program Memory Lock256 x 8-bit Internal RAM32 Programmable I/O LinesThree 16-bit Timer/CountersEight Interrupt SourcesProgrammable Serial ChannelLow-power Idle and Power-down ModesDescriptionThe AT89C52 is a low-power, high-performance CMOS 8-bit microcomputer with 8K bytes of Flash programmable and erasable read only memory (PEROM). The device is manufactured using Atmel’s high-density nonvolatile memory technology and is compatible with the industry-standard 80C51 and 80C52 instruction set and pinout. The on-chip Flash allows the program memory to be reprogrammed in-system or by a conventional nonvolatile memory programmer. By combining a versatile 8-bit CPU with Flash on a monolithic chip, the Atmel AT89C52 is a powerful microcomputer which provides a highly-flexible and cost-effective solution to many embedded control applications.Pin ConfigurationsBlock DiagramPin DescriptionVCCSupply voltage.GNDGround.Port 0Port 0 is an 8-bit open drain bi-directional I/O port. As an output port, each pin can sink eight TTL inputs. When 1s are written to port 0 pins, the pins can be used as high-impedance inputs. Port 0 can also be configured to be the multiplexed low-order address/data bus during accesses to external program and data memory. In this mode, P0 has internal pull-ups. Port 0 also receives the code bytes during Flash programming and outputs the code bytes during program verification. Externalpull-ups are required during program verification.Port 1Port 1 is an 8-bit bi-directional I/O port with internal pull-ups. The Port 1 output buffers can sink/source four TTL inputs. When 1s are written to Port 1 pins, they are pulled high by the internal pull-ups and can be used as inputs. As inputs, Port 1 pins that are externally being pulled low will source current (I IL) because of the internal pull-ups. In addition, P1.0 and P1.1 can be configured to be the timer/counter 2 external count input (P1.0/T2) and the timer/counter 2 trigger input (P1.1/T2EX), respectively, as shown in the following table. Port 1 also receives the low-order address bytes during Flash programming and verification.Port 2Port 2 is an 8-bit bi-directional I/O port with internal pull-ups. The Port 2 output buffers can sink/source four TTL inputs. When 1s are written to Port 2 pins, they are pulled high by the internal pull-ups and can be used as inputs. As inputs, Port 2 pins that are externally being pulled low will source current (I IL) because of the internal pull-ups. Port 2 emits the high-order address byte during fetches from external program memory and during accesses to external data memories that use 16-bit addresses (MOVX @DPTR). In this application, Port 2 uses strong internal pull-ups when emitting 1s. During accesses to external data memories that use 8-bit addresses (MOVX @ RI), Port 2 emits the contents of the P2 Special Function Register. Port 2 also receives the high-order address bits and some control signals during Flash programming and verification.Port 3Port 3 is an 8-bit bi-directional I/O port with internal pull-ups. The Port 3 output buffers can sink/source four TTL inputs. When 1s are written to Port 3 pins, they are pulled high by the internal pull-ups and can be used as inputs. As inputs, Port 3 pins that are externally being pulled low will source current (I IL) because of the pull-ups. Port 3 also serves the functions of various special features of the AT89C51, as shown in the following table. Port 3 also receives some control signals for Flash programming and verification.RSTReset input. A high on this pin for two machine cycles while the oscillator is running resets the device.ALE/PROGAddress Latch Enable is an output pulse for latching the low byte of the address during accesses to external memory. This pin is also the program pulse input (PROG) during Flash programming. In normal operation, ALE is emitted at a constant rate of 1/6 the oscillator frequency and may be used for external timing or clocking purposes. Note, however, that one ALE pulse is skipped during each access to external data memory. If desired, ALE operation can be disabled by setting bit 0 of SFR location 8EH. With the bit set, ALE is active only during a MOVX or MOVC instruction. Otherwise, the pin is weakly pulled high. Setting the ALE-disable bit has no effect if the microcontroller is in external execution mode.PSENProgram Store Enable is the read strobe to external program memory. When the AT89C52 is executing code from external program memory, PSEN is activated twice each machine cycle, except that two PSEN activations are skipped during each access to external data memory.EA/VPPExternal Access Enable. EA must be strapped to GND in order to enable the device to fetch code from external program memory locations starting at 0000H up to FFFFH. Note, however, that if lock bit 1 is programmed, EA will be internally latched on reset. EA should be strapped to V CC for internal program executions. This pin also receives the 12-volt programming enable voltage (V PP) during Flash programming when 12-volt programming is selected.XTAL1Input to the inverting oscillator amplifier and input to the internal clock operating circuit.XTAL2Output from the inverting oscillator amplifier.Special Function RegistersA map of the on-chip memory area called the Special Function Register (SFR) space is shown in the Table 1.Note that not all of the addresses are occupied, and unoccupied addresses may not be implemented on the chip. Read accesses to these addresses will in general return random data, and write accesses will have an indeterminate effect. User software should not write 1s to these unlisted locations, since they may be used in future products to invoke new features. In that case, the reset or inactive values of the new bits will always be 0.Timer 2 RegistersControl and status bits are contained in registers T2CON and T2MOD for Timer 2. The register pair (RCAP2H, RCAP2L) are the Capture/Reload registers for Timer 2 in 16-bit capture mode or 16-bit auto-reload mode.Interrupt RegistersThe individual interrupt enable bits are in the IE register. Two priorities can be set for each of the six interrupt sources in the IP register.Data MemoryThe AT89C52 implements 256 bytes of on-chip RAM. The upper 128 bytes occupy a parallel address space to the Special Function Registers. That means the upper 128 bytes have the same addresses as the SFR space but are physically separate from SFR space.When an instruction accesses an internal location above address 7FH, the address mode used in the instruction specifies whether the CPU accesses the upper 128 bytes of RAM or the SFR space. Instructions that use direct addressing access SFR space. For example, the following direct addressing instruction accesses the SFR at location 0A0H .MOV 0A0H, #dataInstructions that use indirect addressing access the upper 128 bytes of RAM. For example, the following indirect addressing instruction, where R0 contains 0A0H, accesses the data byte at address 0A0H, rather than P2 (whose address is 0A0H).MOV @R0, #dataNote that stack operations are examples of indirect addressing, so the upper 128 bytes of data RAM are available as stack space.Timer 0 and 1Timer 0 and Timer 1 in the AT89C52 operate the same way as Timer 0 and Timer 1 in the AT89C51.Timer 2Timer 2 is a 16-bit Timer/Counter that can operate as either a timer or an event counter. The type of operation is selected by bit C/T2 in the SFR T2CON.Timer 2 has three operating modes: capture, auto-reload (up or down counting), and baud rate generator. The modes are selected by bits in T2CON, as shown in Table 3.Timer 2 consists of two 8-bit registers, TH2 and TL2. In the Timer function, the TL2 register is incremented every machine cycle. Since a machine cycle consists of 12 oscillator periods, the count rate is 1/12 of the oscillator frequency.In the Counter function, the register is incremented in response to a 1-to-0 transition at its corresponding external input pin, T2. In this function, the external input is sampled during S5P2 of every machine cycle. When the samples show a high in one cycle and a low in the next cycle, the count is incremented. The new count value appears in the register during S3P1 of the cycle following the one in which the transition was detected. Since two machine cycles (24 oscillator periods) are required to recognize a 1-to-0 transition, the maximum count rate is 1/24 of the oscillator frequency. To ensure that a given level is sampled at least once before it changes, the level should be held for at least one full machine cycle.Capture ModeIn the capture mode, two options are selected by bit EXEN2 in T2CON. If EXEN2 = 0, Timer 2 is a 16-bit timer or counter which upon overflow sets bit TF2 in T2CON.This bit can then be used to generate an interrupt. If EXEN2 = 1, Timer 2 performs the same operation, but a 1-to-0 transition at external input T2EX also causes the current value in TH2 and TL2 to be captured into RCAP2H and RCAP2L, respectively. In addition, the transition at T2EX causes bit EXF2 in T2CON to be set. The EXF2 bit, like TF2 can generate an interrupt. The capture mode is illustrated in Figure 1.Auto-reload (Up or Down Counter)Timer 2 can be programmed to count up or down when configured in its 16-bit auto-reload mode. This feature is invoked by the DCEN (Down Counter Enable) bit located in the SFR T2MOD. Upon reset, the DCEN bit is set to 0 so that timer 2 will default to count up. When DCEN is set, Timer 2 can count up or down, depending on the value of the T2EX pin.Figure 2 shows Timer 2 automatically counting up when DCEN = 0. In this mode, two options are selected by bit EXEN2 in T2CON. If EXEN2 = 0, Timer 2 counts up to 0FFFFH and then sets the TF2 bit upon overflow. The overflow also causes the timer registers to be reloaded with the 16-bit value in RCAP2H and RCAP2L. The values in Timer in Capture ModeRCAP2H and RCAP2L are preset by software. If EXEN2 = 1, a 16-bit reload can be triggered either by an overflow or by a 1-to-0 transition at external input T2EX. This transition also sets the EXF2 bit. Both the TF2 and EXF2 bits can generate an interrupt if enabled.Setting the DCEN bit enables Timer 2 to count up or down, as shown in Figure 3. In this mode, the T2EX pin controls the direction of the count. A logic 1 at T2EX makes Timer 2 count up. The timer will overflow at 0FFFFH and set the TF2 bit. This overflow also causes the 16-bit value in RCAP2H and RCAP2L to be reloaded into the timer registers, TH2 and TL2, respectively.A logic 0 at T2EX makes Timer 2 count down. The timer underflows when TH2 and TL2 equal the values stored in RCAP2H and RCAP2L. The underflow sets the TF2 bit and causes 0FFFFH to be reloaded into the timer registers. The EXF2 bittoggles whenever Timer 2 overflows or underflows and can be used as a 17th bit of resolution. In this operating mode, EXF2 does not flag an interrupt.外文资料译文:8位8字节闪存单片机AT89C52主要性能●与MCS-51单片机产品兼容●8K字节在系统可编程Flash存储器●1000次擦写周期●全静态操作:0Hz~24Hz●三级加密程序存储器●256×8位内部存储器●32个可编程I/O口线●三个16位定时器/计数器●八个中断源●可编程串行通道●低功耗空闲和掉电模式功能特性描述AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K内置可编程闪存。
AT89C52单片机交通灯设计1
AT89C52单片机交通灯设计1AT89C52单片机交通灯设计1引言:交通灯是城市道路交通管理的重要组成部分,它将交通流量控制在适当的范围内,确保交通安全和交通效率。
本文将详细介绍AT89C52单片机交通灯设计的原理和实现过程。
一、设计原理:AT89C52单片机是一种常见的8位单片机,具有高度可编程的特性。
交通灯设计的基本原理是通过控制不同颜色的灯光的亮灭来指示交通的状态。
在设计中,我们将使用AT89C52单片机控制红、黄、绿三种颜色的LED灯的亮灭,以实现红灯停、黄灯等待和绿灯行的功能。
二、硬件设计:1.AT89C52单片机:作为控制中心,负责控制交通灯的状态。
2.LED灯:红黄绿三种颜色的LED灯分别表示红灯、黄灯和绿灯。
3.电阻:用于限流,防止LED灯烧坏。
4.开关:用于手动控制交通灯的状态,模拟实际交通情况。
三、软件设计:1.程序框图:交通灯设计的程序可以分为红灯、黄灯、绿灯三个状态,基本流程图如下所示:```流程图┌───────────────────┐│初始化程序││├─────┐│红灯亮│││├─────┐│红灯亮││││││││红灯灭││││││││黄灯亮││││││││黄灯灭││││││││绿灯亮││││││││绿灯灭││││├──►│││重复│││││└───────────────────┘││││▼```2.程序编写:(1)首先定义端口,将LED灯的引脚连接到AT89C52单片机的端口上。
(2)在主函数中,设置红灯亮的状态,即将红灯的引脚设置为高电平。
(3)使用延时函数,使红灯亮一段时间后再灭。
(4)设置黄灯亮的状态,即将黄灯的引脚设置为高电平。
(5)使用延时函数,使黄灯亮一段时间后再灭。
(6)设置绿灯亮的状态,即将绿灯的引脚设置为高电平。
(7)使用延时函数,使绿灯亮一段时间后再灭。
(8)进入重复步骤,循环运行。
四、调试与测试:五、总结:1.AT89C52单片机数据手册2.《单片机原理与应用》。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录1 交通信号灯控制系统设计任务和性能指标 (1)设计任务 (1)性能指标 (1)2 交通信号灯控制系统设计方案 (1)设计思路 (1)设计思路 (1)功能设计 (2)总体设计 (2)通行方案设计 (2)}硬件设计方案 (4)软件设计方案 (4)3 交通信号灯控制系统硬件设计 (5)系统硬件框图 (5)单元电路设计 (5)单片机最小系统 (5)信号灯显示电路 (7)倒计时显示电路 (8)按键操作电路 (8)4 交通信号灯控制系统程序设计 (8)-理论基础知识 (8)定时器原理 (8)软件延时原理 (9)中断原理 (9)主程序框图 (9)5 调试分析及所用器件 (10)调试环境 (10)所用芯片 (11)6 心得体会 (11)7 参考文献 (12)|8 附录 (13)附件1 程序清单 (13)附件2 系统仿真图 (16)摘要交通在人们的日常生活中占有重要的地位,随着人们社会活动的日益频繁,这点更是体现的淋漓尽致。
交通信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有明显效果。
近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术日益更新。
在实时检测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。
本系统采用单片机AT89C52为中心器件来设计交通信号灯控制器,系统实用性强、操作简单、扩展性强。
本设计系统就是由单片机最小系统、交通灯状态显示系统、LED 数码显示系统、复位电路和按键操作电路等几大部分组成。
系统除具有基本的交通信号灯功能外,还具有倒计时、时间调整和紧急情况处理等功能,较好的模拟实现了十字路口可能出现的状况。
\软件上采用KEIL C 编程,主要编写了主程序,LED数码管显示程序,中断程序,延时程序等。
经过整机调试,实现了对十字路口交通灯的模拟。
关键字:AT89C52 交通灯PROTUES 中断程序1 交通信号灯控制系统设计任务和性能指标设计任务利用单片机设计一个十字路口交通信号灯控制系统,该交通信号灯控制器由一条主干道和一条支干道汇合成十字路口,在每个入口处设置红、绿、黄三色信号灯,红灯亮禁止通行,绿灯亮允许通行,黄灯亮则给行驶中的车辆有时间停在禁行线外,并有倒计时系统显示信号灯转换时间。
用红、绿、黄发光二极管作信号灯,两位八段数码管显示时间来控制交通信号灯的变化。
模拟框图如图1所示。
图1 交通信号灯模拟图性能指标-(1)东西和南北方向的车辆交替通行,任意时刻只有一个方向通行,以黄灯闪烁来转换。
(2)系统开始运行时设置每次放行10秒,其中有2秒是黄灯闪烁提醒行人和车辆禁止通行。
(3)通行时间可在0~99秒内任意设置。
(4)有紧急情况处理功能,比如:有急救车辆通行时,暂时禁止其他车辆通行。
2 交通信号灯控制系统设计方案设计思路设计思路(1)分析目前交通路口的基本控制技术以及各种通行方案,并以此为基础提出自己的交通控制的初步方案。
(2)确定系统交通控制的总体设计,包括,十字路口具体的通行禁行方案设计以及系统应拥有的各项功能,在这里,本设计除了有基本的交通功能,还增加了倒计时显示提示,基于实际情况,又增加了紧急状况处理和通行时间可调这两项特殊功能。
(3)选择器件,大体分配各个器件及模块的基本功能要求,设计主控电路、显示电路,信号灯状态电路,按键电路等。
:(4)进行软件系统的设计,对于本系统,本人采用单片机C语言编写,对单片机内部结构和工作情况做了充足的研究,在深入了解了定时器,中断以及延时原理后,完成了软件的编写。
功能设计本设计能模拟基本的交通控制系统,用红绿黄灯表示禁行,通行和等待的信号发生,还能进行倒计时显示,通行时间调整和紧急情况处理等功能。
(1)基本功能采用红绿黄三种颜色的LED灯的亮灭来模拟信号灯,从而达到控制车辆的通行。
(2)倒计时显示功能采用两位八段数码管来显示时间,来告知行人和车辆通行时间和要等待的时间。
(3)时间可调功能通过键盘对时间进行手动设置,增加了人为的可控性,避免车少长等和减缓车多交通堵塞的麻烦。
(4)紧急处理<交通路口出现紧急状况在所难免,如特大事件发生,救护车等急行车通过等,我们都必须尽量允许其畅通无阻,由此在交通控制中增设禁停按键。
总体设计单片机设计交通灯控制系统,可用单片机直接控制信号灯的状态变化,基本上可以指挥交通的具体通行,接入LED数码管就可以显示倒计时以提醒行使者,更具人性化。
本系统在此基础上,加入了紧急情况处理与时间调整功能。
通行方案设计十字路口分为东西向和南北向,在任一时刻只有一个方向通行,另一方向禁行,持续一定时间,经过短暂的过渡时间,将通行禁行方向对换。
其具体状态如图2所示。
说明:黑色表示亮,白色表示灭。
交通状态从状态1开始变换,直至状态4然后循环至状态1,周而复始。
S1 东西通行S2 东西禁行过渡状态S3 南北通行S4 南北禁行过渡状态图2 交通信号灯状态@通过对具体的十字路口交通信号灯状态的演示分析,可以把这四个状态归纳如下:状态S1:东西方向绿灯亮,允许通行,南北方向红灯亮,禁止通行;状态S2:东西方向绿灯转黄灯闪烁,允许通行,南北方向红灯亮,禁止通行;状态S3:东西方向红灯亮,禁止通行,南北方向绿灯亮,允许通行;状态S4:东西方向红灯亮,禁止通行,南北方向绿灯转黄灯闪烁,允许通行;依据上述分析,东西的通行时间为状态S1和状态S2的时间之和,南北的通行时间为状态S3和状态S4的时间之和,因此可以列出各个路口灯的状态转换如表1所示(其中逻辑值“1”代表执行通行,逻辑值“0”代表禁止通行,逻辑值“L”代表绿灯转黄灯):表1 交通灯状态转换表状态时间东西,南北硬件设计方案本系统选用Atmel 公司的AT 系列单片机AT89C51为中心器件设计交通信号灯控制器,实现了红绿灯循环点亮,绿灯变红灯中间为黄灯闪烁警示的功能。
每个方向采用红绿黄三色的LED 灯的亮灭来模拟信号灯,采用两位八段共阳数码管,显示十字路口通行或禁止的剩余时间,通过键盘对时间进行手动设置,增加了人为的可控性,避免车少长等和减缓车多交通堵塞的麻烦,同时增设了紧急情况处理按键,因为交通路口出现紧急状况在所难免,如特大事件发生,救护车等急行车通过等,我们都必须尽量允许其畅通无阻。
所设计的系统硬件框图如图3所示。
图3 系统硬件框图软件设计方案-STC80C51单片机最小系统 } LED 数码管显示 数码管显示 按键控制电路设计要求为:首先南北方向红灯、东西方向绿灯亮,南北方向红灯10秒、东西方向绿灯8秒,相应的数码管显示对应的数字并读秒,同时南北方向红色的二极管和东西方向的绿色二极管接通点亮显示,当东西方向的绿灯时间到,则东西方向的绿灯转为黄灯,同时数码管显示黄灯的时间2秒,东西方向的黄色二极管接通点亮,此时南北方向的红灯不变。
南北方向的红灯和东西方向的黄灯时间同时到,此时南北方向的红灯跳转为绿灯,时间同样为8秒,东西方向有黄灯跳转为红灯,时间为10秒。
当南北方向的绿灯时间到,南北绿灯跳转为黄灯,东西方向的红灯不变,当南北方向的黄灯和东西方向的红灯时间到,南北方向的黄灯跳转为红灯,东西方向的红灯跳转为绿灯。
进入开始的状态,循环执行。
此外还利用单片机的中断设计了紧急情况处理和时间调整的功能。
根据设计要求,程序框图如图4所示。
软件采用KEIL C语言完成。
软件设计可以分为以下几个功能模块:图4 程序结构框图3 交通信号灯控制系统硬件设计系统硬件框图根据设计的要求,单片机选用AT89C52,其内部带有8KB的FLASH ROM,设计时无需外接程序存储器,为设计和调试带来极大的方便。
四个方向各采用三个不同色的LED 灯和1个两位的数码管显示,来实现该方向的指示灯的点亮时间倒计时。
按键可以根据系统的需要进行操作。
*图5 系统硬件框图单元电路设计单片机最小系统?对51系列单片机来说,单片机要正常工作,必须具有五个基本电路,也称五个工作条件:1、电源电路,2、时钟电路,3、复位电路,4、程序存储器选择电路,5、外围电路。
因此,单片机最小系统一般应该包括单片机、晶振电路、复位电路、外围电路等,如下面的框图所示:图6单片机最小系统框图(1)电源电路设计单片机芯片的第40脚为正电源引脚VCC,一般外接+5V电压。
第20脚为接地引脚GND,常见电源电路设计如下图7所示:图7 电源设计(2)时钟电路设计单片机是一种时序电路,必须要有时钟信号才能正常工作。
单片机芯片的18脚(XTAL2)、19脚(XTAL1)分别为片内反向放大器的输出端和输入端,只要在18脚(XTAL2)和19脚(XTAL1)之间接上一个晶振,再加上2个20PF的瓷片电容即可构成单片机所需的时钟电路,本设计就采用图8所示时钟电路。
图8 时钟电路%此外,当采用外部时钟时,19脚(XTAL1)接地,18脚(XTAL2)接外部时钟信号。
(3)复位电路设计单片机芯片的第9脚RST(Reset)是复位信号输入端。
单片机系统在开机时或在工作中因干扰而使程序失控,或工作中程序处于某种死循环状态等情况下都需要复位。
复位的作用是使中央处理器CPU以及其他功能部件都恢复到一个确定的初始状态,并从这个状态开始工作。
AT89C52单片机的复位靠外部电路实现,信号从RST引脚输入,高电平有效,只要保持RST引脚高电平2个机器周期,单片机就能正常复位。
常见的复位电路有上电复位电路和按键复位电路二种,如图9所示。
本设计采用手动复位电路。
A.上电复位B.手动复位图9 复位电路(4)程序存储器选择电路单片机芯片的第31脚(EA)为内部与外部程序存储器选择输入端。
当EA引脚接高电平时,CPU先访问片内8KB的程序存储器,执行内部程序存储器中的指令,当程序计数器超过0FFFH时,将自动转向片外程序存储器,既是从1000H地址单元开始执行指令;当EA引脚接低电平时,不管片内是否有程序存储器,CPU只访问片外程序存储器。
AT89S52内部有8KB的程序存储器,所以根据该脚的引脚功能,只要将该脚接上高电平,才能先从片内程序存储器开始取指令。
常见的程序存储器选择电路就是将第31脚直接接到正电源上。
(5)外围电路的设计外围电路的设计主要依据项目要实现的功能,本项目要实现的功能是用单片机控制交通信号灯。
-交通信号灯显示电路本系统采用LED作为信号灯来使用,单片机的I/O口直接与LED连接。
在十字路口的四组红、黄、绿三色交通灯中,东西方向的同色灯连接在一起,南北方向的同色灯也彼此连接,受单片机AT89C52的—控制。
12个LED指示灯采用共阳极的连接方式,因此I/O口输出低电平时,与之相连的LED会亮,输出高电平时,LED熄灭。