好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

交通信号灯设计报告(含程序).doc

29页
  • 卖家[上传人]:xian****812
  • 文档编号:327799227
  • 上传时间:2022-07-28
  • 文档格式:DOC
  • 文档大小:337.50KB
  • / 29 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 武汉纺织大学电子设计竞赛——交通信号灯自动控制系统设计报告学院:电子与电气工程学院班级:电子093班成员: 2011年5月1日目 录交通信号灯自动控制系统设计概要……………………………………………1第一部分:系统方案…………………………………………………1第二部分:电路与程序设计 …………………………………………4第三部分:测试方案与测试结果 ……………………………………6参考文献………………………………………………………………6附录一 主程序流程图 ………………………………………………7附录二 元器件清单 ……………………………………………………8附录三 程序清单……………………………………………………9附录四 仿真电路图………………………………………………交通信号灯自动控制系统设计概要一、设计要求要求1.系统基本功能要求(1)以秒为计时单位,两位数码管以十进制递减计数形式作定时显示,在递减计数回零瞬间完成换灯操作2)通过键盘红、黄、绿三色信号灯所亮时间在0~99秒内任意设定3)十字路口的通行起始状态可人工设定,运行中可通过人工干预使十字路口通行状况固定于任何一种工作模式。

      4)具有时间控制功能,交通信号灯工作时间:05:00~23:00;其余时间两个干道上的黄色信号灯闪烁显示;(4)绿色信号灯倒计时最后3秒和黄色信号灯显示时闪烁显示闪烁频率:1Hz);二、设计思路 为了完成本题目的设计要求,即倒计时及时间控制功能,采用单片机内部定时器进行时间的控制,为了实现调整工作倒计时时间、系统工作时间及工作状态,采用5个键盘分别对上面内容进行设置交通信号采用发光二极管,排布参照下面布局,数码管显示倒计时时间及系统时间第一部分 系统方案一、       总体电路构成 本系统由主控制器STC89c52单片机芯片、基本复位电路、时钟振荡电路、电源、按键扫描电路、七段数码管驱动及显示电路、发光二极管控制显示电路组成电源复位电路按键扫描电路时钟振荡电路七段数码管驱动及显示电路发光二极管控制显示电路主控制器STC89C52单片机芯片图一 总体电路框图二、      各单元电路设计1.复位电路复位电路的作用:在上电或复位过程中,控制CPU的复位状态:这段时间内让CPU保持复位状态,而不是一上电或刚复位完毕就工作,防止CPU发出错误的指令、执行错误操作,也可以提高电磁兼容性能。

      基本的复位方式:单片机在启动时都需要复位,以使CPU及系统各部件处于确定的初始状态,并从初态开始工作89系列单片机的复位信号是从RST引脚输入到芯片内的施密特触发器中的当系统处于正常工作状态时,且振荡器稳定后,如果RST引脚上有一个高电平并维持2个机器周期(24个振荡周期)以上,则CPU就可以响应并将系统复位单片机系统的复位方式有:手动按钮复位和上电复位 (1)手动按钮复位 手动按钮复位需要人为在复位输入端RST上加入高电平(图2)一般采用的办法是在RST端和正电源Vcc之间接一个按钮当人为按下按钮时,则Vcc的+5V电平就会直接加到RST端手动按钮复位的电路如所示由于人的动作再快也会使按钮保持接通达数十毫秒,所以,完全能够满足复位的时间要求2)上电复位AT89C51的上电复位电路如图3所示,只要在RST复位输入引脚上接一电容至Vcc端,下接一个电阻到地即可上电复位的工作过程是在加电时,复位电路通过电容加给RST端一个短暂的高电平信号,此高电平信号随着Vcc对电容的充电过程而逐渐回落,即RST端的高电平持续时间取决于电容的充电时间为了保证系统能够可靠地复位,RST端的高电平信号必须维持足够长的时间。

      通过以上分析可知手动按键复位要比上电复位方便,所以电路采用手动按键复位                     图2             图3  通过以上分析在此次交通信号灯设计时由于其可操作性和灵活性,我们选择的是按键复位方式.,这样可以及时的控制单片机,使其CPU及系统各部件处于确定的初始状态,并从初态开始工作2.时钟振荡电路由于AT89C52单片机内部有一个用于构成振荡器的高增益反向放大器,此放大器的输入和输出端分别是引脚XTAL1和XTAL2,在XTAL1和XTAL2上外接时钟源即可构成时钟电路,该电路采用的是内部方式,如图4所示:图4在XTAL1和XTAL2的两端接石英晶体振荡器,与内部反向器构成稳定的自激振荡器,发出的时钟脉冲直接进入片内定时定时控制部件用以提供交通灯时钟信号3.电源 单片机及其他芯片所需要的电源电压为5V,可以采用直流稳压电源给该系统供电4.数码管驱动及显示电路 电路采用4个两位的共阳极7段数码管(如图5)动态扫面显示,为了使数码管显示较亮,采用两个锁存器进行驱动图35.按键扫描电路6.发光二极管控制显示电路采用普通的反光二极管(红、黄、绿)利用单片机p1口进行控制显示。

      7.锁存器锁存器(Latch)是一种对脉冲电平敏感的存储单元电路,它们可以在特定输入脉冲电平作用下改变状态锁存,就是把信号暂存以维持某种电平状态锁存器的最主要作用是缓存,其次完成高速的控制其与慢速的外设的不同步问题,再其次是解决驱动的问题,最后是解决一个 I/O 口既能输出也能输入的问题第二部分 电路与程序设计1. 复位电路 采用手动按键复位电路,实际电路及其参数为电解电容10uf,电阻为10k(图中电源为+5v):2. 时钟振荡电路 采用12MHz晶振,30~33pf电容即可在此设计中我们选用30pf的电容3. 电源如下图所示,为串联式直流稳压电源输出电压范围为4V~15V该电源为模电课程设计时制作,在这里可直接用作5V电源4.数码管驱动及显示电路数码管用来显示交通灯倒计时,小时、分钟、秒的显示,以及倒计时与时间的调节5.按键扫描电路电路采用了5个按键k0~k4,k0、k1、k2用来对倒计时总时间的调节,k4、k1、k2用于对系统时间的调节,k3用于对工作状态的调节 K0每按下一次,con加1,当con=3时,使con=0,重新判断k0是否按下,如果con=1,k1键实现对倒计时总时间加1,k2键实现对倒计时总时间减1,当con=2时,k1键实现对黄灯显示时间加1,k2键实现对黄灯显示时间减1。

      K4每按下一次,对con2加1,当con2=4时,使con2=0,重新判断k4键是否按下,当con2=1时,显示系统时间,当con2=2时,k0、k1实现对小时的加减,当con2=3时,k0、k1实现对分钟的加减 通过K3按下的次数使电路工作在不同的5个状态6.发光二极管控制显示电路发光二极管由单片机通过p0口进行控制显示先对p0口的值进行编码,再将编码按要求赋给p0口7.锁存器我们使用的是两个SN74hC573AN型号的锁存器,由单片机的p1和p3端口通过锁存器来控制数码管的动态显示第三部分 调试与仿真1、软件调试:程序编好以后,先自己检查是否有逻辑错误,保证正确后利用伟福仿真软件对所编写的程序进行编译,检查是否有语法错误,出现错误时伟福系统会自动提示有错误产生,并会指定错误的语句,这时我们需要认真检查程序,修改编译中出现的错误程序修改无误后,利用仿真软件,我们可以监视程序PC指针、P0、P1、P2口的变化、以及存储单元的值的变化来检查程序是否运行正常,是否能够实现预定的控制功能2、硬件调试:按照已经设计好的电路设计图,在proteus中进行调试与仿真,确保电路无误,在万能印刷电路板上焊接各个元件。

      电路板制作完成以后,利用万用表检查硬件是否焊接正常以及是否出现短路和断路的情况,并修改焊接中的错误,直到硬件电路可以正常工作为止在第一次进行检测时发现显示管不会显示数据,经过进一步检查才发现是电源线没有焊接如此反复操作,直到硬件可以正常运行参考文献1. 谢维成.单片机原理与应用及C51程序设计(第二版).北京:清华大学出版社.20112. 阎石.数字电子技术基础(第五版).北京:高等教育出版社.20103.童诗白.模拟电子技术基础(第四版)北京:高等教育出版社.2010. 附录一 主程序软件流程图开始给定系统初始时间5:01:00时间是否在5点到23点之间Y黄灯闪烁显示,时间显示N调用键盘显示程序判断是否有键按下?调用key()根据按键情况进行显示用led(),display(uchar x )进行显示YN 附录二 原器件清单制作交通信号灯所需元件清单名称数量元件说明单片机 (底座)1STC89C52型号电路板1单面两位数码管4共阳极LED灯 12 红黄绿各四个锁存器(底座)2SN74HC573AN型号按键开关6四个脚石英晶体振荡器112M振荡频率电阻131K1个,上拉1K6个,10K5个,200欧1个电容330Pf 2个,10Uf1个铜柱4普通焊锡导线若干普通制作5V直流电源所需器件名称数量元件说明整流二极管41n4001电解电容21000u/25V三极管59013大功率三极管13A/50V红色发光二极管1普通大电阻12.7Ω/1W1/4W电阻6510Ω,1.5K,2K ,5.6K,10K, 12K瓷片电容20.01μ变压器115V/220V 5W电路板180×100mm2二芯带插头电源线1普通开关1普通导线焊锡若干普通附件三 程序清单#include#define uchar unsigned char char code dis_7[12]={0xc0,0xf9,0xa4,0xb0,0x99,0x92, 0x82,0xf8,0x80,0x90,0xff,0xbf};//数码管位选char code scan_con[8]={0x40,0x80,0x10,0x20,0x04,0x08,0x01,0x02};//数码管段选char data dis[8]={0x00,0x00,0x0b,0x00,0x00,0x0b,0x00,0x00};//显示缓冲区,时、分、秒uchar time=30,timedata=60,timedata1=30,timeo=5, flagkey3=0,flagkey0,flagkey4=0,tt=0,a,con=0,con1=0,con2=0;uchar timeclk[3]={0x00,0x01,0x05};//时间初始值sbit key0=P2^0;sbit key1=P2^1;sbit key2=P2^2;sbit key3=P2^3;sbit key4=P2^4;delay1ms(int t)//延时一秒。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.