




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1目录摘要.3第一章系统简介.41.1设计目的.41.2设计思路.41.3定义解说.5第二章方案比较、设计与论证.62.1总体设计方案.62.2控制模块方案.62.3电源模块方案.62.4显示界面方案.72.4.1倒计时显示界面方案.72.4.2状态灯显示.7第三章硬件设计.73.1系统总体硬件方案论证.73.2STC89C52RC单片机简介.83.3单片机最小系统.93.3.1时钟电路.93.3.2.复位电路.103.3.3显示电路.103.4紧急通车电路模块.10第四章软件设计.114.1程序分析.114.2程序代码.11第五章结果分析.195.1软件仿真与结果分析.195.1.1.Proteus的仿真结果.195.1.2红绿灯状态转换过程:.205.1.3紧急状态.215.1.4双向车道.215.2硬件测试.22第六章总结.22第七章参考文献.222摘要交通信号灯是城市交通安全、有序、快速运行的重要保障。本文提出了一种基于单片机的交通信号灯控制系统的设计方案。该系统模拟现实中十字路口的通行指示,倒计时和紧急车辆强行通过等功能。采用STC89C52芯片为中心器件来设计交通灯控制电路,结合七段共阴极数码管显示时间的模块,交通灯显示模块,晶振电路,复位电路以及按键电路等模块组成。通过软件仿真与硬件调试,实现红、黄、绿灯燃亮时间以及双位数码管显示倒计时,三种颜色灯交替点亮以及紧急情况下的中断处理功能。本系统性价比高,实用性强,操作简单,功能全面,有广泛的应用前景。关键字交通信号灯;STC89C52单片机;紧急通行;中断处理3第1章系统简介1.1设计目的了解交通灯管理的基本工作原理,熟练掌握STC89C52的工作原理,熟悉STC89C52单片机并行接口的各种工作方式和应用,并了解计数器/定时器的工作方式,掌握多位LED显示问题的解决。1.2设计思路(1)分析目前交通路口的基本控制技术以及各种通行方案,并以此为基础提出自己的交通控制的初步方案。(2)确定系统交通控制的总体设计,包括,十字路口具体的通行方案设计以及系统应拥有的各项功能,在这里,本设计除了有信号灯状态控制能实现基本的交通功能,还增加了倒计时显示提示。(3)进行显示电路,灯状态电路的设计和对各器件的选择及连接,大体分配各个器件及模块的基本功能要求。(4)进行软件系统的设计,对于本系统,本人采用C语言编写程序,对单片机内部结构和工作情况做了充足的研究,了解定时器,中断以及延时原理,总体上完成了软件的编写。41.3定义解说(图一)5第2章方案比较、设计与论证2.1总体设计方案根据十字路口交通灯的要求,可将本系统分为三个模块,第一模块是控制模块,主要负责整个系统的控制和运算,从而使各模块正常工作,第二个模块式显示模块包括LED灯和数码管;第三是电源模块,给各模块提供电源,让各模块工作。其系统设计结构如图:(图二)2.2控制模块方案采用单片机STC89C52作为控制器。单片机运算能力强,软件编程灵活,自由度大。在指令系统、硬件结构和片内资源上与标准8052单片机完全兼容,使用时容易掌握;采用STC89C52单片机稳定可靠、应用广泛、通用性强。2.3电源模块方案采用单片机控制模块提供电源,使用电池盒供电。该方案的优点是系统简明扼要,节约成本;缺点是输出功率不高。62.4显示界面方案2.4.1倒计时显示界面方案采用全数码管显示。这种方案只显示有限的符号和数码字符,简单,方便。2.4.2状态灯显示该系统要求完成状态灯显示的功能。求于要求简单,我们把各个路口的红灯、绿灯和黄灯设成直行和左拐两个通行方式所共有,也就是说,一个路口只需三个状态灯,一个共有的绿灯,一个共有的红灯,一个共有的黄灯。7第三章硬件设计3.1系统总体硬件方案论证本设计以单片机为控制中心,采用模块化设计,共分以下几个功能模块:单片机控制系统、状态显示模块、倒计时模块、电源模块。经上述各模块的方案选择与论证,十字路口交通灯控制系统的控制芯片选用单片机STC89C52作为整个系统的核心控制器件,主要负责整个系统工作的控制和运算,从而使各模块正常工作;采用七段LED数码管和LED灯作为显示器件,用七段LED数码管完成倒计时显示,用LED灯作为状态灯指示功能;以电池组供电作为系统电源部分,可对各个模块供电且便于演示。单片机作为整个硬件系统的核心,它既是协调整机工作的控制器,又是数据处理器。它由按键电路、复位电路、晶振电路等组成。(图三)3.2STC89C52RC单片机简介STC89C52RC是STC89系列单片机中应用较为广泛的一种型号,芯片内部有8KB的闪速存储器FlashROM。内部的8KB存储器用于存放可编程控制器监控程序。STC89C52RC单片机的40条引脚按功能来分,可以分为3部分,电源及时钟引脚、控制引脚和输入/输出引脚。8(图四)89C52单片机引脚功能介绍:主电源及时钟引脚此类引脚包括电源引脚Vcc、Vss、时钟引脚XTAL1、XTAL2。(1)Vcc(40脚):接+5V电源,为单片机芯片提供电能。(2)Vss(20脚)接地。(3)XTAL1(18脚)在单片机内部,它是一个反向放大器的输入端,该放大器构成了片内的振荡器,可提供单片机的时钟控制信号。(4)XTAL2(19脚)在单片机内部,接至上述振荡器的反向输出端。控制引脚此类引脚包括RESET(即RSR/VPD)、ALE、PSEN、EA,可以提供控制信号,有些具有复用功能。(1)RSR/VPD(9脚):复位信号输入端,高电平有效,当振荡器运行时,在此引脚加上两个机器周期的高电平将使单片机复位(REST)。复位后应使此引脚电平保持为不高于0.5V的低电平,以保证单片机正常工作。9掉电期间,此引脚可接上备用电源(VPD),以保持内部RAM中的数据不丢失。当Vcc下降到低于规定值,而VPD在其规定的电压范围内(50.5V)时,VPD就向内部RAM提供备用电源。(2)ALE/PROG(30脚):ALE为地址锁存允许信号。当单片机访问外部存储器时,ALE(地址锁存允许)输出脉冲的下降沿用于锁存16位地址的低8位。即使不访问外部存储器,ALE端仍有周期性正脉冲输出,其频率为振荡器频率的1/6。但是每当访问外部数据存储器时,在两个机器周期中ALE只出现一次,即丢失一个ALE脉冲。ALE端可以驱动8个LSTTL负载。(3)PSEN(29脚):程序存储器允许输出控制端。此输出为单片内访问外部程序存储器的读选通信号。在从外部程序存储器取指令(或取常数)期间,每个机器周期均PSEN两次有效。但在此期间,每当访问外部数据存储器时,这两次有效的PSEN信号将不会出现。PSEN同样可以驱动8个LSTTL负载。(4)EA(31脚):EA功能为内外程序存储器选择控制端。当EA端保持高电平时,单片机访问内部程序存储器,但在PC(程序计数器)值超过0FFFH时将自动转向执行外部程序存储器内的程序。输入/输出引脚此类引脚包括P0口、P1口、P2口和P3口。3.3单片机最小系统3.3.1时钟电路XTAL1是片内振荡器的反相放大器输入端,XTAL2则是输出端,使用外部振荡器时,外部振荡信号应直接加到XTAL1,而XTAL2悬空。内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12MHz,时钟频率就为6MHz。晶振的频率可以在1MHz-24MHz内选择。电容取30PF左右。系统的时钟电路设计是采用的内部方式,即利用芯片内部的振荡电路。AT89单片机内部有一个用于构成振荡器的高增益反相放大器。引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。这个放大器与作为反馈元件的片外晶体谐振器一起构成一个自激振荡器。外接晶体谐振器以及电容C1和C2构成并联谐振电路,接在放大器的反馈回路中。对外接电容的值虽然没有严格的要求,但电容的大小会影响震荡器频率的高低、震荡器的稳定性、起振的快速性和温度的稳定性。因此,此系统电路的晶体振荡器的值为11MHz,电容应尽可能的选择陶瓷电容,电容值约30F。在焊接刷电路板时,晶体振荡器和电容应尽可能安装得与单片机芯片靠近,以减少寄生电容,更好地保证震荡器稳定和可靠地工作。3.3.2.复位电路在振荡器运行时,有两个机器周期(24个振荡周期)以上的高电平出现在此引腿时,将使单片机复位,只要这个脚保持高电平,芯片便循环复位。复位后P0P3口均置1引脚表现为高电平,程序计数器和特殊功能寄存器SFR全部清零。复位是由外部的复位电路来实现的。片内复位电路是复位引脚RST通过一个斯密特触发器与复位电路相连,斯密特触发器用来抑制噪声,它的输出在每个机器周期的S5P2,由复位电路采样一次。复位电路通常采用上电自动复位和按钮复位两种方式,此电路系统采用的是上电与按钮复位电路。复10位电路如下图所示:(图五)3.3.3显示电路显示器普遍地用于直观地显示数字系统的运行状态和工作数据,点亮显示器的方法有静态和动态两种。我们的用的是动态,所谓动态显示,就是轮流点亮各位显示器,该方法只需一个8位段输出口和一个8位扫描输出,后者的作用是依次接通各位LED。动态显示需要较大驱动电流,故在输出口尚需接加驱动器。显示器的亮度既同驱动电流有关,也同点亮时间与间隔时间的比例有关。调整电流和时间参数,可实现亮度较高且较稳定的显示。显示器(LED数码管)由7条线段围成8字型,每一段包含一个发光二极管。外加正向电压时二极管导通,发出清晰的光。只要按规律控制各发光段亮、灭,就可以显示各种字形或符号。LED数码管有共阳、共阴之分。本系统采用的是两位共阴极数码管。3.4紧急通车电路模块为了实现此功能,利用单片机中断达到目的。利用一个手动按钮开关接至单片机外部中断0,同时在软件设计时将其设定为最高优先级,当其按下时,四方全为红灯,当其计时完了之后,回到原来的位置进行执行。再利用一个手动按钮接至单片机外部中断1当其按下时,如果是东西道是红灯,而南北道是绿灯,则将其置为东西是绿灯,南北是红灯;如果是东西道是绿灯,而南北道是红灯,则将其置为东西是红灯,南北是绿灯。两种情况都是执行完后,回到断点处继续执行。11第4章软件设计4.1程序分析本设计采用C语言进行软件编程。文件中包含了初始化函数init()、显示函数display()、键盘扫描Keyscan()、中断处理timer0()interrupt1和延时delay()等子程序块;主函数通过直接或间接的调用各个子程序块,使整个交通信号灯控制系统实现红、黄、绿灯燃亮时间以及双位数码管显示倒计时,三种颜色灯交替点亮以及紧急情况下的中断处理功能。延时程序键盘扫描程序初始化程序定时器0中断程序中断程序显示程序4.2程序代码#include#defineuintunsignedint#defineucharunsignedcharucharcount=20;/实现1s中断次数的统计ucharntime=20,wtime=40,stime=60,etime=80;/分别定义四个方向数码管显示的初始值ucharn0_ntime=0,w0_wtime=0,s0_stime=0,e0_etime=0;ucharn1_ntime=0,w1_wtime=0,s1_stime=0,e1_etime=0;bitint0=0;bitint1=0;ucharP00,P30,P01,P31;uchartab=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/-数码管动态显示的延时子程序voiddelayms()uchari,j;for(i=4;i0;i-)for(j=250;j0;j-);/-程序的初始化设置voidinit()P0=0x00;/初始化I/O口的状态12P1=0x00;P2=0xff;P3=0x0f;TMOD=0x01;/初始化T0口的工作状态和工作方式以及初始值TH0=(65536-50000)/256;TL0=(65536-50000)%256;EA=1;/中断允许和中断申请开启ET0=1;EX0=1;EX1=1;IT1=1;/外部中断的触发方式,负跳变IT0=1;TR0=1;P0=P00=0x0c;/在基本状态1下红绿灯的初始值P3=P30=0x9f;P01=0x4C;P31=0x8f;n0_ntime=ntime;w0_wtime=wtime;s0_stime=stime;e0_etime=etime;n1_ntime=s1_stime=40;w1_wtime=e1_etime=80;/-显示子程序,显示数码管的状态voiddisplay()ucharten,ge;/定义数码管十位及个位的变量ten=ntime/10;/北路口数码管显示控制ge=ntime%10;P2=0xfe;P1=tabten;delayms();P2=0xfd;P1=tabge;delayms();ten=wtime/10;/东路口数码管显示控制ge=wtime%10;P2=0xfb;13P1=tabten;delayms();P2=0xf7;P1=tabge;delayms();ten=stime/10;/南路口数码管显示控制ge=stime%10;P2=0xef;P1=tabten;delayms();P2=0xdf;P1=tabge;delayms();ten=etime/10;/西路口数码管显示控制ge=etime%10;P2=0xbf;P1=tabten;delayms();P2=0x7f;P1=tabge;delayms();voidn_yellow()if(ntime!=0)/判断北路口的时间是否为零switch(ntime)case5:case3:/北路口的黄灯亮case1:P0=P00=0x0a;P3=P30=0x9f;break;case4:/北路口的黄灯灭case2:P0=P00=0x08;P3=P30=0x9f;break;elsen0_ntime=ntime=80;P0=P00=0x21;P3=P30=0x9f;14voidw_yellow()if(wtime!=0)switch(wtime)case5:case3:case1:P0=P00=0x11;P3=P30=0x9f;break;case4:case2:P0=P00=0x01;P3=P30=0x9f;break;elsew0_wtime=wtime=80;P0=P00=0x49;P3=P30=0x8f;voids_yellow()if(stime!=0)switch(stime)case5:case3:case1:P0=P00=0x89;P3=P30=0x8f;break;case4:case2:P0=P00=0x09;P3=P30=0x8f;break;elses0_stime=stime=80;P0=P00=0x09;P3=P30=0x3f;voide_yellow()15if(etime!=0)switch(etime)case5:case3:case1:P0=P00=0x09;P3=P30=0x5f;break;case4:case2:P0=P00=0x09;P3=P30=0x1f;break;elsee0_etime=etime=80;P0=P00=0x4c;P3=P30=0x8f;voidsn_yellow()if(ntime!=0)switch(ntime)/南北路口时间部位零的时候,黄灯的显示控制case5:/路口的黄灯亮case3:case1:P0=P01=0x8a;P3=P31=0x8f;break;case4:case2:P0=P01=0x08;P3=P31=0x8f;break;elses1_stime=n1_ntime=stime=ntime=80;/南北路口的时间改变为80P0=P01=0x21;P3=P31=0x3f;/进入第二状态voidwe_yellow()if(wtime!=0)switch(wtime)16case5:case3:case1:P0=P01=0x11;P3=P31=0x5f;break;case4:case2:P0=P01=0x01;P3=P31=0x1f;break;elsew1_wtime=e1_etime=wtime=etime=80;P0=P01=0x4c;P3=P31=0x8f;voidmain()init();while(1)display();/-定时器T0中断程序入口voidtimer0()interrupt1using0TR0=0;/T0定时器关闭,及初始化TH0=(65536-50000)/256;TL0=(65536-50000)%256;count-;/对定时器T0中断次数的计数if(count!=0)/判断1s是否到了TR0=1;elsecount=20;ntime-;wtime-;stime-;etime-;/各路口数码管时间-1if(int1=0)n0_ntime=ntime;17w0_wtime=wtime;s0_stime=stime;e0_etime=etime;n_yellow();w_yellow();s_yellow();e_yellow();elsen1_ntime=ntime;w1_wtime=wtime;s1_stime=stime;e1_etime=etime;sn_yellow();we_yellow();TR0=1;voidintr1()interrupt2using0TR0=0;TH0=0x3c;TL0=0xb0;count=20;int1=int1;if(int1!=0)P0=P01;P3=P31;ntime=n1_ntime;wtime=w1_wtime;stime=s1_stime;etime=e1_etime;elseP0=P00;P3=P30;ntime=n0_ntime;18wtime=w0_wtime;stime=s0_stime;etime=e0_etime;TR0=1;voidintr0(void)interrupt0using0TR0=0;int0=int0;if(int0!=0)P0=0x09;P3=0x9f;elseif(int1=0)P0=P00;P3=P30;elseP0=P01;P3=P31;TH0=0x3c;TL0=0xb0;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 化学●广东卷丨2021年广东省普通高中学业水平选择性考试化学试卷及答案
- 笔线勾勒的技法变化丰富美学韵味中国文化精粹06课件
- 24h回顾法孙芝杨07课件
- 《三级医院评审标准(2025年版)》
- 风景园林基础考研资料试题及参考答案详解一套
- 《风景园林招投标与概预算》试题A附参考答案详解(能力提升)
- 2023年上海市上海市松江区永丰街道招聘社区工作者真题附详细解析
- 2024年山东华兴机械集团有限责任公司人员招聘笔试备考题库及答案详解(有一套)
- 无锡市2024-2025学年三年级下学期数学期末试题一(有答案)
- 2023国家能源投资集团有限责任公司第一批社会招聘笔试备考题库及参考答案详解1套
- 部编人教版高中语文必修下册知识梳理
- 2024年陕西普通高中学业水平考试通用技术试题
- 腰椎间盘脱出伴坐骨神经痛的健康宣教
- 供水泵(多级立式离心泵)培训课件2016424
- 山东2022年高考英语试题及答案
- 中国国防历史与国防建设课件
- 2022届高三化学一轮复习实验强基练12无机物制备类探究实验含解析
- 春香传(主演:王志萍-陈娜君)
- 2022制造业数据治理白皮书
- 仪器校准管理课件
- 同济大学信纸
评论
0/150
提交评论