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

毕业设计基于at89s52单片机交通灯控制系统的设计.docx

19页
  • 卖家[上传人]:ss****gk
  • 文档编号:233085315
  • 上传时间:2022-01-01
  • 文档格式:DOCX
  • 文档大小:338.71KB
  • / 19 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 基于AT89S52单片机交通灯控制系统的设计一、 设计任务与要求用AT89S52单片机控制一个交通信号灯系统,晶振采用12MHZO设A车道与B车道交叉组成十字路口,A是主道,B是支道设计要求如下: 用发光二极管模拟交通信号灯,用按键开关模拟车辆检测信号正常情况下,A、 B两车道轮流放行,A车道放行50s,其中5s用于警告;B车道放行30s,其中 5s用于警告交通繁忙时,交通信号灯控制系统应有手控开关,可人为地改变 信号灯的状态,以缓解交通拥挤状况在B车道放行期间,若A车道有车而B 车道无车,按下开关K1使A车道放行15s;在A车道放行期间,若B车道有车 而A车道无车,按下开关K1使B车道放行15so有紧急车辆通过时,按下K2 开关使A、B车道均为红灯,禁行20s二、 方案设计与论证方案一:交通控制系统主要控制A、B两车道的交通,以AT89S52单片机为核心芯片, 通过控制三色LED的亮灭来控制各车道的通行;另外通过2个按键来模拟各车 道有无车辆的情况和有紧急车辆的情况根据设计要求,制定总体设计思想如下:1、 正常情况下运行主程序,采用0.5S延时子程序的反复调用来实现各种定 时时间2、 一道有车而另一道无车时,采用外部中断1执行中断服务程序,并设置 中断为低优先级中断。

      3、 有紧急车辆通过时,采用外部中断0执行中断服务程序,并设置中断为 高优先级中断,实现二级中断嵌套该电路具有电路简单,设计方便,显示亮度高,耗电较少,也非常的可靠等 点总体设计框图如图1所示:图1 系统整体设计方框图方案二:采用标准AT89S52单片机作为控制器;通行倒计时显示采用3位数码管; 主、次通道及行人指示灯采用双色高亮发光二极管;LED显示采用动态扫描, 以节省端口紧急车辆通行采用实时中断完成,识别方法采用手动按钮按以上 系统构架设计,单片机端口资源刚好满足要求该系统具有电路简单,设计方便, 显示亮度高耗电少,可靠性高,但是占用单片机资源太多了整个电路组成框图 如图2所示图2方案三:采用AT89C2051单片机作为控制器,通行倒计时、主、次车道及行人通行 指示采用单块LCD液晶点阵显示器这种方案设计占用单片机的端口最少,硬 件也最少,耗电也最少;虽然显示图案也很精美,但由于亮度太暗,晚上还得必 须开背光灯,所以较少采用通过以上综合分析可以看出,方案一具有综合设计优点,因此城市道口交通 灯控制系统模型采用方案一设计三、硬件单元电路设计与参数计算1、时钟电路模块时钟电路由一个晶体振荡器12MHZ和两个30pF的瓷片电容组成。

      时钟电路 用于产生单片机工作所需要的时钟信号,而时序所研究的是指令执行中各信号之 间的相互关系单片机本身就如一个复杂的同步时序电路,为了保证同步工作方 式的实现,电路应在唯一的时钟信号控制下严格地工作其电路如图3所示: Cl30pF图3时钟电路模块2、复位电路模块复位电路是使单片机的CPU或系统中的其他部件处于某一确定的初始状态, 并从这状态开始工作,除了进入系统的正常初始化之外,当由于程序运行出错或 操作错误使系统处于死锁状态时,为摆脱困境,也需按复位电路以重新启动本 设计采用的是按键复位电路其电路如图4所示:VCC图4复位电路3、主控制系统模块主控制器采用AT89S52,是ATMEL公司生产的一款性能稳定的8位单片机 AT89S52具有1个8KB的FLASH程序存储器,1个512字节的RAM, 4个8位的双 向可位寻址I/O端口,3个16位定时7计数器及1个串行口和6个向量二级中断 结构单片机的P0 口分别用于控制南北及东西的通行灯,P2 口和P3'4-P3'7 口用 于4组4位LED计时器的控制,紧急车辆通行时使用外中断0 (P3'2)和外中断 1(P3'3),进行手动按键,即可转换。

      其主控电路如图5所示: 2DC6aIr-j9r--DOcC4£vccrjo — o —Ooc5oocjoc5o ZNNZZZZNcccccccc cccccccc> ■ ■ I ■ ■ > ■ I I ■ ■ ■ ■ ■ I ■ ■ » ■ > > ■ I I ■ ■ > ■ ■ I ■ I > ■ > > ■ I « ■ I > ■ ■ > ■ IZTV1X 一、一V1XddA/VH DOMdsTVNHSd履可£ M*d 一守 Md MNIUd OLgKEd 0X1-炉一 Q^23.£C1NDU1ATS9C52图5主控制系统模块4、交通灯输出控制模块道口交通灯指示采用高亮度红、黄、绿发光二极管进行提示其图如图6 所示图6 LED显示模块当R=220欧时,按公式A=(5-1.8)/R计算,电路中的电流大小应为A=14. 545mA.由于每个路口的通行双向指示处理相同,因此每个端口应具有3A 的吸收电流能力5、 时间显示电路模块道口通行剩余时间采用高亮红色7段LED发光数码管显示,采用共阳数码 管,如用单片机吸收电流驱动,列扫描驱动使用三极管,按每段6mA电流计算, 全显示字形“8”时,每个数码需6mA*8=48mA,由于时间显示每个道口相同,共 需要电流192mA,因此设计中也采用了中功率三极管8550.其显示电路如图7所 示:6、 紧急通车电路模块为了实现此功能,利用单片机中断达到目的。

      利用一个手动按钮开关接至单 片机外部中断0,同时在软件设计时将其设定为最高优先级,当其按下时,四方 全为红灯,同时将中断位置的PSW、ACC进栈保护,当其计时完了之后,回到原 来的位置进行执行再利用一个手动按钮接至单片机外部中断1当其按下时,如 果是东西道是红灯,而南北道是绿灯,则将其置为东西是绿灯,南北是红灯;如 果是东西道是绿灯,而南北道是红灯,则将其置为东西是红灯,南北是绿灯两 种情况都是执行完后,回到断点处继续执行其电路如图8所示:图7数码管显示模块U2A三、软件设计与流程图1、 软件的设计主程序采用查询方式定时,调用0.5S延时子程序的次数,从而获取交通灯 的各种时间子程序采用定时器1方式1查询式定时,定时器定时50ms,确定 50ms循环20次,从而获得1S的延时时间有车车道的放行的中断服务程序首先要保护现场,因而需用到延时子程序, 子程序采用定时器0方式1查询式定时,定时器定时50ms,确定50ms循环20 次,从而获得1S的延时时间,保护现场时还需关中断,以防止高优先级中断(紧 急车辆通过所产生的中断)出现导致程序混乱开中断,由软件查询外中断1,判别哪一道有车,再根据查询情况执行相应 的服务。

      待交通灯信号出现后,保持15S的延时,然后,关中断,恢复现场,再 开中断返回主程序紧急车辆出现时的中断服务程序也需要保护现场,但无须关中断(因其为高 优先级中断),然后执行相应的服务,待交通灯信号出现后延时20S,确保紧急 车辆通过交叉路口,然后,恢复现场,返回主程序2、 程序流程图主程序 有车车道放行时的中断服务程序(外中断1)紧急情况时的中断服务程序(外中断0)五、总原电路及元器件清单1.总原理图如图9所示图9总的原理图2. PCB制板图如图10所示图10 PCB板3. 整体电路仿真图以及仿真结果分析(1) 、整体电路仿真图如图11所示 图11仿真图(2)、仿真结果分析上电或按键复位后数码管无显示,东西、南北的灯都为红灯亮;开始工作后 主车道绿灯亮次车道红灯亮50S,在这里选定它亮到5S时,主车道绿灯灭,黄 灯亮;5S后主车道变为红灯亮次车道绿灯亮30S,在这里选定它亮到5S时,次 车道黄灯亮,5S后返回重新执行按紧急车辆按钮红灯全亮显示时间为20S;有 车车道放行按钮按下时,若主车道是绿灯、次车道是红灯,则把主车道变为红灯、 次车道变为绿灯,显示15S;若主车道是红灯、次车道是绿灯,则把主车道变为 绿灯、次车道变为红灯,显示15S;4、元件清单如下表所示:元件名称型号数量/个用途单片机AT89S521控制核心晶振12MHZ1晶振电路电容30pF2晶振电路电解电容10uF1复位电路电阻5.IK1复位电路发光二极管LED12红、黄、绿灯集成块74LS081按键电路电阻220。

      13LED限流电阻4708数码管电路电阻1K7数码管驱动、按键电路四位共阳数码管GC-3461BS1显示电路微动开关3按键电路三级管PNP85504数码管驱动电路六、 安装与调试1. 电路安装打好板后,按照所画的PCB板,一一的把各个元件焊接到所制的板上即可2. 电路调试电路调试是利用开发系统、基本测试仪器(万用表、示波器等),检查系统 硬件中存在的故障其调试可分为静态调试与动态调试两步进行静态调试是在系统未工作时的一种硬件检测第一步:目测检查外部的各种元件或者是电路是否有断点第二步:用万用表测试先用万用表复核目测中有疑问的连接点,再检测各 种电源与地线之间是否有短路现象第三步:加电检测给板加电,检测所有的插座或是器件的电源端是否符合 要求的值第四步:是联机检查因为只有用单片机开发系统才能完成对用户系统的调 试动态调试动态调试是在系统工作的情况下发现和排除系统硬件中存在的器件内部故 障、器件连接逻辑错误等的一种硬件检查动态调试的一般方法是由近及远、由 分至u合由分到合是指首先按逻辑功能将系统硬件电路分为若干块,当调试电路时, 与该元件无关的器件全部从系统中去掉,这样可以将故障范围限定在某个局部的 电路上。

      当各块电路无故障后,将各电路逐块加入系统中,在对各块电路功能及 各电路间可能存在的相互联系进行调试由分到合调试既告完成由近及远是将信号流经的各器件按照距离单片机的逻辑距离进行由近及的 分层,然后分层调试调试时,仍采用去掉无关元件的方法,逐层调试下去,就 会定位故障元件了3. 软件调试软件调试是通过对拥护程序的C编程、连接、执行发现程序中存在的语法错 误与逻辑错误并加以排除纠正的过程运行程序后,编辑,查看程序是否有逻辑 的错误七、 性能测试与分析系统做好的,进行系统的完整调试按照所设计的流程图,用单片机跟踪模 式程序进行调试,配合相关的硬件动作,可以观察LED的变化和数码管的显示是 否正确同样明确延时时间长短、跳转位置及调用的程序功能经过观察各检测, 我可以看到整个系统的功能都能达到我的设计要求八、 结论与心得以往每次做课程设计,都会感觉自己收获不少这次单片机课程设计也不例 外做课程设计是为了让我们对平时学习的理论知识与实际操作相结合,在理论 和实验教学基础上进一步巩固已学基本理论及应用知识并加综合提高,学会将知 识应用于实际的方法,提高和解决问题的能力第一,在编写软件中,在此过程中我更为熟练得掌握汇编语言各种指令的使。

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