版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机课程设计-自动交通管理系统华 东 交 通 大 学课程设计任务书自动交通管理系统 姓名:。 专业:信息工程班级:10信息工程 学号: 组员: 目录一、 概述- 3 -1.1 课题名称- 3 -1.2 设计目的- 3 -1.4设计要求- 3 -二、 硬件设计- 4 -2.1 MCS-51单片机及ADC0832简介- 4 -2.2 系统硬件设计- 9 -2.2.1 自动交通管理系统方案论证- 9 -2.2.2 系统总框图- 10 -2.2.3 硬件接线图- 11 -三、 软件设计- 17 -3.1 程序流程图- 17 -3.2初值计算- 18 -3.2.1相应程序代码- 18 -四、 运行调试
2、- 20 -五、心得体会- 21 -六、参考文献- 21 -七、附录- 22 -7.3硬件连线图- 26 -一、 概述摘要:本文研究的是以AT89C51单片机为控制器的自动交通控制系统,该系统用红、绿、黄三支共两组发光二极管表示交通信号灯,利用单片机模拟有时间显示的定时交通信号灯控制管理,并附带有撞红灯警告功能以及紧急按钮。本设计是以软件和硬件相结合的方式来实现,文中给出了具体的硬件电路图和软件流程图及程序源码。关 键 词:智能交通灯,AT89C51,LED1.1 课题名称自动交通管理系统1.2 设计目的要求我们掌握单片机各模块的基本工作原理,培养单片机应用系统的设计能力,熟练使用proteu
3、s进行设计仿真。1.3设计内容设计用单片机控制的十字路口交通灯及撞红灯报警控制系统,并实现这些功能。1.4设计要求用红、绿、黄三支共两组发光二极管表示交通信号灯,利用单片机模拟有时间显示的定时交通信号灯控制管理。信号灯的变化规律可如下:1. 放行线:绿灯亮放行25秒,黄灯亮警告5秒,然后红灯亮禁止。2. 禁示线:红灯亮禁止30秒,然后绿灯亮放行。3. 当某一方向的红灯亮时,若该方向有车通过,则LED亮报警。(撞红灯信号可用3-5V模拟量表示)4. 同时用2位数码管进行30秒钟递减时间显示。5.增加手动按钮,按下紧急按钮后,所有红灯亮,禁止通行且时间持续为10秒。二、 硬件设计2.1 MCS-5
4、1单片机及ADC0832简介MCS-51单片机内部结构 8051是MCS-51系列单片机的典型产品,以这一代表性的机型进行系统的讲解。 8051单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时/计数器、并行接口、串行接口和中断系统等几大单元及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明:·中央处理器: 中央处理器(CPU)是整个单片机的核心部件,是8位数据宽度的处理器,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工
5、作,完成运算和控制输入输出功能等操作。·数据存储器(RAM) 8051内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。图1-内部结构·程序存储器(ROM):8051共有4096个8位掩膜ROM,用于存放用户程序,原始数据或表格。·定时/计数器(ROM):8051有两个16位的可编程定时/计数器,以实现定时或计数产生中断用于控制程
6、序转向。·并行输入输出(I/O)口:8051共有4组8位I/O口(P0、 P1、P2或P3),用于对外部数据的传输。·全双工串行口:8051内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。·中断系统:8051具备较完善的中断功能,有两个外中断、两个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有2级的优先级别选择。·时钟电路:8051内置最高频率达12MHz的时钟电路,用于产生整个单片机运行的脉冲时序,但8051单片机需外置振荡电容。单片机的结构有两种类型,一种是程序存储器和
7、数据存储器分开的形式,即哈佛(Harvard)结构,另一种是采用通用计算机广泛使用的程序存储器与数据存储器合二为一的结构,即普林斯顿(Princeton)结构。INTEL的MCS-51系列单片机采用的是哈佛结构的形式,而后续产品16位的MCS-96系列单片机则采用普林斯顿结构。下图是MCS-51系列单片机的内部结构示意图2。图2-单片机的内部结构MCS-51的引脚说明:MCS-51系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,右图是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。
8、现在我们对这些引脚的功能加以说明:MCS-51的引脚说明:MCS-51系列单片机中的8031、8051及8751均采用40Pin封装的双列直接DIP结构,右图是它们的引脚配置,40个引脚中,正电源和地线两根,外置石英振荡器的时钟线两根,4组8位共32个I/O口,中断口线与P3口线复用。现在我们对这些引脚的功能加以说明:如图3 图3-单片机外部引脚图Pin9:RESET/Vpd复位信号复用脚,当8051通电,时钟电路开始工作,在RESET引脚上出现24个时钟周期以上的高电平,系统即初始复位。初始化后,程序计数器PC指向0000H,P0-P3输出口全部为高电平,堆栈指针写入07H,其它专用寄存器被
9、清“0”。RESET由高电平下降为低电平后,系统即从0000H地址开始执行程序。然而,初始复位不改变RAM(包括工作寄存器R0-R7)的状态,8051的初始态。8051的复位方式可以是自动复位,也可以是手动复位,见下图4。此外,RESET/Vpd还是一复用脚,Vcc掉电其间,此脚可接上备用电源,以保证单片机内部RAM的数据不丢失。图4·Pin30:ALE/当访问外部程序器时,ALE(地址锁存)的输出用于锁存地址的低位字节。而访问内部程序存储器时,ALE端将有一个1/6时钟频率的正脉冲信号,这个信号可以用于识别单片机是否工作,也可以当作一个时钟向外输出。更有一个特点,当访问外部程序存储
10、器,ALE会跳过一个脉冲。如果单片机是EPROM,在编程其间,将用于输入编程脉冲。·Pin29:当访问外部程序存储器时,此脚输出负脉冲选通信号,PC的16位地址数据将出现在P0和P2口上,外部程序存储器则把指令数据放到P0口上,由CPU读入并执行。·Pin31:EA/Vpp程序存储器的内外部选通线,8051和8751单片机,内置有4kB的程序存储器,当EA为高电平并且程序地址小于4kB时,读取内部程序存储器指令数据,而超过4kB地址则读取外部指令数据。如EA为低电平,则不管地址大小,一律读取外部程序存储器指令。显然,对内部无程序存储器的8031,EA端必须接地。在编程时,E
11、A/Vpp脚还需加上21V的编程电压。ADC0832软件简介ADC0832是一种8位分辨率,双通道AD转换芯片。它能够对两路模拟信号进行模数转换,可以在单端输入方式和差分输入方式下工作。ADC0832引脚图如下图:引脚说明如下:/CS:片选端,低电平时选中芯片CH0:模拟输入通道0CH1:模拟输入通道1GND:电源地DI:数据信号输入,通道选择控制端DO:数据信号输出,转换后的数据由此端口输出CLK:时钟输入端VCC:电源 当ADC0832未工作时,必须将片选端CS置于高电平。此时,芯片禁用。当需要进行A/D转换时,应将片选端CS置于低电平并保持到转换结束。芯片开始工作后,还需让单片机想芯片的
12、CLK端输入时钟脉冲,在第一个时钟脉冲的下降沿之前将DI端的输出必须是高电平,表示开始转换。在第2、3个脉冲的下降沿之前。DI端口输入两位数据,这两位数据用于选择数据采集通道。当DI端依次输入1、0时,选择通道0;当DI端依次输入1、1时,选择通道1;当DI端依次输入0、0时,CH0作为正输入端,CH1作为负输入端;当DI端依次输入0、1时,CH0作为负输入端,CH1作为正输入端; 在第三个脉冲下降沿后,DI端口就失去作用了。此后数据输出端DO开始输出转换后的数据。在第四个脉冲的下降沿输出转换后数据的最高位直到第11个脉冲下降沿输出数据的最低位。至此,一个字节的数据输出完成。然后从此位开始输出
13、下一个相反字节的数据,即从第11个脉冲的下降沿输出数据的最低位,直到第19个脉冲时数据输出完成,也标志着一次AD转换结束。后一相反字节的8个数据位是作为校验位使用的,一般只读出第一个字节的前8个数据位即能满足要求,对于后8位数据,可以将其丢弃。 正常情况下,ADC0832与单片机的接口应为4条数据线:CS,CLK,DI,DO。但由于DI和DO两个端口在通信时并未同时使用,而是先有DI端口输入两位数据来选择通道,再由DO端口输出数据,因此,实际使用中可以将DI和DO并联在一根数据线上使用。2.2 系统硬件设计2.2.1 自动交通管理系统方案论证水平、垂直两干道交于一个十字路口,各干道有一组红、黄
14、、绿三色的指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。黄灯亮提示人们注意红、绿灯的状态即将切换,且黄灯燃亮时间为显示干道的同行时间,指示灯燃亮的方案如下表。水平道30秒25秒5秒红灯绿灯黄灯垂直道25秒5秒30秒绿灯黄灯红灯紧急按钮10秒10秒红灯倒计时完成后,继续被打断前的计时状态水平垂直方向均为红灯说明:A 当水平方向为红灯时,时间持续30秒,此时水平方向的道路为禁行线,垂直方向的道路为放行线,绿灯25秒正常通行,黄灯5秒提醒路人交通灯的状态即将变化;B 当垂直方向为红灯时,时间持续30秒,此时垂直方向的道路为禁行线,垂水平向的道路为放行线,绿灯25秒正常通行,黄灯5秒
15、提醒路人交通灯的状态即将变化;C 水平方向的交通灯按红-绿-黄三种颜色循环变化,垂直方向的交通灯按绿-黄-红三种颜色循环变化,这样行人和车辆就可以安全畅通的通行。D当手动按下紧急按钮后,水平方向和垂直方向都会有十秒的红灯,十秒倒计时结束后,红灯继续完成被打断前的计时,直到数码显示管显示0,继续按设定的自动交通灯变化规律变化2.2.2 系统总框图时间显示8155并行口扩展8051单片机交通灯紧急按钮撞红灯报警系统ADC08322.2.3 硬件接线图1. 红绿灯接线图本设计利用单片机的p3口来驱动和控制各种信号灯的燃亮和燃亮时间,在实际中,交通灯的信号灯需要用高电压控制,在这里我们只是模拟一下它的
16、控制信号,所以我们就只用单片机的信号引脚直接来控制发光二极管,其接线图如下:2.撞红灯系统接线图 作为单通道模拟信号输入时ADC0832的输入电压是05V,当ADC0832模拟量输入端输入5V,时,输出为255,所以若ADC0832采集到的模拟量数值大于3V也就是153/255x5=3,驱动LED发光。我采用了滑动变阻器控制ADC的输入电压。 3. 时间显示接线图采用了P2口驱动数码显示管显示时间,选用7SEG-MPX2-CA共阳极数码管显示。P3.0口选择LEDA,P3.1口选择LEDB。 4.紧急按钮接线图通过P1.0口外接一个紧急按钮,按下后红灯持续亮10秒。 5.单片机最小系统单片机最
17、小系统如上,以80S51为核心,外加时钟和复位电路,电路结构简单,抗干扰能力强,成本相对较低,非常符合本设计的所有要求。89C51单片机系列是MCS-51系列的基础上发展起来的,是当前8位单片机的典型代表,采用CHMOS工艺,即互补金属氧化物的HMOS工艺, CHMOS是CMOS和HMOS的结合,具有HMOS高速度和高密度的特点,还具有CMOS低功耗的特点。时钟电路在单片机的外部通过XTAL1,XTAL2这两个引脚跨接晶体振荡器和微调电容,构成稳定的自激振荡器.本系统采用的为12MHz的晶振,一个机器周期为1us,C2,C3为30pF。6. 运行效果图(正常运行)(按下紧急按钮后进行十秒倒计时
18、)(调节滑动变阻器使得电压大于3V时模拟撞红灯,LED亮) 7.硬件总接线图见附录三、 软件设计3.1 程序流程图是是是是否否否否系统初始化水平方向绿灯25秒 垂直方向红灯25秒垂直方向撞红灯?水平方向黄灯5秒 垂直方向红灯5秒垂直方向撞红灯?水平方向红灯25秒 垂直方向绿灯25秒水平方向撞红灯?水平方向红灯5秒 垂直方向黄灯灯5秒水平方向撞红灯?LED警报LED警报LED警报LED警报3.2初值计算 本程序中,初值定为25ms,12M,故T0的初值为: TH0=0x9e TL0=0x58计数器计算公式: T=(MTC)T计数 或T计数T计数是单片机时钟周期的倍;为定时初值如单片机的主脉冲频率
19、为,经过分频方式213微秒毫秒方式216微秒毫秒显然秒钟已经超过了计数器的最大定时间,所以我们只有采用定时器和软件相结合的办法才能解决这个问题3.2.1相应程序代码()主程序/*主函数*/void main(void)char i;init();/初始化while(1)dx_R=1;dx_Y=0;dx_G=0;nb_R=0;nb_Y=0;nb_G=1;for(i=N;i>0;i-)deal(i);dx_R=1;dx_Y=0;dx_G=0;nb_R=0;nb_Y=1;nb_G=0;N=5;for(i=N;i>0;i-)deal(i);dx_R=0;dx_Y=0;dx_G=1;nb_R
20、=1;nb_Y=0;nb_G=0;N=25;for(i=N;i>0;i-)deal(i);dx_R=0;dx_Y=1;dx_G=0;nb_R=1;nb_Y=0;nb_G=0;N=5;for(i=N;i>0;i-)deal(i);/if(ADC_0832()>153)beep=0;else beep=1;/如果采集到的模拟量数值大于3V也就是153/255x5=3() 中断服务子程序void timer0() interrupt 1 using 0 /T0定时 定时25ms TH0=0x9e;TL0=0x58;time+;if(time=20)if(ADC_0832()>
21、153)beep=0;else beep=1;/0.5s扫描一次是不是大于3time=0; if(!button)_red();/每25ms扫描一次是不是有按键按下(3) 紧急按钮程序void _red(void)/当手按下后 红灯亮10s;char i,t;N=10;dx_R=1;dx_Y=0;dx_G=0;nb_R=1;nb_Y=0;nb_G=0;for(i=N;i>0;i-)/消振;t=60;while(t-)display(i);(4) 显示模块void display(char dat)led_A=led_B=0;P2=0XFF;/初始点亮两块LEDP2=tab_dispdat
22、/10;/求LEDA上显示计时的十位数if(dat/10)led_A=1;delay(1000);P2=0XFF;led_A=led_B=0;P2=tab_dispdat%10;/LEDB上显示计时的个位数led_B=1;delay(1000);四、 运行调试仿真成功。功能实现。五、心得体会 通过这次实现我熟悉了51单片机汇编语言程序的编写和单片机设计仿真工具PROTEUS的使用。首先要尽可能地采用结构化的程序设计方法,将功能模块化,由不同的模块完成不同的功能;PROTEUS不仅是模拟电路,数字电路,模/数混合电路的设计与仿真平台,更是目前世界上最先进,最完整的多种型号单片机系统的设计与仿真平
23、台。它真正实现了在计算机上完成从原理图设计,电路分析与仿真,单片机代码级调试与仿真,系统测试与功能验证到形成PCB的完整的电子设计,研发过程。 通过这次交通灯的课程设计,使我得到了一次用专业知识、专业技能分析和解决现实问题的能力。使我在单片机的基本原理、单片机应用学习过程中,以及在常用编程设计思路技巧的掌握方面都能向前迈了一大步,为日后成为一名合格的应用型人才打下良好的基础。综合课程设计让我把以前学习到的知识得到巩固和进一步的提高认识,对已有知识有了更深层次的理解和认识。在此,由于自身能力有限,在课程设计中碰到了很多的问题,我通过查阅相关书籍、资料以及和周围同学交流得到解决。还有交通灯是我们生
24、活中非常常见的一种东西,对于我们学以致用的这种能力得到了很好锻炼,能够为我们以后的工作于学习打下基础。 通过合作,我们的合作意识得到加强。合作能力得到提高。在设计的过程中,我们用了分工与合作的方式,每个人互责一定的部分,同时在一定的阶段共同讨论,以解决分工中个人不能解决的问题。在设计的过程中我们还得到了老师的帮助与意见。在学习的过程中,不是每一个问题都能自己解决,向老师请教或向同学讨论是一个很好的方法. 最后,对帮助我的所有同学和老师表示衷心的感谢!六、参考文献1、张毅坤. 单片微型计算机原理及应用,西安电子科技大学出版社 1998 2、余锡存 曹国华.单片机原理及接口技术M.陕西:西安电子科
25、技大学出版社,2000.73、雷丽文 等.微机原理与接口技术M.北京:电子工业出版社,1997.24、余发山 王福忠 单片机原理及应用技术 M.徐州:中国矿业大学出版社 2008.5、蔡伟智 LED道路交通灯的研制 液晶与显示 第20卷第五期6、刘乐善 微型计算机接口技术及应用M.北京: 华中科技大学出版社 2004.7、李伯成.基于MCS-51单片机的嵌入式系统的设计M.北京:电子工业出版社,2004.8、吴黎明, 王桂棠, 洪添胜, 等. 单片机原理及应用技术 M . 北京: 科学出版社,2005.9、韩克, 柳秀山, 等. 电子技能与E D A 技术M.广州:暨南大学出版社,2004.七
26、、附录7.1 器材清单7.2 程序清单#include<reg51.h> sbit ADC_CS=P14sbit ADC_CLK=P15;sbit ADC_DI=P16;sbit beep=P17;sbit button=P10;sbit led_A=P30;/数码管sbit led_B=P31;sbit dx_R=P32;/东南西北红绿黄三种led灯的定义sbit dx_Y=P33;sbit dx_G=P34;sbit nb_R=P37;sbit nb_Y=P36;sbit nb_G=P35;char N=25;/定义初始的倒计时25sunsigned char data1,ti
27、mechar tab_disp= 0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71,0x80;/共阴极/*延时子函数*/void delay(int t )while(t-);/ADC0832的模拟量读取int ADC_0832(void) char i; ADC_CS = 0;/当ADC0832未工作时其CS输入端应为高电平,此时芯片禁用. ADC_CLK=0; ADC_DI=1; ADC_CLK=1; ADC_CLK=0;/1 down ADC_DI=1; ADC_CLK=1; A
28、DC_CLK=0;/ 2 down ADC_DI=0; ADC_CLK=1; ADC_CLK=0;/ 3 down ADC_DI=1; ADC_CLK=1; ADC_CLK=0;/ 4 down for(i=8;i>0;i-) data1<<=1; ADC_CLK=0;ADC_CLK=1;if(ADC_DI=1) data1|=0x01;ADC_DI=1; ADC_CS=1; return data1;/初始化中断定时器,保证1s中刷新一次void init(void)/声明中断初始化EA=1;/中断总开关 EX0=0;/关中断0开关 IT0=1;/下降沿有效TMOD=0x01;/T0方式1 ET0=1; TH0=0x9e; /初始值25ms 12MTL0=0x58;EX0=1;TR0=1;/显示模块,两个数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 商场拆除扶梯方案范本
- 罪犯行为规范教育课件
- 癌痛规范化治疗指南
- 皮肤科基孔肯雅热皮疹识别测试题库单选题及答案解析
- 医患办基孔肯雅热管理试题及答案
- 2025年新疆巴音郭楞蒙古自治州库尔勒市政府采购评审专家考试真题含标准答案
- 2026年自考00297卫生公共管理试题及答案
- 2025年台州市路桥区社区《网格员》真题汇编(含答案)
- 2025年新疆博尔塔拉蒙古自治州政府采购评审专家考试真题(附含答案)
- 山姆会员消费闭环打造
- GB/T 45494-2025项目、项目群和项目组合管理背景和概念
- 制罐基础知识基本工艺
- 食堂物资供货方案
- 建筑工程日式工程管理标准
- 银行内部账户管理规程
- (正式版)SHT 3225-2024 石油化工安全仪表系统安全完整性等级设计规范
- GB/T 4893.8-2023家具表面理化性能试验第8部分:耐磨性测定法
- 互联网营销师(直播销售员)理论考试题库(备考用)
- 肠易激综合征
- DB4403T 325-2023 红火蚁防控规程
- 联合试运转记录表(空)
评论
0/150
提交评论