您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 基于单片机的交通信号灯设计
毕业论文题目:基于单片机的交通信号灯设计姓名:专业:设计要求及实现功能,用51单片机实现一个模拟交通信号灯系统。(1)右转灯设置为绿灯常亮,直行灯和左转灯为红、绿、黄,三灯转换。绿灯时间设置为30秒黄灯为3秒,然后是红灯。(2)要求数码管能以倒计时的方式,显示距离下一次红灯或绿灯的时间(黄灯3秒包括其中)。(3)设置紧急手动控制模式,既紧急南北绿灯和紧急东西绿灯。硬件设计根据课题要求和实现功能,本人选用了AT89C51单片机。单片机的简介单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。单片机是一种集成电路芯片,采用超大规模技术把具有数据处理能力(如算术运算,逻辑运算、数据传送、中断处理)的微处理器(CPU),随机存取数据存储器(RAM),只读程序存储器(ROM),输入输出电路(I/O口),可能还包括定时计数器,串行通信口(SCI),显示驱动电路(LCD或LED驱动电路),脉宽调制电路(PWM),模拟多路转换器及A/D转换器等电路集成到一块单块芯片上,构成一个最小然而完善的计算机系统.这些电路能在软件的控制下准确、迅速、高效地完成程序设计者事先规定的任务.由此来看,单片机有着微处理器所不具备的功能,它可单独地完成现代工业控制所要求的智能化控制功能,这是单片机最大的特征.然而单片机又不同于单板机,芯片在没有开发前,它只是具备功能极强的超大规模集成电路,如果赋予它特定的程序,它便是一个最小的、完整的微型计算机控制系统,它与单板机或个人电脑(PC机)有着本质的区别,单片机的应用属于芯片级应用,需要用户了解单片机芯片的结构和指令系统以及其它集成电路应用技术和系统设计所需要的理论和技术,用这样特定的芯片设计应用程序,从而使该芯片具备特定的功能.不同的单片机有着不同的硬件特征和软件特征,即它们的技术特征均不尽相同,硬件特征取决于单片机芯片的内部结构,用户要使用某种单片机,必须了解该型产品是否满足需要的功能和应用系统所要求的特性指标.这里的技术特征包括功能特性、控制特性和电气特性等等,这些信息需要从生产厂商的技术手册中得到.软件特征是指指令系统特性和开发支持环境,指令特性即我们熟悉的单片机的寻址方式,数据处理和逻辑处理方式,输入输出特性及对电源的要求等等.开发支持的环境包括指令的兼容及可移植性,支持软件(包含可支持开发应用程序的软件资源)及硬件资源.要利用某型号单片机开发自己的应用系统,掌握其结构特征和技术特征是必须的.单片机控制系统能够取代以前利用复杂电子线路或数字电路构成的控制系统,可以软件控制来实现,并能够实现智能化,现在单片机控制范畴无所不在,例如通信产品、家用电器、智能仪器仪表、过程控制和专用控制装置等等,单片机的应用领域越来越广泛.诚然,单片机的应用意义远不限于它的应用范畴或由此带来的经济效益,更重要的是它已从根本上改变了传统的控制方法和设计思想.是控制技术的一次革命,是一座重要的里程碑.1946年第一台电子计算机诞生至今,只有50年的时间,依靠微电子技术和半导体技术的进步,从电子管——晶体管——集成电路——大规模集成电路,现在一块芯片上完全可以集成几百万甚至上千万只晶体管,使得计算机体积更小,功能更强.特别是近20年时间里,计算机技术获得飞速的发展,计算机在工农业,科研,教育,国防和航空航天领域获得了广泛的应用,计算机技术已经是一个国家现代科技水平的重要标志.单片机诞生于20世纪70年代,象Fairchid公司研制的F8单片微型计算机.所谓单片机是利用大规模集成电路技术把中央处理单元(CenterProcessingUnit,也即常称的CPU)和数据存储器(RAM)、程序存储器(ROM)及其他I/O通信口集成在一块芯片上,构成一个最小的计算机系统,而现代的单片机则加上了中断单元,定时单元及A/D转换等更复杂、更完善的电路,使得单片机的功能越来越强大,应用更广泛.20世纪70年代,微电子技术正处于发展阶段,集成电路属于中规模发展时期,各种新材料新工艺尚未成熟,单片机仍处在初级的发展阶段,元件集成规模还比较小,功能比较简单,一般均把CPU、RAM有的还包括了一些简单的I/O口集成到芯片上,象Farichild公司就属于这一类型,它还需配上外围的其他处理电路方才构成完整的计算系统.类似的单片机还有Zilog公司的Z80微处理器.1976年INTEL公司推出了MCS-48单片机,这个时期的单片机才是真正的8位单片微型计算机,并推向市场.它以体积小,功能全,价格低赢得了广泛的应用,为单片机的发展奠定了基础,成为单片机发展史上重要的里程碑.在MCS-48的带领下,其后,各大半导体公司相继研制和发展了自己的单片机,象Zilog公司的Z8系列.到了80年代初,单片机已发展到了高性能阶段,象INTEL公司的MCS-51系列,Motorola公司的6801和6802系列,Rokwell公司的6501及6502系列等等,此外,日本的著名电气公司NEC和HITACHI都相继开发了具有自己特色的专用单片机.80年代,世界各大公司均竞相研制出品种多功能强的单片机,约有几十个系列,300多个品种,此时的单片机均属于真正的单片化,大多集成了CPU、RAM、ROM、数目繁多的I/O接口、多种中断系统,甚至还有一些带A/D转换器的单片机,功能越来越强大,RAM和ROM的容量也越来越大,寻址空间甚至可达64kB,可以说,单片机发展到了一个全新阶段,应用领域更广泛,许多家用电器均走向利用单片机控制的智能化发展道路.1982年以后,16位单片机问世,代表产品是INTEL公司的MCS-96系列,16位单片机比起8位机,数据宽度增加了一倍,实时处理能力更强,主频更高,集成度达到了12万只晶体管,RAM增加到了232字节,ROM则达到了8kB,并且有8个中断源,同时配置了多路的A/D转换通道,高速的I/O处理单元,适用于更复杂的控制系统.九十年代以后,单片机获得了飞速的发展,世界各大半导体公司相继开发了功能更为强大的单片机.美国Microchip公司发布了一种完全不兼容MCS-51的新一代PIC系列单片机,引起了业界的广泛关注,特别它的产品只有33条精简指令集吸引了不少用户,使人们从INTEL的111条复杂指令集中走出来.PIC单片机获得了快速的发展,在业界中占有一席之地.AT89C51单片机介绍:1.电源引脚:连接电源Vcc(40脚)电源正极Vss(20脚)电源负极2.时钟引脚:连接时钟电路XTAL1(19脚):输入引脚XTAL2(18脚):输出引脚3.复位引脚:连接复位电路RST/VPD(9脚):复位引脚4.控制引脚:辅助控制作用PSEN(29脚)ALE/PROG(30脚)EA/VPP(31脚):接高电平5.I/O端口引脚:用来连接单片机和外部设备,实现数据的输入/输出P0.0----P0.7(39-32脚)8位双向I/O口线P1.0----P1.7(1-8脚)8位准双向I/O口线P2.0----P2.7(21-28脚)8位准双向I/O口线P0.0----P3.7(10-17脚)8位准双向I/O口线单片机工作条件:要使单片机工作起来,最基本的条件是1.电源电路,向单片机供电AT89C51单片机的工作电压范围:4.0V—5.5V所以通常给单片机外接5V直流电源既:VCC40脚:+5VVss(20)脚:接地2.时钟电路:单片机工作的时间基准,决定单片机的工作速度AT89C51单片机的时钟频率范围:0-33MHzXTAL1(19脚)XTAL2(18脚接晶振,C1C2电容起稳定作用注意:因为本设计使用的是12MHz频率的晶振晶振频率=12MHz振荡频率=12MHz振荡周期=1/12us机器周期=振荡周期*12=1/12us*12=1us3.单片机复位电路复位电路产生复位信号,使单片机从固定的起始状态开始工作,完成单片机的“启机”过程。51单片机复位只需要在RST/VPD(9脚)接高电平持续2us就可以实现。如上图分别为上电复位电路、手动复位电路和复合复位电路以图3复合复位电路来讲解单片机的复位原理自动复位在电路图中,电容的的大小是10uf,电阻的大小是10k。所以根据公式,可以算出电容充电到电源电压的0.7倍(单片机的电源是5V,所以充电到0.7倍即为3.5V),需要的时间是10K*10UF=0.1S。也就是说在电脑启动的0.1S内,电容两端的电压时在0~3.5V增加。这个时候10K电阻两端的电压为从5~1.5V减少(串联电路各处电压之和为总电压)。所以在0.1S内,RST引脚所接收到的电压是5V~1.5V。在5V正常工作的51单片机中小于1.5V的电压信号为低电平信号,而大于1.5V的电压信号为高电平信号。所以在开机0.1S内,单片机系统自动复位(RST引脚接收到的高电平信号时间为0.1S左右)。按键复位在单片机启动0.1S后,电容C两端的电压持续充电为5V,这是时候10K电阻两端的电压接近于0V,RST处于低电平所以系统正常工作。当按键按下的时候,开关导通,这个时候电容两端形成了一个回路,电容被短路,所以在按键按下的这个过程中,电容开始释放之前充的电量。随着时间的推移,电容的电压在0.1S内,从5V释放到变为了1.5V,甚至更小。根据串联电路电压为各处之和,这个时候10K电阻两端的电压为3.5V,甚至更大,所以RST引脚又接收到高电平。单片机系统自动复位。信号灯接法:P0接口的0-7,P2口的0-3口。共12个接口,接12个LED灯。它们是南北直行红、黄、绿P0^0,P0^1,P0^2南北左转红、黄、绿P0^3,P0^4,P0^5东西直行红、黄、绿P0^6,P0^7,P2^0东西左转红、黄、绿P2^1,P2^2,P2^3由于P0口没有内置上拉电阻,所以接了一个排阻阻止为1K,LED发光二极管导通压降为1.7V发光二极管工作在3mA-10mA之间,既(5V-1.7V)/1K欧姆=3.3mA,在正常工作范围内。数码管接法数码管分共阴和共阳数码管,本设计采用的是共阴数码管(发光二极管的阴极共同连接在一起)。如图所示,共阴极数码管,内部由八个发光二极管组成:abcdefgh(dp)根据要显示的内容,点亮所需的二极管,如显示数字“7”既abc输入高电平,公共端输入低电平即可。共阴极二极管显示数字0-9编码如下01234567890x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F本设计中用到8个2位数码管,直行4个左转4个,数码管段选(数码管内每个二极管的控制)由P1端口控制,控制数码管内的二极管,位选(公共端),由P2口(P2.4-P2.7)和P3口(P3.0-P3.3)八个I/O口控制。数码光动态扫描如图显示的3298四个数字其实程序设计的时候,是第一个显示3然后灭掉第二个显示2然后灭点第三个显示9然后灭点第四个显示8然后灭掉。以非常快的速度这样显示,在我们看来就感觉四个数字是同时点亮的,这就是由于人眼具有一定的“视觉残留”,只要延时时间设置恰当,便会感觉到多位数码管同时被点亮。程序设计:本程序设计要考虑多方面的因素1.信号灯(发光二极管)由时间变化而转换2.数码管也要随时变化这都要用到单片机内部的定时器,才能准确显示和变化。信号灯设计信号灯亮灭顺序初始化主循环开始定时1秒到数据显示到数码管交通灯亮灭情况显示计时减一计时到0复位初始化开始下一次循环132秒模式判断上电初始化定时器初始化数码管不显示数据交通灯全红人行灯全绿正常模式紧急模式南北直行绿灯30秒然后黄灯3秒(黄灯1秒1次闪烁),33秒后南北直行变红灯同时南北左转变绿灯30秒接着3秒黄灯66秒后接着南北左转变红灯,同时东西直行变绿灯30秒接着3秒黄灯,99秒后东西直行红灯,同时东西左转绿灯30秒接着3秒黄灯。整个轮回共用
本文标题:基于单片机的交通信号灯设计
链接地址:https://www.777doc.com/doc-4290405 .html