




已阅读5页,还剩40页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
攀枝花学院本科毕业设计(论文)基于8051单片机的交通信号控制系统设计学生姓名: 学生学号: 院(系): 电气信息工程学院 年级专业: 09级电气工程与自动化 指导教师: 副教授 助理指导教师: 二一三年五月 攀枝花学院本科毕业设计(论文) 致 谢 摘 要随着技术的发展,单片机技术越来越成熟,由于单片机有很高的可靠性和性价比,其在工业上和生活上的应用已经非常广泛。在实际的生产生活中,将单片机做为一个核心的控制部件来应用,能够降低成本,提高生产的自动化水平。本设计中以MSC-51系列单片机AT89C51单片机作为信号系统控制的核心,通过单片机的引脚来控制交通信号红、黄、绿灯和人行道上的红绿灯,并进行计时。单片机的I/O口P0、P1控制交通信号灯的亮、暗、闪烁。P2口经过锁存器74HC595控制共阳极数码管进行计时输出。在设计中将系统的运行方式设为,东西直行、南北直行、东西左右转、南北左右转四个运行状态加四个过度状态和一个紧急运行状态,共九个状态。在直行运行时,对运行时间进行倒数计时,显示在数码管上。当发生紧急状况时,系统可进入紧急运行状态,红灯全亮,其他灯全暗,紧急状态由外部中断0控制。关键词 交通信号系统,控制,单片机。 ABSTRACTWith the development of technology, computer technology is more and more mature, the single-chip microcomputer has high reliability and cost-effective, its application in industry and the life of the already very extensive. In the practical production and life, the control unit MCU as a core to the application, can reduce the cost, improve the automation level of production.The design of MSC-51 series microcontroller AT89C51 as the core signal control system, through the microcontroller pin to control the traffic signal red, yellow, green and red lights on the sidewalk, and timing. I/O port P0, P1 control traffic lights SCM bright, dark, scintillation. P2 port after the latch 74HC595 control common anode led timing output.In the operation of the system design is, things straight, straight north-south line, things turn around, turn left and right four north-south running state and four transition state and a state of emergency operation, a total of nine state. In the straight run time, countdown to the running time, digital tube display. When an emergency occurs, the system can enter the emergency state, the whole bright red light, other lights are dark, a state of emergency by external interrupt 0 control.Key words Traffic signal system, control,singlechip 40目 录摘 要IABSTRACTII目 录i1 绪论11.1 课题背景11.1.1我国的交通发展及现状11.1.2 单片机在交通控制系统中的优势11.2 论文所做的主要工作21.2.1阅读相关的文献资料做好设计知识储备21.2.2 实际调查交通信号系统21.2.3编写论文31.3论文的组织结构32 交通信号系统的设计42.1通行设计42.1.1交通信号系统的结构及控制要求42.1.2交通规则设计42.2亮灯时序93 硬件设计103.1硬件的选择和介绍103.1.1 芯片74HC595103.1.2单片机123.1.3七段LED数码管163.2辅助电路173.2.1复位电路173.2.2晶振电路183.3主电路设计194 软件设计和调试214.1程序设计214.1.1流程图和真值表214.1.2程序设计224.2程序的调试234.3 仿真调试234.3.1调试的方案234.3.2仿真调试的结果及分析24结论31参 考 文 献32附录:控制程序清单33致 谢381 绪论1.1 课题背景1.1.1我国的交通发展及现状自改革开放以来,我国的城市规模和经济建设都有了飞速的发展。总的来说过的城市交通控制系统的发展经历了以下几个阶段:七十年代末到九十年代初,城市交通监控中心主要是建立交通信号控制系统和交通电视监视系统,其主要功能是对路口信号灯进行点、面相结合的控制,对路面的交通状况进行实时的监视,并辅之以人工干预。九十年代以来,原来的驾控中心不断增加了GPS车辆定位系统、交通事故处理系统、交通群体诱导系统、交通管理信息系统、交通地理信息系统等等,并逐步发展成为了城市交通指挥中心。但是这些系统基本上只是物理上放置在一起,相互之间基本上不能进行信息交换与共享,实现统一调度与指挥。九十年代末至今,我国城市交通的发展集中在智能化的交通控制系统建设上,进一步实现交通控制系统的智能化,实现信息的交换和共享。随着我国工业化和城市化的高速发展,我国的居民汽车保有量大幅增长,再加上物流业的快速发展,我国的城市交通状况压力增大。由于我国的城市交通基础设施还比较落后,导致道路拥堵状况日趋严重。拥堵的交通不仅浪费了人民大量的时间,还导致了交通事故的频繁发生。大量的机动车拥堵在路上,增加了汽车尾气的排放,污染了环境的同时还浪费了大量的能源。在近年北方的严重雾霾状况,很大程度上也和汽车尾气的大量排放有关。因此解决交通拥堵问题日益城为社会关注的焦点和大众的迫切呼声。造成城市交通问题的根本原因在于城市交通系统的管理机制不适应。在现有的基础设施条件下,要想缓解交通问题运用现代科技手段强化交通管控能力就显得尤为重要。由于交通管控能力不足,我国的大城市道路网还有很大的潜力没有发挥出来。如果我们能尽快引进先进管理技术与设施,使城市道路交通置于先进的科学的系统管理之下,让现有的城市道路网及相关的设施潜能充分发挥出来,将能够大大缓解目前我国的城市交通压力。1.1.2 单片机在交通控制系统中的优势传统的人工控制,虽然能够根据实际的情况进行灵活的调整和指挥,使交通能够合理的运行,适应随时发生的变化,但是,由于人的生理原因,人不可能全天候的执勤,且人工的执勤成本较信息化的控制成本要高出不少。随着技术的发展出现了很多信息化的交通信号系统,其中plc就是一种比较普遍应用控制系统,但是plc的成本较高,在运行和维护中的成本也比较高不利于大范围的推广和应用。随着技术的进步,单片机在工业生产生活中的应用越来越广泛。单片机具有成本低、体积小、可裁剪、功耗低、可编程等诸多优点,因此单片机自诞生之日起就引起了广泛的关注。经过不断的发展和完善,单片机的可靠性越来越高,应用也越来越广泛。将单片机应用在交通控制系统中,能够大大提高交通控制系统的智能化水平。单片机的成本低,可以大大减低交通系统的建设成本,使交通信号系统的推广和大量建设成为可能。单片机的可编程功能能够使单片机经过一次硬件上的设计,就能够广泛的适应不同的交通状况,只需要将程序稍微进行一下调整。单片机功耗低的优点可以使其运行成本大大降低。因此,单片机在交通信号系统中有很广泛的应用前景。 1.2 论文所做的主要工作1.2.1阅读相关的文献资料做好设计知识储备虽然大三的时候学习了单片机方面的相关知识,但是由于涉猎面比较窄,再加上平时运用的比较少,导致知识的储备不足,要想完整的做成论文设计必须进行知识的复习,并且阅读相关的书籍,加深一下知识的理解,扩展自己的视野,扩大元器件的选着面,提高自己对单片机的认识。由于大三所学的单片机编程采用的是汇编语言,但是,C语言有可读性强,兼容性高等优点,目前在社会上被广泛应用编程语言是C语言。因此在本设计中我打算才用C语言来编程。大二的时候学过C语言方面的知识,但是,运用C语言进行单片机的程序编写还是有一定的难度,因此,首先复习C语言方面的知识,并学习用C语言对单片机进行编程。由于自己在学习的过程中对单片机应用相关的元器件知识了解不是很多,所以,进行设计的时候有可能面临选材范围太窄的问题。因此,我从网上下载了一些资料,来学习相关的硬件知识,并且借阅相关的书籍,拓展一下自己的知识面。1.2.2 实际调查交通信号系统论文的设计应当是结合实际生活的,因此,必然少不了对实际情况的考察。在实际的调查中我发现,由于道路宽窄的不同,交通路口的重要程度不同,各地的标准不太一样,等很多方面的差异,各个交通信号系统有很大的差异。有的信号系统有计时器,有的则没有,有的有黄灯,有的只有红绿灯,有的红绿灯转换时间长,有的转换时间短,等等。在本设计中,尽可能的考虑到一般情况,选出具有代表性的状况进行编程设计。1.2.3编写论文根据自己储备的专业知识并结合实际的调查结果,在老师的指导下完成本次设计首先制定设计的提纲,对于各设计阶段要做的事情进行合理的排序,将论文的编写分为制定设计要求,硬件选择和软件编程三个主要部分。必须先要根据设计的情况制定出相应的设计要求,然后才能够进行后面的硬件选择。设计要求的制定应当尽量全面的去考虑实际的需求情况,力求设计能够满足现实需求,反应现实问题,同时,设计需求应当尽量的简化、合理,适当考虑硬件的选择和后面的程序设计。硬件的选择必须是满足设计要求的,同时要考虑到稳定性和后面程序的设计,在能保证稳定性和设计要求的前提下,应当尽量的简化,节约设计的成本。软件设计是在设计要求和硬件的基础上完成的,软件设计首先应当能够满足设计的要求,然后在硬件的基础上对设计进行表达。同时,软件设计应当考虑到程序运行的稳定性,在设计时程序应当尽量的简单可靠,最好能够抗干扰。1.3论文的组织结构(1)对被控对象进行综合性的叙述,分析各种控制的利弊,说明单片机在交通信号系统控制中的优势。(2)根据相应的交通规则编写信号系统的运行方案,运行方案应当结合实际情况进行设计,为后面的工作做好基础准备。(3)根据运行方案选着合适的硬件来实现设计,硬件的学则应当尽量的简单且能满足设计的要求。(4)根据运行要求和硬件设计编写实现设计所需的运行程序流程图,然后根据运行程序流程图 相应的程序。程序应当尽量的简单可靠,同时满足设计的要求。(5)对设计进行仿真测试,检查设计中存在的问题,并加以解决。使设计满足设计要求。2 交通信号系统的设计2.1通行设计2.1.1交通信号系统的结构及控制要求交通信号系统主要由主干道上的红、绿、黄灯和计时显示器,人行道上的红绿指示灯组成。主干道上的红、绿、黄灯和计时显示器主要是对过往的车辆进行协调指挥,使其合理有序的通过。人行道的红绿指示灯主要是对行人进行指挥,使行人能够安全的通过十字路口,不发生危险的交通事故。交通信号系统的设计应当尽量的合理,在时间上应能使各个方向的行人和车辆快速合理的通过十字路口,而又不发生安全事故。2.1.2交通规则设计根据交通规则制定相应的设计方案。本设计中将交通信号系统设计为9个运行状态,其中前八个为正常运行状态,最后一个为紧急运行状态。图2.1状态1的通行图(上图方位为上北下南左西右东)状态1:南北方向直行可通过。在此状态下,南北方向车辆和行人可以直行通过,东西方向禁止通行,并且禁止各个方向左右转弯。在此状态下,南北方向的绿灯亮起,红灯和黄灯暗下,南北方向的车辆可以直行。南北方向的人行道绿灯亮起,行人可以通过。东西方向的红灯亮起,东西方向的绿灯和黄灯暗下,禁止车辆直行。东西方向的人行道红灯亮起,禁止行人通行。所有的转向灯都暗下,车辆禁止转向。此状态持续90s十字路口的通行如图2.1 状态2:此状态为状态1的延续,目的是等待南北方向正在听过的行人完全通过,为进入状态3做准备。在此状态下,东西和南北方向禁止行人和车辆继续通过,正在通过的行人和车辆应当做出适当的调整,为状态3的车辆让路,道路禁止转向。在此状态下,南北方向的绿灯暗,黄灯亮,红灯保持暗,禁止车辆继续通行,正在通过的车辆可继续行进。东西方向红灯保持亮,绿灯和黄灯保持暗,禁止车辆直行。东西方向的人行道保持红灯亮,南北方向的人行道绿灯闪烁,提示禁止行人继续通过,正在通过的行人快速通过。此状态持续5s状态3:南北方向的车可左右转,东西方向的车只能右转,人行道禁止通行。在此状态下,南北方向的车可以进行左右转弯,为了保持运行的秩序和安全,东西方向的车只能右转。在此状态下,东西和南北方向的红灯亮起,绿灯和黄灯暗下,禁止直行。南北方向的左右转向灯均亮起,可以左右转弯。东西方向的转向灯只右转灯亮起,东西方向禁止右转,只能左转。各方向人行道红灯亮起,行人禁止通行。 十字路口的通行如图2.2此状态持续45s图2.2 状态3的通行图(下图方位为上北下南左西右东)状态4:此状态为状态3的延续,目的是禁止车辆通过路口,正在转向的车辆继续通过,为状态4做准备。在此状态下,各个方向的车辆和行人禁止通过,正在通过的车辆可继续通过。在此状态下,南北方向红灯亮,南北方向绿灯和黄灯暗,南北方向车辆禁止直行。南北方向左右转向灯闪烁,禁止车辆转向,正在转弯的车辆可继续通过。东西方向红灯闪烁,绿灯和黄灯暗,车辆禁止直行。东西方向右转灯闪烁,左转灯暗,禁止车辆右转,正在转弯的车辆可继续通过。南北方向人行道红灯亮,禁止行人通过。东西方向人行道红灯闪烁,提示行人准备过马路。 此状态持续5s状态5:东西方向直行可通过。在此状态下,东西方向车辆和行人可以直行通过,南北方向禁止通行,并且禁止各个方向左右转弯。在此状态下,东西方向的绿灯亮起,东西方向的红灯和黄灯暗下,东西方向的车辆可以直行。东西方向的人行道绿灯亮起,行人可以通过。南北方向的红灯亮起,绿灯和黄灯下暗下,禁止车辆直行。南北方向的人行道红灯亮起,禁止行人通行。各个方向的转向灯都暗下,车辆禁止转向。图2.3 状态5的通行图(上图方位为上北下南左西右东)十字路口的通行如图2.3此状态持续90s状态6:此状态为状态5的延续,目的是等待南北方向正在听过的行人完全通过,为进入状态7做准备。在此状态下,东西和南北方向禁止行人和车辆继续通过,正在通过的行人和车辆应当做出适当的调整,为状态7的车辆让路,道路禁止转向。在此状态下,东西方向的绿灯暗,黄灯亮,红灯保持暗,禁止车辆继续通行,正在通过的车辆可继续行进。南北方向红灯保持亮,绿灯和黄灯保持暗,禁止车辆直行。南北方向的人行道保持红灯亮起,行人禁止通过。东西方向的人行道绿灯闪烁,提示禁止行人继续通过,正在通过的行人快速通过。此状态持续5s状态7:图2.4 状态7的通行图(上图方位为上北下南左西右东)东西方向的车可左右转,南北方向的车只能右转,人行道禁止通行。在此状态下,东西方向的车可以进行左右转弯,为了保持运行的秩序和安全,南北方向的车只能右转。在此状态下,东西和南北方向的红灯亮起,绿灯和黄灯暗下,禁止直行。东西方向的左右转向灯均亮起,可以左右转弯。南北方向的转向灯只右转灯亮起,南北方向禁止右转,只能左转。各方向人行道红灯亮起,行人禁止通行。 十字路口的通行如图2.4此状态持续45s状态8:此状态为状态7的延续,目的是禁止车辆通过路口,正在转向的车辆继续通过,为状态1做准备。在此状态下,各个方向的车辆和行人禁止通过,正在通过的车辆可继续通过。在此状态下,东西方向红灯亮,东西方向绿灯和黄灯暗,东西方向车辆禁止直行。东西方向左右转向灯闪烁,禁止车辆转向,正在转弯的车辆可继续通过。东西方向红灯闪烁,绿灯和黄灯暗,车辆禁止直行。南北方向右转灯闪烁,左转灯暗,禁止车辆右转,正在转弯的车辆可继续通过。东西方向人行道红灯亮,禁止行人通过。南北方向人行道红灯闪烁,提示行人准备过马路。 此状态持续5s紧急状态:在紧急状态下,按下紧急状态按钮,各方向的红灯亮起,人行道的红灯也亮起,禁止一切行人和车辆通过,实行交通管制。当按钮恢复后重新切换为正常状态。2.2亮灯时序 根据交通状态分析,可以做出亮灯时序表2-1表2-1亮灯时序表南北东西时间红绿左右人绿人红黄红绿左右人绿人红黄1OXXXXOXXOXXOXX90s2OXXXXOXXXXXSXO5s3OXOOXOXOXXOXOX45s4OXSSXOXSXXSXSX5s5XOXXOXXOXXXXOX90s6XXXXSXOOXXXXOX5s7OXXOXOXOXOOXOX45s8SXXSXSXOXSSXOX5sJJOXXXXOX0XXXX0X 说明:图中O为亮;X为暗;S为闪烁正常情况下,交通信号灯应按照上表中的状态1到状态8亮灯方式,循环运行。考虑到可能发生特殊状况,在特殊情况下需要进行交通管制,则应有应急运行方式。在应急运行方式下应当红灯全亮,各个方向的车全部禁行,亮灯方式为状态JJ。应急状态结束后恢复到正常状态继续运行。3 硬件设计完成该系统的控制需要一个核心控制芯片,来编程控制信号系统的运行,本设计中采用51系列单片机;51单片机在进行控制时需要脉冲发生电路,本设计中采用晶振电路;为防止控制系统在运行过程中发生运行不正常的状况本系统应当具有复位电路;为了显示计时状况,应当采用八段数码显示管和74HC595芯片。3.1硬件的选择和介绍3.1.1 芯片74HC595图3.1 芯片74HC595引脚的引脚结构74HC595是一款漏极开路输出的CMOS移位寄存器,输出端口为可控的三态输出端,亦能串行输出控制下一级级联芯片。74HC595具有以下特点: (1)移位时钟频率高,最高可达25MHz (2)标准串行(SPI)接口 (3)CMOS可串行输出,能够用于多个设备的级联 (4)功耗低:在运行温度为25时,内部最大电流为4uA。芯片74HC595的引脚结构如图3.174HC595的引脚功能表如表3-1表3-1 74HC595引脚功能表管脚编号管脚名管脚定义功能1、2、3、4、5、6、7、15QA-QH三态输出管脚8GND电源地9SQH串行数据输出管脚10SCLR移位寄存器清零端11SCK数据输入时钟线12RCK输出存储器锁存时钟线13OE输出使能14SI数据线16VCC电源端 74HC595的真值如表3-2表3-2 74HC595真值表输入管脚输出管脚SISCKSCLRRCKOEXXXXHQA-QH输出高阻XXXXLQA-QH输出有效值XXLXX移位寄存器清零L上沿HXX移位寄存器存储LH上沿HXX移位寄存器存储HX下沿HXX移位寄存器状态保持XXX上沿X输出存储器锁存移位寄存器中的状态值XXX下沿X输出存储器状态保持 74HC595的逻辑图如图3.2图3.2 74HC595的逻辑图3.1.2单片机主要性能:l 与MCS-51单片机产品兼容2 8K字节可编程Flash存储器3 高达1000次的擦写周期4 全静态操作频率范围:0Hz33Hz5 具有三级加密程序存储器6 具有32个可编程的I/O口线7 具有 三个16位定时器/计数器8 具有八个中断源9 全双工UART串行通道10 低功耗空闲和掉电模式11 掉电后中断可唤醒12 具有看门狗定时器,能有效防止程序跑飞13 双数据指针图3.3 AT89C51单片机的内部结构框图功能特性描述:AT89C51单片机是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。使用Atmel 公司的高密度非易失性存储器制造技术,能够与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在系统上编程,亦适于常规编程器。在单芯片上,拥有非常灵巧的8 位CPU 和在系统可编程Flash,使AT89C51单片机为众多嵌入式控制应用系统提供高灵活和非常有效的解决方案。AT89C51单片机具有以下标准功能:8k字节的Flash,256字节的RAM,32 位I/O口线,看门狗定时器,2个数据指针,3个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。AT89C51的内部结构框图如图3.3引脚说明:AT89C51单片机芯片有40个引脚。采用的封装方式为双列直插式封装。各主要引脚的说明如下:1主电源引脚Vcc:接5V电源的正端。Vss:接5V电源的地端。2外接晶体引脚XTALL1:片内反相放大器的输入端。XTALL2:片内反相放大器的输出端。外接晶体时,XTALL1和XTALL2各接晶体的一端,外接晶体与片内的反向放大器可构成振荡器。3 I/O引脚P0.0P0.7:P0口的八个引脚。在不接片外存储器与不扩展I/O接口时,可作为准双向输入/输出接口。而在接有片外存储器或扩展I/O接口时,P0口能分时复用为低八位的地址总线和双向数据总线。P1.0P1.7:P1口的八个引脚。可作为准双向及I/O接口使用。P1.0和P1.1还有第二种功能:P1.0可用作定时器/计数器2计数脉冲输入端T2;P1.1可用作定时器/计数器2的外部控制端T2EX。P2.0P2.7:P1口的八个引脚。一般可以作为准双向I/O接口;在接有片外存储器或扩展I/O接口且寻址范围超过256个字节时,P2口用为高八位地址总线。AT89C51单片机的引脚结构如图3.4图3.4 单片机的引脚结构P3.0P3.7:P1口的八个引脚。除作为准双向I/O接口使用外,还具有第二功能,详见表3-3。表3-3 单片机引脚的第二功能引脚第二功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2INT0(外部中断0请求输入端)P3.3INT1(外部中断1请求输入端)P3.4T0(定时器/计数器0计数脉冲输入端)P3.5T1(定时器/计数器1计数脉冲输入端)P3.6WR(片外数据存储器写选通信号输出端)P3.7RD(片外数据存储器读选通信号输出端)4 控制线ALE/PROG:地址锁存有效信号输出端。在访问片外程序存储器时,每个机器周内期该信号出现两次,其下降沿主要用于控制锁存P0口输出的低八位的地址。在不访问片外程序存储器期间,该信号也以振荡频率的1/6出现,因此可用作对外输出的时钟脉冲。但在访问片外数据存储器期间,ALE脉冲会跳空一个,不能作为时钟输出。对于片内含EPROM的机型,在编程期间,此引脚用作编程脉冲PROG的输入端。PSEN:片外程序存储器读选通信号输出端,或称片外取指信号输出端。在向片外程序存储器读取指令或常数期间,每个机器周期该信号两次有效(低电平),以通过数据总线P0口读回指令或常数。在访问片外数据存储器期间,PSEN信号将不出现。RST/VDD:RST写全是RESET,是复位端。单片机的振荡器工作时,该引脚上出现持续两个机器周期的高电平就可实现复位操作,使单片机回到初始状态。上电时,考虑到振荡器有一定的起振时间,该引脚上的高电平必须持续10ms以上才能保证有效复位。Vcc掉电期间,该引脚如果接了备用电源VDD(+5V+-0.5),可用于保存片内RAM中的数据。当Vcc下降到某规定值以下时,VDD便向片内RAM供电。EA/VDD片外程序存储器选用端。该引脚有效时(低电平)只能选用片外数据,否则计算机上电或复位后先选用片内程序存储器。在AT89C51单片机中片内含EPROM在编程时,此引脚作为21V编程电源VDD的输入端。综上,对于AT89C51单片机的引脚可以归纳出以下两点。(1)AT89C51单片机功能多,引脚少,致许多引脚都具有第二功能。(2)AT89C51单片机对外呈三总线形式。由P2、P0组成的十六位地址总线,而P0可以分时复用为数据总线;由ALE、PSEN、RST、EA与P3口中的INT0、INT1、T0、T1、WR、RD共十个引脚组成控制总线。因是十六位地址线,所以片外数据存储器的寻址范围可达64KB。 3.1.3七段LED数码管图3.5 七段数码管示意图在本设计中采用七段LED数码管来显示计时的时间。七段数码管的外观如图3.5所示本设计选取的两位七段数码管中共有十个引脚。其中共有A、B、C、D、E、F七个段选引脚,控制数字的七笔。DP引脚控制小数点(在本设计中不用)。1、2引脚控制位选信号,选择输出的位。数码管的内部接法分为共阳极接法和共阴极接法两种,其内部结构如图3.6所示,本设计中采用共阳极接法。图3.6七段数码管的内部接法和结构根据七段数码管的内部接法和结构,可以对应数字写出各字对应的字形码。各字对应的字形码如表3-3所示表3-3各数字对应的字码数字字形码00xc010xf920xa430xb040x9950x9260x8270xf880x8090x903.2辅助电路3.2.1复位电路为防止系统在运行时发生程序跑飞现象,在设计中加入手动复位电路。复位电路由直流电源,上拉电阻,电容和开关组成。上拉电阻一般选用100欧姆,电容选择10uF。当程序跑飞时合上开关,复位电路输出高电平到单片机的REST引脚,该引脚出现两个机器周期的高电平时,单片机复位。复位电路如图3.7所示图3.7 复位电路3.2.2晶振电路时钟是一切微处理器、微控制器内部电路工作的基础。单片机的内部都有一个自激振荡电路,自激振荡电路是定时控制部件中的一部分,可以通过内部自激振荡或外部提供振荡源这两种方式,来实现驱动内部时钟电路产生系统时钟信号的功能。 内部方式:在XTAL1、XTAL2跨接在晶振和两个接地电容之间就构成了自激振荡器,电容C1、C2一般取5-30uF,主要是起稳定和微调的作用。 晶振的频率一般取1.2-12MHZ,常用频率为6、12、11、0592MHZ。 外部方式:外部振荡脉冲信号直接由XALT1端输入,此时,XALT2端悬浮。这种方式通常用于多片单片机系统,以使相互的时钟信号保持同步。 晶振周期:振荡器输出的时钟脉冲频率的倒数。晶振周期是单片机中最小、最基本的时间单位。 状态周期:也叫时钟周期,是振荡频率经2分频后获得的信号周期,显然,状态周期为晶振周期的2倍。 机器周期:12个晶振周期为一个机器周期,机器周期一般是单片机执行一条机器指令时所用的时间。 指令周期:执行一条指令所需的时间就是指令周期,至少包含一个机器周期。 指令字节:指令占用存储空间的字节数,有单字节、双字节、三字节共三类。 当时钟频率为12MHZ和6MHZ时,晶振周期分别为1/12s和1/16s,则机器周期分别为1us和2us。这里使用12MHZ晶振和两个电容就构成的自激振荡器。如图3.8图3.8 振荡电路3.3主电路设计将各元件和辅助电路按照图3.3.4连接,完成硬件的整体设计。将振荡电路接于单片机的XTAL1和XTAL2引脚,将复位电路接于RST引脚。P1引脚用于控制东西方向的交通信号灯,其中具体接法为:P1.0接东西方向左转P1.1接东西方向绿灯P1.2接东西方向人行道红灯P1.3接东西方向黄灯P1.4接东西方向人行道绿灯P1.5接东西方向红灯P1.6接东西方向右转P0引脚用于控制南北方向的交通信号灯,其中具体接法为:P0.0接南北方向左转P0.1接南北方向绿灯P0.2接南北方向人行道红灯P0.3接南北方向黄灯P0.4接南北方向人行道绿灯P0.5接南北方向红灯P0.6接南北方向右转74HC595的SER端接电源的正极,将OE端接地。将电容C1和C2的值调到20uF,将芯片 主电路的设计如图3.9图3.9主电路图4 软件设计和调试4.1程序设计4.1.1流程图和真值表根据解决方案画流程图 流程图:初始化 特殊按键恢复T9特殊按键被按下步1 90s步2 5s步3 45s 步4 5s 步5 90s步6 5s步7 45s步8 5s 图4.1程序流图 根据流程图和真值表编写程序P1引脚和P2引脚的真值表如表4-1和表4-2表4-1 P0引脚的真值表P0南北方向右转绿灯人行红黄灯人行绿红灯左转数值P0.7P0.6P0.5P0.4P0.3P0.2P0.1P0.01X001001012H2X001001012H3X101001153H4XS01001S53H/12H5X010010024H6X0001S000CH/08H7X101001052H8XS0S00S052H/00HJJX001001012H表4-2 P1引脚的真值表P1东西方向右转绿灯人行绿黄灯人行红红灯左转数值P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.01X011000030H2X00S100018H/08H3X100011046H4XS000SS046H/00H5X000011006H6X000011006H7X100011147H8XS00011S47H/06HJJX000011006H4.1.2程序设计本设计程序共有函数申明、变量定义、主程序、延时、数据输出、数据传输、外部中断七个部分组成。在本程序中,首先是函数的申明、对函数包含的一些程序进行申明。然后是变量的定义,其中定义的主要是全局变量,在变量定义时应当将全局变量和局部变量进行区分,避免在引用时造成错误。主程序按照程序结构流程图进行设计。在主程序的内部,首先进行初始化,将相应硬件的特殊寄存器进行赋值,为程序的正常运行做好准备。然后是各分步的子程序。 延时程序采用内部程序进行延时,本设计对于计时延时的要求精度不高,因而可以采用内部延时计时的方法进行延时,这样设计简单方便又能满足要求。数据传输和数据输出主要是针对计时在LED上的显示输出,将计时的时间结果所对应的共阳极数码管的段选字模找到,后逐位传输到74HC595内,八位输出完成后,将74HC595芯片内部的数据输出到LED显示管上。外部中断程序是在紧急状态下暗下紧急按键之后,程序进入紧急运行状态,信号系统应当按照紧急状态运行,因此,在程序设计中将紧急状态的运行内容输入到外部中断程序中。本设计中外部中断采用的是外部中断0,因此,外部中断程序应设在外部中断0内。4.2程序的调试程序编译在keil软件内完成,完成程序编译后进行调试,并找出存在的错误,进行修改,待程序无误后将程序编译成HEX文件并输出到文件以备软件仿真时用。程序的调试中存在的问题集分析:在程序调试时,一开始有很多的错误和警告。出现问题的主要原因是我个人对于c语言的掌握不够深,出现了全局变量和局部变量混淆的问题,还有个人的疏忽导致输入数据的错误使程序不能够正常的调试,经过认真的修改和分析,程序最终得以顺利调试成功。程序的调试结果见图4.2图4.2 程序的调试图4.3 仿真调试4.3.1调试的方案用仿真软件protues对设计进行仿真调试,观察仿真结构并进行修改总结。(一)、调试的目的在于检查所设计电路是否能达到照仿真出来的效果,如果仿真能够按照设计正常运行则说明设计合理,设计能够达到要求,如果仿真结果不能按照设计要求运行则说明设计中存在问题,找出出现问题的原因并进行修改。 (二)、 调试的步骤如下:将程序加载到单片机内,启动仿真测试,观察仿真的效果与设计要求相比较,找出出错的地方,并逐步按照合理顺序,由简单到复杂逐步解决问题。 (三)、调试中出现的问题及解决方案: 1、南北方向的红绿灯不能正常的发光,观察显示单片机引脚信号正常,但是显示灯却不亮。参考资料并查找问题得出,在P0引脚上应加上拉原件,添加后发现,电路能够按照设计要求正常发光。 2、数码显示管显示数字有异常,数码管在显示计时时间的过程中有乱码出现,但是在显示十位和个位数字相同的时间车却能正常显示如88、77、66,检查程序并修改,得出问题是由于在显示输出后并未设子LED关断程序,导致前后输入的数据交叉出现乱码,添加关断程序后数码管能够正常运行。3、信号跳转时间与设计出入较大,在程序正常运行时,信号灯的跳转时间不能符合设计的要求,并有较大的出入。由于延时采用的是内部程序延时,计时并不是十分精确,再加上在延时程序之外的主程序也会造成延时,导致计时出现问题,按照设计要求对延时进行适当的修改后发现运行结果能满足设计要求 4.3.2仿真调试的结果及分析 (一)状态1的仿真结果:图4.3状态1的仿真结果南北方向的绿灯亮起,红灯和黄灯暗下,南北方向的车辆可以直行。南北方向的人行道绿灯亮起,行人可以通过。东西方向的红灯亮起,东西方向的绿灯和黄灯暗下,禁止车辆直行。东西方向的人行道红灯亮起,禁止行人通行。所有的转向灯都暗下,车辆禁止转向。仿真结果见图4.3此状态持续90s(二)状态2 的仿真结果:南北方向的绿灯暗,黄灯亮,红灯保持暗,禁止车辆继续通行,正在通过的车辆可继续行进。东西方向红灯保持亮,绿灯和黄灯保持暗,禁止车辆直行。东西方向的人行道保持红灯亮,南北方向的人行道绿灯闪烁,提示禁止行人继续通过,正在通过的行人快速通过。状态2 的仿真结果见图4.4此状态持续5s图4.4状态2的仿真结果(三)状态3的仿真结果:图4.5状态3的仿真结果东西和南北方向的红灯亮起,绿灯和黄灯暗下,禁止直行。南北方向的左右转向灯均亮起,可以左右转弯。东西方向的转向灯只右转灯亮起,东西方向禁止右转,只能左转。各方向人行道红灯亮起,行人禁止通行。状态3的仿真结果见图4.5 此状态持续45s(四)状态4的仿真结果:图4.6状态4的仿真结果南北方向红灯亮,南北方向绿灯和黄灯暗,南北方向车辆禁止直行。南北方向左右转向灯闪烁,禁止车辆转向,正在转弯的车辆可继续通过。东西方向红灯闪烁,绿灯和黄灯暗,车辆禁止直行。东西方向右转灯闪烁,左转灯暗,禁止车辆右转,正在转弯的车辆可继续通过。南北方向人行道红灯亮,禁止行人通过。东西方向人行道红灯闪烁,提示行人准备过马路。 状态4的仿真结果见图4.6此状态持续5s(五)状态5的仿真结果:图4.7状态5的仿真结果东西方向的绿灯亮起,东西方向的红灯和黄灯暗下,东西方向的车辆可以直行。东西方向的人行道绿灯亮起,行人可以通过。南北方向的红灯亮起,绿灯和黄灯下暗下,禁止车辆直行。南北方向的人行道红灯亮起,禁止行人通行。各个方向的转向灯都暗下,车辆禁止转向。状态5的仿真结果见图4.7此状态持续90s(六)状态6的仿真结果东西方向的绿灯暗,黄灯亮,红灯保持暗,禁止车辆继续通行,正在通过的车辆可继续行进。南北方向红灯保持亮,绿灯和黄灯保持暗,禁止车辆直行。南北方向的人行道保持红灯亮起,行人禁止通过。东西方向的人行道绿灯闪烁,提示禁止行人继续通过,正在通过的行人快速通过。状态6的仿真结果见图4.8此状态持续5s图4.8状态6的仿真结果(七)状态7的仿真结果:东西和南北方向的红灯亮起,绿灯和黄灯暗下,禁止直行。东西方向的左右转向灯均亮起,可以左右转弯。南北方向的转向灯只右转灯亮起,南北方向禁止右转,只能左转。各方向人行道红灯亮起,行人禁止通行。状态7的仿真结果见图4.9此状态持续45s图4.9状态7的仿真结果(八)状态8的仿真结果东西方向红灯亮,东西方向绿灯和黄灯暗,东西方向车辆禁止直行。东西方向左右转向灯闪烁,禁止车辆转向,正在转弯的车辆可继续通过。东西方向红灯闪烁,绿灯和黄灯暗,车辆禁止直行。南北方向右转灯闪烁,左转灯暗,禁止车辆右转,正在转弯的车辆可继续通过。东西方向人行道红灯亮,禁止行人通过。南北方向人行道红灯闪烁,提示行人准备过马路。状态8的仿真结果见图4.10 图4.10状态8的仿真结果此状态持续5s(九)紧急状态的仿真结果:图4.11紧急状态的仿真结果紧急状态按钮按下,各方向的红灯亮起,人行道的红灯也亮起,禁止一切行人和车辆通过,实行交通管制。紧急状态的仿真结果见图4.11 由仿真可知各仿真状态能够按照设计,要求正确的运行。说明该设计的硬件和程序都是符合要求的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 泌尿系超声介入技术
- 离婚谈判策略与子女抚养及财产分配协议
- 《涵盖房产、股权、债务处理的夫妻离婚协议》
- 离婚协议书起草与婚后财产分配法律援助合同
- 互联网企业股权转让及大数据应用合作协议
- 军人法律培训课件
- 少年追星指南课件
- 边境管理知识培训课件
- 2025年紧急医疗救援急救技术操作流程考核答案及解析
- 汽车测试技术与实验试题及答案
- 燃气定期安全检查制度
- 安全生产责任制(模板)
- 2025至2030中国无针注射系统行业发展趋势分析与未来投资战略咨询研究报告
- 感染性休克护理
- 别克汽车dcc管理制度
- 儿童过敏性紫癜饮食护理讲课件
- 中医视网膜静脉阻塞课件
- c2考驾照科目一试题及答案
- 送气工配送管理制度
- 2025-2030全球及中国工程CAD软件行业市场现状供需分析及市场深度研究发展前景及规划可行性分析研究报告
- 安检机租赁合同协议范本
评论
0/150
提交评论