版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、萍乡学院课程设计课 程 单片机课程设计 题 目 基于单片机的交通灯显示系统 院 系 机械电子工程学院 专业班级 13电子信息工程2班 学生姓名 蔡宗兴 学生学号 13452061 指导教师 胡子健 年 月 日摘要伴随着社会的发展以及人类生活水平的提高,汽车数量在逐年递增,交通问题不得不引起人们的重视。早在1858年,英国伦敦在主要街头安装了以燃煤气为光源的红蓝两色的机扳手式信号灯,用以指挥马车通行。这是世界上最早的交通信号灯。信号灯的出现,是交通得以有效管制,对于疏导交通流量,提高道路通行能力,减少交通事故有明显效果。近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测技术
2、日益更新。在实时监测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用,仅单片机方面知识是不够的,还应根据具体结构软硬件结合,加以完善。 目前交通灯的问题日益突出,单单依靠人力来指挥交通已经不可行了,所以,设计单片机来完成这个需求就显得越加迫切了。本设计的意义在于通过具体控制系统的设计,掌握微机控制系统设计的一般方法和处理问题的思路,特别是一些常用的技术手段。使大家能在实践教学环节中,积累设计经验,开阔思维空间交通在人们的日常生活中占有重要的地位,随着人们社会活动的日益频繁,这点更是体现的淋漓尽致。交通信号灯的出现,使交通得以有效管制,对于疏导交通流量、提高道
3、路通行能力,减少交通事故有明显效果。本设计是针对交通灯系统的设计,由模拟交通灯LED显示模块、数码管倒计时显示模块、独立按键模块、定时器模块组成。利用AT89C51单片机进行设计,使南北、东西方向都有红黄绿三种颜色信号灯,带有紧急制动模式和夜间模式,数码管实时显示灯亮的时间。以此达到交通灯的设计要求。关键词: AT89C51单片机、数码管倒计时显示模块、LED显示模块、独立按键模块27目录第一章 绪 论11.1课题的背景11.2 课题的现状21.3设计内容3第二章 整体方案设计32.1设计流程32.2系统的基本构成及原理32.3系统的通行方案设计5第三章 系统硬件设计63.1系统的整体框图63
4、.2 时钟电路的设计73.3 复位电路的设计73.4 LED灯控制电路的设计83.5 倒计时显示电路的设计93.6 按键控制电路的设计9第四章 系统软件设计104.1 交通灯的设计主程序流程图104.2外部中断0响应和外部中断1响应流程图11第五章 仿真步骤和仿真结果115.1仿真步骤116 .2仿真结果13心得体会16参考文献16附录 源程序代码1727第一章 绪 论1.1课题的背景随着现代社会中人口的迅速增长,运输安全的更高要求,有限的道路通行公共资源需要的增加,行车交通安全监控系统将成为时代的要求,它在人类的交通生活和工作环境中起着非常重要的作用,人们的衣食住行与交通控制系统的
5、都有着密不可分的联系。自工业革命、18世纪50年代以来,工业化的高速发展带动了整个交通运输系统,从而催生了对科学智能的交通安全控制管理体系研究机构的爆发性快速发展。智能交通控制系统正是一套由当代社会人们的出行、物流贸易等交通方式需求下产生的特殊的治安管理系统。为了确保交通管制的安全便捷,高效,人们不仅要依靠制定一系列的交通安全出行规则,还必须通过相应的技术手段,以确保安全、可靠、高效的快速实施。随着近代科学技术的发展,尤其是电力电子技术的讯猛发展与成熟,从而使智能交通安全系统的硬件和软件设计技术问题需求的都得到了保障。在今天,交通安全管理研究过程中可以根据特殊的智能化时间控制系统实现完全的自动
6、化过程,甚至是整个区域合并在一个统一的系统下范围里,从而安全、快速、有效、科学的进行迅速的自动调节非正常突发期状况的调整,以确保道路交通的安全以及畅通、及过往行人的安全。1.2 课题的现状对交通灯控制系统的研究迅速发展,是为了有效地解决因人们不断增加对交通流量的需求所造成的日益繁重问题,客观因素限制的短期问题的道路建设和人民交通快速发展,需要能够让更多的公路车辆实时公共交通资源有限的安全和有效利用,抢道强行行为和无序行为导致不受控制,造成交通拥堵不必要的,甚至交通瘫痪,这些是可以避免的。此外,人们实际上按照交通控制系统交通车辆很多实时调整,并实时传输和交通流线也很重要。交通路网的交通控制系统是
7、整个城市的交通大动脉,这反映了城市的产业发展和工业文明程度。交通控制系统是关乎人们公共财产安全、时间及个人人身安全的。若社会上具有良好的科学的交通控制系统技术,对资源的利用、物流及时通畅和人们的安全出行都是非常具有意义的,只有确保平稳和安全的路线交通系统,方可确保物流运输的时间和地点及时到位,市民出行安全和舒适,甚至是生命通道的重要保证。当今社会安装在各个路口的红、黄、绿灯,已经是管理交通系统最安全通有效的手段之一了。1.3设计内容 (1)东西方向、南北方向均有红、黄、绿三种信号灯; (2)带紧急制动按钮,按钮按下,所有方向红灯亮;再次按下,恢复正常显示; (3
8、)夜间模式按下,所有方向显示黄灯闪烁; (4)实时提醒绿灯亮的剩余时间。第二章 整体方案设计2.1设计流程 (1)根据要求设计总体方案; (2)绘制硬件电路原理图; (3)画出软件程序流程图; (4)利用Keil C51软件编写软件源代码; (5)在Proteus软件下仿真调试运行。 2.2系统的基本构成及原理基于单片机设计的交通灯控制系统,可以通过单片机直接控制交通信号灯的状态变化,从而基本上能够指挥交通的实际通行,当然,通过接入LED数码管便能够显示倒计时以便提醒行人,使得交通控制系统更具备人性化的特点。图
9、2.2根据这,以单片机作为控制核心、连接成的最小单片机系统、由单片机模块、最小单片机系统外围接口电路模块以及按键设置模块等产生输入。红灯、绿灯、黄灯三种信号灯状态模块,8段LED数码管倒计时模块接受输出。系统的总体框图,如上图。(1) 定时器工作原理其基本原理是给定时器工作的初始值,初始值被送到TH和TL。因此,我们可以把计数器的零计数所需,所需要的数量设置为C,设置为TC的计数值可以得到下面的公式:公式2.1 TC=M-C式中,M为计数器模块。计数不是目的,目的是时间价值,设计1次,即周期定时器计数脉冲是T0,这是12倍的单片机系统频率周期,设置所需的时间值T,则C = T/ T0。该计算公
10、式:公式2.2 T=(MTC)T0计数器模式。在方式0 M是8192; 方式1 M是65536;在方式2和方式3是256,这可以最大延迟计算以各种方式。如果主脉冲频率单片机为12MHZ,方式0最大只有8.129毫秒的时间延迟。(2) 软件延迟工作原理单片机的工作频率为12MHZ,一个机器周期和频率,机器周期应该是12次的频率,因此一个机器周期的时间可以通过12 *(1/12MHZ)来计算=1微秒。因此,我们可以知道循环的次数每个特定指令的机器,就可以通过执行以确定的第二时间的指令。 我们建立了一个初始值是一个软件计数器20和定时器T0为50毫秒。所以每次当定时器T0为50毫秒时,CPU将快速中
11、断响应请求责令其溢出时间,那么中断服务子程序进入他的命令。后CPU进入中断服务子程序命令,将让软件自动计数器减1,然后再确定它的值是零。如果结果是零所述第二时间已经过去。定时器设定时间为50毫秒,定时器T0必须工作在1方式。(3)中断工作原理本系统主要采用外部中断,中断信号由引脚INT0和INT1输入(低电平有效) ,每个时钟周期CPU检查输入信号引脚INT0和INT1引脚,允许80C51的外部中断是电平或负边沿路两中断输入中断请求信号,用户可以设置状态引脚IT0和IT1脚TCON的实现。随着IT0的引脚作为一个例子,当该引脚IT0 = 0 ,外部中断是电平触发方式,当针IT0 = 1 ,外部
12、中断触发消极的方式(这种设计的优势是采用电平触发模式) ,针IE0中断标志位,当中断信号,在中断服务子程序集,对此, IE0会自动复位引脚。在IE的EA引脚允许中断总控制位。当EA引脚为1 ,打开;当该引脚当EA为0 ,停止。引脚EX0外部中断使能位。当EX0引脚为1 ,打开;当引脚时EX0为0 ,停止。在优先权限,一旦外部中断信号,单片机CPU首先保护断点, PC值压入堆栈,然后执行相应的中断服务子程序,实施后,在返回的CPU使用RETI指令,地址,断点会从堆栈中保存到回电脑,程序则正常执行。2.3系统的通行方案设计交通状态及红绿灯状态的图表状态1状态2状态3状态4东西向禁行等待变换通行等待
13、变换南北向通行等待变换禁行等待变换东西红灯0011东西黄灯1110东西绿灯1101南北红灯1100南北绿灯0111南北黄灯1011交通灯四种状态如下:状态1:东西红灯亮13S,南北绿灯亮8S。状态2:东西红灯亮5S,南北黄灯亮5S。状态3:南北红灯亮15S,东西绿灯亮10S。状态4:南北红灯亮5S,东西黄灯亮5S。第三章 系统硬件设计3.1系统的整体框图图3.1在该系统中,东西方向和南北方向四个方向,在任意时刻只能令其中一个方向能够通行,而另一个方向,则禁止通行,此状态维持一定的时间,经历短暂的过渡时间后,将通行和禁行的方向对调。系统的具体显示状态如图所示。交通状态由状态1开始变换直到状态4,
14、而后循环到状态1,周而复始。3.2 时钟电路的设计图3.2时钟电路原理图如上图3.2所示,运用内部时钟产生方式,在XTAL1和XTAL2两侧跨接陶瓷或晶体振荡器,同内部反相器行成稳定的自击荡器。它发出的时钟脉冲将直接送入片内的定时控制部件。3.3 复位电路的设计图3.3上电+按钮电平复位电路原理图如上图3.3所示,采用上电加上按钮电平复位的方式,若按下按钮时,RST管脚高电平将触发。为保证复位的可靠,RC时间常数应该要大于两个机器的周期,一般电容值取22uF,而电阻值取1K。3.4 LED灯控制电路的设计图3.4交通灯状态显示电路如上图3.4所示,交通灯的状态显示电路是由东、西、南、北四个方向
15、各3个LED灯组成,分别显示了四个方向上的红色、黄色、绿色三个状态,用来指示十字路口的各个方向车辆的来往行驶。通过软件编程,可以使路口的交通状态变化为:南、北方向车道和东、西方向车道两条互相交叉道路上各车辆交替行驶,南、北方向车道和东、西方向车道每次通行时间都设为28秒,当绿灯转为红灯时,要求黄灯先显示5秒钟,然后才能够变换运行车道。 3.5 倒计时显示电路的设计 东西方向 南北方向图3.5 数码管显示电路原理图如上图3.5所示,由一个共阳极两位数码管来实现倒计时。由于P0口输出电流小,需外接上拉电阻,COME端接5V电源。3.6 按键控制电路的设计图3.6键盘电路原理图P3.2接紧急制动按钮
16、 P3.3接夜间模式按钮如上图3.6所示,通过软件编程,按下紧急制动按钮进入外部中断0响应,数码显示时间将停止倒计时,此时,所有方向红灯亮,延时5S进入正常状态。按下夜间模式按钮进入外部中断1响应,数码显示时间将停止倒计时,此时,所有方向黄灯闪烁,延时5S进入正常状态。第四章 系统软件设计整个交通灯系统的功能是由硬件电路配合各软件功能从而实现的,硬件部位定型以后,各部位的软件功能也就相应的基本定下来了。系统软件设计在整个交通灯设计中起着非常重要的作用,单片机是否能像预期目标那样执行命令、现场的采集数据、而后对数据进行预期规定的处理,均要依靠过软件程序的编写,且将这些程序转换为C语言后才能实现。
17、4.1 交通灯的设计主程序流程图图4.1在十字路口,分为东西向和南北向,在任一时刻只有一个方向通行,另一方向禁行,持续一定时间,经过短暂的过渡时间,将通行禁行方向对换。如上图4.1所示。4.2外部中断0响应和外部中断1响应流程图图4.2第五章 仿真步骤和仿真结果5.1仿真步骤第一步 在Proteus中画好电路图 在Proteus中建空白文件保存,从元件库中选择并放置元器件和电源、地终端,按原理图连好线。 第二步 电气检测 电路图设计完成后单击电气检查按钮,会跳出检查结果窗口。如下图所示窗口前面是一些文本信息,完成接着是电器检查结果列表。若有错误,会详细说明。当规则
18、检查出现:NETLIST GENERATED OK ERROR FOUND,表示通过检查。图5.1 电气检测窗口第三步 加载目标代码文件设置时钟频率 将目标代码文件“3.Hex”加载到单片机内,在ISIS编辑区双击单片机,则弹出如下窗口。单击program file右侧按钮,将“3.hex”文件加载到单片机AT89S51内部。图5.2加载目标代码文件设置时钟频率四步 仿真 点击仿真按钮,启动仿真。 6 .2仿真结果待确认仿真现象与设计要求的功能一致且不出现错误时仿真完成。
19、将编好调试完成的源程序下载到自己仿真硬件电路上进行最后的测试,看各个设计功能是否能够实现。仿真结果如下所示:图5.3南北绿灯亮,东西红灯亮图5.4南北黄灯亮,东西红灯亮图5.5东西绿灯亮,南北红灯亮图5.6东西黄灯亮,南北红灯亮图5.7紧急制动模式,所有红灯亮图5.8夜间模式,所有黄灯闪烁心得体会随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在,因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。单片机作为我们的主要专业课之一,虽然在开始学习时我对这门课并没有什么兴趣,觉得那些程序指令枯燥乏味,但在这次课程设计后我发现自己在一点一滴
20、的努力中对单片机的兴趣也在逐渐增加。在设计中,我对单片机系统有了一个更深刻的认识。同时通过此次课程设计,熟练掌握了汇编语言的编程方法,进一步熟悉了外部中断的使用方法。通过使用仿真软件Proteus,深化了对软硬件联合调试的意义的理解,在仿真的过程中胡老师指点了许多存在的问题,使我大大提高了联调的效率。最后,我觉得作为一名电子信息工程专业的学生,单片机的课程设计是很有意义的,在这个过程中可以学会如何把自己平时所学的东西应用到实际中。我觉得课程设计反映的是一个从理论到实际应用的过程,这个过程对缺乏实际经验的我们是非常重要的。通过这次单片机课程设计使我认识到自身知识及能力的薄弱,更让我知道实践的重要
21、性。在以后的学习过程中,我会更加努力学习单片机的相关知识和应用,真正能够运用单片机组成的微控制系统解决各种实际的问题。参考文献1.单片机原理及应用(C51编程)李全利 主编 高等教育出版社2.单片机基础李广弟,1992北京航空航天大学出版社3.王建校等编著.51系列单片机及C51程序设计.北京,科学出版社,20024.C程序设计(第四版)谭浩强 著清华大学出版社5.谢维成 杨加国 编著 单片机原理与应用及C51程序设计 北京:清华大学出版社,2006.8附录 源程序代码#include<reg51.h> #define uchar unsigned char #define uin
22、t unsigned int sbit red1 =P10; /P1.0东西红灯sbit yellow1=P11; /P1.1东西黄灯 sbit green1 =P12; /P1.2东西绿灯 sbit red2 =P13; /P1.3南北红灯 sbit yellow2=P14; /P1.4南北黄灯 sbit green2 =P15; /P1.5南北绿灯 sbit nbweixuan1=P00; /P0.0南北数码管位选1sbit nbweixuan2=P01; /P0.1南北数码管位选2sbit dxweixuan1=P02; /P0.2东西数码管位选1 sbit dxweixuan2=P03
23、; /P0.3东西数码管位选2sbit P32 = P32;/P3.2紧急制动按键sbit P33 = P33;/P3.3夜间模式按键uint Counter,num,shi1,shi2,ge1,ge2;/定义无符号整型变量 uint code table=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90; void DelayMS(uint n); /延时函数声明 void display(uint shi1,uint ge1,uint shi2,uint ge2);/数码管显示函数声明 void zhuangtai1(); /状态函数1声明
24、 void zhuangtai2(); /状态函数2声明void zhuangtai3(); /状态函数3声明 void zhuangtai4(); /状态函数4声明void zhuangtai5(); /状态函数5声明 void main() /主函数 P0=0xFF; /P0口初始化 P1=0xFF; /P1口初始化 P2=0xFF; /P2口初始化 P3=0xFF; /P3口初始化 TMOD=0x01; TH0=0x3C; TL0=0xB0; /定时50ms IE=0x87; /开中断 TCON=0x15; zhuangtai1(); while(1) zhuangtai2(); zhu
25、angtai3(); zhuangtai4(); zhuangtai5(); void zhuangtai1() /状态函数1 num=3; TMOD=0x01; TH0=0x3C; /定时50ms TL0=0xB0; EA=1; ET0=1; TR0=1; while(1) red1=0; red2=0; green1=1; green2=1; yellow1=1; yellow2=1; if(Counter=20) /定时1s减1 Counter=0; num-; shi1=shi2=num/10; ge1=ge2=num%10; if(num=0) break; display(shi1
26、,ge1,shi2,ge2); void zhuangtai2() /状态函数2 num=9; TMOD=0x01; TH0=0x3C; /定时50ms TL0=0xB0; EA=1; ET0=1; TR0=1; while(1) red1=0; yellow1=1; green1=1; red2=1; yellow2=1; green2=0; if(Counter=20) /定时1s减1 Counter=0; num-; shi1=(num+5)/10; ge1=(num+5)%10; shi2=num/10; ge2=num%10; if(num=0) break; display(shi
27、1,ge1,shi2,ge2); void zhuangtai3() /状态函数3 num=6; TMOD=0x01; TH0=0x3C; /定时50ms TL0=0xB0; EA=1; ET0=1; TR0=1; while(1) red1=0; yellow1=1; green1=1; red2=1; yellow2=0; green2=1; if(Counter=20) /定时1s减1 Counter=0; num-; shi1=num/10; shi2=shi1; ge1=num%10; ge2=ge1; if(num=0) break; display(shi1,ge1,shi2,g
28、e2); void zhuangtai4() /状态函数4 num=11; TMOD=0x01; TH0=0x3C; /定时50ms TL0=0xB0; EA=1; ET0=1; TR0=1; while(1) red1=1; yellow1=1; green1=0; red2=0; yellow2=1; green2=1; if(Counter=20) /定时1s减1 Counter=0; num-; shi1=num/10; ge1=num%10; shi2=(num+5)/10; ge2=(num+5)%10; if(num=0) break; display(shi1,ge1,shi2,ge2); void zhuangtai5() /状态函数5 num=6; TMOD=0x01; TH0=0x3C; /定时50ms TL0=0xB0; EA=1; ET0=1; TR0=1; while(1) red1=1; yellow1=0; green1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《青年友谊圆舞曲》的音乐课件
- 人教部编版四年级语文上册第13课《精卫填海》精美课件
- 《丛林故事》练习题(含答案)
- 2024年武汉驾驶员客运资格证模拟考试题及答案详解
- 2024年江西客运证考什么
- 2024年山西客运考试模拟题及答案
- 2024年广州客运从业资格证仿真考试题
- 2024年芜湖客运从业资格摸拟考试
- 专练21人口60题-2024年高考地理总复习高频考点提分必刷题(原卷版)
- 人教部编版二年级语文上册第16课《朱德的扁担》精美课件
- JBT 14615-2024 内燃机 活塞运动组件 清洁度限值及测定方法(正式版)
- 2024年保密知识测试试题库(综合题)
- 《做个加法表》名师课件
- 个人与公司签订的销售提成协议
- 危险性较大的分部分项安全管理核查表
- 2024年纪检监察综合业务知识题库含答案(研优卷)
- 第8课《用制度体系保证人民当家做作主》第2框《我国的基本政治制度》课件 2023-2024学年 中职高教版(2023)中国特色社会主义
- 手术切口感染PDCA案例
- 小学大思政课实施方案设计
- 2024年入团积极分子结业考试试题
- 供应室消防应急预案演练
评论
0/150
提交评论