交通灯控制器的方案设计书 .docx
精品名师归纳总结交通灯掌握器的设计内容摘要在日常生活中,交通灯作为治理交通、调协车辆的一个便利的手段,起着很大的作 用。各种交通工具、行人都要依据交通灯的变化来打算是否前行,通行的时间的规定和谐了它们的步伐,极大的削减了由于交通纷乱引起的各种事故的发生。因此,一个完善的交通系统中,交通灯是必不行少的设备,一个完善的交通灯程序会更有效的治理当前道路中显现的实际情形,使车辆、行人的行进变得更顺畅、更和谐。随着我国国民经济的快速进展,我国机动车辆进展快速,而城镇道路建设由于历史等各种缘由相对滞后,交通拥挤和堵塞现象经常显现。如何利用当今运算机和自动掌握技 术,有效的疏导交通,提高城镇交通路口的通行才能,削减交通事故是很值得讨论的一个课题。目前,国内的交通灯一般设在十字路口,在醒目位置用红、绿、黄三种颜色的指示灯加上一个倒计时的显示器来掌握行车。本设计采纳 STC89C52为核心器件来模拟十字路口交通灯状态显示及倒计时显示,系统有用性强、操作简洁、扩展性强。系统由时钟电路、复位电路、STC89C52单片机、交通灯状态显示、倒计时显示、蜂鸣器报警电路等组成。关键字 :交通灯,单片机 , 倒计时显示、蜂鸣器报警电路目录1. 设计任务及要求 . 42. 方案论证及挑选 43.1 复位方案43.2 输入方案43. 系统框图 .44. 单元电路设计 . 5 5.1 时钟电路55.2 复位电路55.3 交通灯状态显示电路65.4 倒计时显示电路75.5 蜂鸣器报警电路75. 电路工作原理 . 86. 电路板的组装调试 . 8 6.1 原理图的设计86.2 电路板制作过过程86.3 电路板调试96.3.1 调试仪器9可编辑资料 - - - 欢迎下载精品名师归纳总结6.3.2 调试方法96.4 调 试 所 遇 问 题 及 问 题 解决97. 设计电路优缺点及改进看法 .98. 总结 . 10 谢辞 . 11 参考文献 . 11附录. 121. 设计任务及要求1. 把握单片机最小系统的设计方法2. 把握数码管动态扫描方法,通过数码管显示红绿灯倒计时时间3. 把握单片机内部定时器 / 计数器工作原理,通过定时器产生秒定时4. 十字路口红黄绿灯分别用3 种颜色的发光二极管指示,且红灯亮30 秒,黄灯亮 3秒,绿灯亮 30 秒5. 黄灯亮 3 秒,期间蜂鸣器响三下报警2. 方案论证及挑选2.1 复位方案复位方式有:按键复位和软件复位,考虑到程序的简洁,防止冗长,本设计采纳上电自动复位兼手动复位方式,在芯片的端口外接复位电路2.2 输入方案方案一:采纳 8155 扩展 I/O显示,该方案优点是使用敏捷可编程,并且有RAM、计数器,可供应较多 I/O ,但电路构成较复杂,操作起来稍繁琐,从节约材料及电路设计图尽量简洁明白的角度不使用此方案方案二:从设计任务及要求来看,显示通行时间用两位数码管,对于8 段数码管,占用8 个单片机 I/O 口,另外占用 2 个 I/O 口对两位显示进行协作,交通灯用两组红黄绿灯,需6 个端口掌握,选用 STC89C52为中心处理器,其 I/O 端口作为输出时,具有较大的电流吸取才能,因此可选用共阴数码管,由单片机的 I/O 口就可直接驱动,能简化硬件电路设计, 应选方案二3. 系统框图可编辑资料 - - - 欢迎下载精品名师归纳总结LED 显示电路时钟电路数码管倒计时显示电路可编辑资料 - - - 欢迎下载精品名师归纳总结可编辑资料 - - - 欢迎下载精品名师归纳总结复位电路STC89C52蜂鸣器 报警电路可编辑资料 - - - 欢迎下载精品名师归纳总结4. 单元电路的设计及参数运算4.1 时钟电路可编辑资料 - - - 欢迎下载精品名师归纳总结单片机可以看成是在时钟驱动下的时序规律电路, 单片机在工作过程中 , 全部工作都是在时钟信号掌握下进行的 , 每执行一条指令 ,CPU的掌握器都要发出一系列特定的掌握信号。时钟是始终在跳变的,信号只是在高电平或者低电平的时候有效,或者是在电平由高变低(下降沿)、有低变高(上升沿)的时候才有效。所以时钟电路的主要作用是向主板上的各功能芯片和 ISA、PCI 等总线发送时钟信号主板上,使这些芯片在时钟信号的掌握下和谐工作。采纳内部振荡方式,在引脚 XTAL1和 XTAL2外接晶体振荡器即可构成。由于单片机内部有一个高增益反相放大器,当外接晶振后,就构成了自激振荡器,并产生振荡时钟脉冲。两个电容器稳固振荡频率,电容取值在20-60PF 间,起快速起振的作用。其电路如图1图 1. 单片机时钟电路4.2 复位电路复位在上电或复位过程中,掌握CPU的复位状态:这段时间内让 CPU保持复位状态,而不是一上电或刚复位完毕就工作,防止CPU发出错误的指令、执行错误操作,也可以提高电磁兼容性能。只要在RESET复位输入引脚上接一电容至 Vcc 端,下接一个电阻到的即可。上电复位的工作过程是在加电时,复位电路通过电容加给RESET端一个短暂的高电平信号,此高电平信号随着 Vcc 对电容的充电过程而逐步回落,即RST端的高电平连续时间取决于电容的充电时间。为了保证系统能够牢靠的复位,RST 端的高电平信号必需维护足够长的时间。复位电路基本功能是系统上电时供应复位信号,直至系统电源稳固后,撤销复位信号。为可靠起见,电源稳固后仍要经肯定得延时才撤销复位信号,以防电源开关或电源插头分- 合过程中引起的抖动而影响复位。 C3、R7 构成时间常数: 22uf*1K=0.022s 。采纳该方式可防抖动,电容 C3和 R7的组合使 RESET只送入一个高电平的脉冲,电路如图2:图 2. 上电自动复位兼手动复位4.3 交通灯状态显示电路发光二极管具有单向导电性,通过5mA左右电流,一般掌握在 3-20mA 之间,因此需串联限可编辑资料 - - - 欢迎下载精品名师归纳总结流 电 阻。 发光 二极 管发 光时 , 两 端 电压 约为 1.5V , 故限流电 阻值为: ( 5-1.5 )/3.5mA=1K,电路如图 3:图 3 交通灯状态显示电路4.4 倒计时显示电路该显示装置选用八段数码管来显示交通灯转换的倒计时间,数码管采纳动态扫描方式, 依据要求,需要两个数码管,STC89C52 单片机的 I/O 作为输出时,具有较强吸取电流才能,因此可以选用共阴型数码管,由单片机的I/O 就可以直接驱动,从而简化硬件电路的设计。四个路口倒计时显示在同一时刻显示相同的数字,期中P0 口用于接段选, P2.0、P2.1用于位选。 P0 口为双向三态 I/O 口,每个口可独立掌握,内部没有上拉电阻,为高阻态,该组 I/O 在使用时必需外接上拉电阻。电路如图4 所示:图 4. 倒计时数码管显示电路4.5 蜂鸣器报警电路蜂鸣器工作电流比较大( 30-40mA),电路上的TTL 电平基本驱动不了蜂鸣器,需增加一个三极管进行电流放大。选用NPN型 S9014C128型号三极管,放大倍数200-600 倍,单片机管脚悬空时,输出电压略低于5V,故三极管基极电阻为:由4.95/R*200=30得 R=33K,电路如图 5 所示可编辑资料 - - - 欢迎下载精品名师归纳总结可编辑资料 - - - 欢迎下载精品名师归纳总结5. 电路工作原理图 5. 蜂鸣器报警电路可编辑资料 - - - 欢迎下载精品名师归纳总结本设计的硬件电路由主控部分(单片机STE89C5)2 、交通灯状态显示部分、倒计时显示部分(数码管)、复位电路及蜂鸣器报警电路组成。各部分相互协作,构成一个有机的统一体,从而实现交通灯掌握6. 电路板的组装调试电路设计步骤如下图所示:6.1 原理图的设计从元件库中选绘制原理图生成 PCB布 局 元 件择元件并布线打印 PCB熨 烫 、 腐焊接元件检查过程蚀、打孔设计过程:6.2 电路板制作(1) )熨烫:将热转印纸倒敷在铜板有铜的那一面,用电熨斗熨到铜板上,熨斗的温度不能太高,不能熨烫过久,防止油纸上面的膜粘到板子上,给腐蚀造成难度。(2) 腐蚀:熨烫好的铜板待冷却后,将印上电路图的铜版放入稀盐酸与双氧水配成的腐蚀液中,腐蚀过后擦掉墨线。(3) 打孔:要留意孔的尺寸,依据孔和元件的大小来挑选钻头的大小。(4) )焊接:放置元件,从比较矮的器件到比较高的器件。焊点不要太大,防止短路及虚焊。(5) 检查:检查是否虚焊、短路和断路,管脚位置是否正确。6.3 电路板调试6.3.1 调试仪器数字万用表1个可编辑资料 - - - 欢迎下载精品名师归纳总结直流稳压源 5V1个 下载器 STC1个6.3.2 调试方法6.3.2.1 硬件调试:(1) 目测:检查外部的各种元件或电路是否有断点(2) 万用表测试,用万用表复核目测中有疑问的连接点,在检测各电源线与的线之间是否短路(3) 加电检测:给电路板加电,检测全部插座或器件电源端是否符合要求的值(4) 联机检查,用单片机开发系统完成对系统的调试6.3.2.2 软件调试(1) 编程调试:用 Keil 编写程序, Protues仿真软件进行分模块初步调试(2) 仿真运行:仿真器与电路板联调。(3) 程序烧写:仿真运行正常后用编程器将.HEX 文件写入 89C52。(4) 脱机运行6.3.3 调试所遇问题及问题的解决1. 单片机上电后,数码管没有显示倒计时,刚开头怀疑是数码管不能正常工作所致,故单独编一程序向数码管赋值后能正常显示说明数码管并没有坏,从而确定是显示部分程序有误, 把其他模块程序屏蔽后,修改显示部分程序,发觉是没有选通位选。2. 上电后,蜂鸣器始终处于报警状态,由于单片机上电后输出高电平,而蜂鸣器报警电路接 P2.7 管脚,把 P2.7 管脚置低后,蜂鸣器不再报警。到黄灯状态时,再把 P2.7 置高,驱动蜂鸣器报警。7. 设计电路的优缺点及改进看法本设计硬件简洁明白,但只用了两位共阴数码管显示倒计时间,没有考虑到东西、南北方向状态切换时不同显示时间的情形。只能显示红绿,绿红,黄三种显示时间一样的状态,有用性低,应采纳四位数码管分别显示东西、南北方向倒计时,可实现显示时间不一样状态的倒计时,提高有用性。改进看法 :交通路口显现紧急状况在所难免,如特大大事发生,抢救车等急行车通过,我们都必需尽量答应其畅通无阻,究竟在这种清况下市分秒必争,因此在交通掌握中应增设禁停按键。8. 总结拿到课题后,开头着手设计,查阅了大量相关资料,结合课程设计中的指标要求进行了方案论证,确定了方案设计。将系统分为掌握模块、通行灯显示模块、倒计时显示模块、蜂鸣器报警模块。设计方案与元器件参数确定后开头选购元件,后进行硬件制作。在制作硬件的过程中,每制作一步都要检查这一步的正确性、牢靠性。硬件制作完毕后,先进行了静态测试,依据硬件电路图核对元器件型号、极性、安装是否正确,检查硬件电路连线是否与电路图一样,然后是通电分模块调试。硬件制作电路完后,采纳仿真器进行软件调试,遇到问题时,先检测硬件电路,对硬件电路排查完毕并确定无误后,对软件进行修改及再调试,得出正确软件部分。最终软硬件联调,将程序烧写到STC89C52单片机,脱机运行。本次设计让我学到了许多:第一必需具有的是细心和耐心,问题显现后必需分析问题,找出可能显现此问题的缘由,然后进行一一检测,进行多次修改后才能得到最终的结果。一个人的力气是有限的,要想把课程设计做的更好,就要学会参考资料,吸取别人的体会,让自己和别人的思想有机的结合起来,得出属于自己的灵感。经过两个星期的设计,翻阅大量的资料和编程可编辑资料 - - - 欢迎下载精品名师归纳总结调试,最终得到了自我比较中意的运行结果,可能程序和仿真仍有些许瑕疵,但是得到了所要求的功能以及良好的显示成效,所以设计仍是比较胜利的。这次的大工作量和编程的经受给了我许多的启示,有编程失败的懊丧和调试胜利一霎那的欣喜如狂,在这次汗水和欣喜的夹杂背后,是我对单片机的另一个熟悉,编程是很重要的一方面,而仿真可以将自己的程序验证出来,并开头和逐步把握了 proteus 这一仿真软件,收成颇丰。通过此次课程设计,使我得到了一次用专业学问、专业技能分析和解决问题全面系统的锤炼。使我在单片机的基本原理、单片机应用系统开发过程以及在常用编程设计思路技巧的把握方面都向前迈了一大步。设计过程显现了一些问题,但都是常见的小问题,如:代码中输入字母出错,双引号使用不是在英文输入状态下等,调试时显现反常,反常情形是常见问题,经调试修改都一一解决,把程序顺当完成,并实现其功能。综合课程设计,让我把以前学的学问得到巩固和进一步的提高熟悉,同时也发觉了自身许多的不足之处,在以后的学习中,我会不断完善自己。谢辞本次课设感谢学院的支配,让我在学习课本学问的同时,能够有这样的机会实践,感谢指导老师何峰的尽心指导和同学们的帮忙,使我可以顺当完成本次课设的任务,在此对老师和同学们赐予我的热心指导和帮忙表示深深的谢意。参考文献【1】白驹珩 雷晓平 单片运算机及其应用(其次版)高等训练出版社【2】郭天祥51单片机 C语言教程电子工业出版社【3】谭浩强 C 程序设计(第三版)清华高校出版【4】 综合电子论坛【5】 电子电路图站主函数程序框图可编辑资料 - - - 欢迎下载精品名师归纳总结定 时 器 T0初 始化 , 赋 倒 计 时 初值状 态 1 东 西 红 灯 , 南 北 绿 灯亮,倒计时 30 秒状态 2 东西黄灯,南北黄灯亮,倒计时 3 秒,蜂鸣器报警状态 3 东西绿灯,南北红灯亮,倒计时 30 秒源程序: #include<reg52.h> #define uint unsigned int#define uchar unsigned char uchar sw, gw, c。sbit wr=P10。sbit wy=P11。sbit wg=P12。sbit nr=P14。sbit ny=P15。sbit ng=P16。sbit bj=P27。sbit wei1=P20。sbit wei2=P21。可编辑资料 - - - 欢迎下载精品名师归纳总结uchar code table= 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71。void delaymsuint。void display。uchar djs,a,b,sw,gw。void dsq /定时器初始化,赋倒计时初值/TMOD=0x0。1TH0=65536-50000/256 。TL0=65539-50000%256。EA=1。ET0=1。TR0=1。djs=64 。void delaymsuint xms/延时函数 / uint i,j。fori=xms。i>0 。i- forj=110。j>0 。j-。void display1 /状态 1 东西红灯南北绿灯亮30 秒/wr=0,wy=1,wg=1。nr=1,ny=1,ng=0 。c=djs-33 。sw=c/10 。gw=c%10。 P0=tablesw。wei2=1。可编辑资料 - - - 欢迎下载精品名师归纳总结wei1=0。delayms10 。P0=tablegw 。wei1=1。 wei2=0。delayms10 。bj=0 。void display2 /状态 2 东西黄灯亮南北黄灯亮 3 秒,蜂鸣器报警 /wr=1,wy=0,wg=1。nr=1,ny=0,ng=1 。c=djs-30 。sw=c/10。gw=c%1。0 P0=tablesw。wei2=1。 wei1=0。delayms10 。P0=tablegw 。wei1=1。 wei2=0。delayms10 。bj=1 。delayms1000 。bj=0 。void display3 /东西绿灯亮南北红灯亮30 秒/wr=1,wy=1,wg=0。nr=0,ny=1,ng=1 。c=djs 。可编辑资料 - - - 欢迎下载精品名师归纳总结sw=c/10。gw=c%1。0 P0=tablesw。wei2=1。 wei1=0。delayms10 。P0=tablegw 。wei1=1。 wei2=0。delayms10 。bj=0 。void T0_timeinterrupt 1/中断实现 1 秒定时/TH0=65536-50000/256 。TL0=65539-50000%256。a+。ifa=20 a=0 。djs-。ifdjs>33 b=1。ifdjs>30&&djs<=33b=2。ifdjs>0&&djs<=30 b=3。ifdjs=0djs=63 。b=1。可编辑资料 - - - 欢迎下载精品名师归纳总结void main/主函数/dsq 。while1可编辑资料 - - - 欢迎下载精品名师归纳总结switch bcase1:display1。break 。 case2:display2。break 。 case 3: display3。break 。default: break。附录课程设计元器件清单示例可编辑资料 - - - 欢迎下载精品名师归纳总结序 号名称数 量单价备注1单片机 STC89C5212一位共阴数码管2课题:交通灯掌握器可编辑资料 - - - 欢迎下载精品名师归纳总结3单片机底座( 40 脚)14排阻 1K( 9 脚)15排针17电阻 1K88电阻 33K19电容 22uF110电容 30PF211晶振 12MHZ112发光二极管(红、黄、绿)3*213按键开关114三极管 NPN( S9014)115蜂鸣器116合计28附图1.元器件清单附图 2. 原理图可编辑资料 - - - 欢迎下载精品名师归纳总结114011098761212239210987633831214374536512126356734712345123458338121293291031121211301122921328121122214271212152632111625121724212211182311922220211221附图 3.PCB 图可编辑资料 - - - 欢迎下载