版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 设计题目: 基于单片机的模拟交通灯控制 院 系: 电气工程系 专 业: 城轨电子1班 年 级: 2012级 姓 名: 凌洁 指导教师: 黎松奇 西南交通大学峨眉校区 年 月 日课 程 设 计 任 务 书 专 业 城轨电子本 姓 名 凌洁 学 号 20128085 开题日期:2014年 11 月 17 日 完成日期: 2014年 12月 17日题 目 基于单片机的模拟交通灯控制 一、设计的目的本次设计的智能交通灯系统采用Proteus设计与仿真,程序的编译与调试采用Keil C51来实现。单片机原理、模拟和数字电路等方面的知识,基于Protues软件设计出一台交通信号灯,模拟路口交通信号。二、
2、设计的内容及要求要求用51单片机设计一个智能交通灯控制系统,使其能模仿城市十字路口交通灯的功能,并对满足特殊的控制要求。该系统的具体功能要求如下:该控制系统能控制东西南北四个路口的红黄绿灯正常工作。东西和南北方向分时准行和禁行。1)交通信号灯能够控制东西、南北两个方向的交通,红绿黄灯用对应颜色的发光二极管代替; 2)用四个2位数码管分别显示东、南、西、北方向的通行时间,东西或南北通行时间为 25秒,红绿灯切换中间黄灯亮5秒。三、指导教师评语 四、成 绩 指导教师 (签章) 年 月 日 目录一、引言3二、设计方案与思路简述41、内容简述:42、设计思路5三、单元电路设计61. 数码显示管与LED
3、灯模块62、 C51引脚图73、时钟电路74 、复位电路8四、总体设计81. AT89C51芯片简介82、原理框图:113、详细设计134、软件框图17四、程序及注释191、解释状态192、附录清单20附录1:程序清单20五、调试 运行25六、涉及资料及参考文献26七、心得体会26一、引言在城市生活中,交通灯作为管理交通、调协车辆的一个便捷的手段,起着很大的作用。各种交通工具、行人都要根据交通灯的变化来决定是否前行,通行的时间的规定协调了它们的步伐,极大的减少了由于交通混乱引起的各种事故的发生。交通灯是现代交通非常重要的一个组成部分,一套好的交通灯系统往往对提升城市交通运输效率,降低事故发生率
4、有至关重要的影响。 本系统由单片机系统、交通灯演示系统、按键系统、中断系统以及时钟电路、复位电路组成。本文设计的智能交通灯系统采用Proteus设计与仿真,程序的编译与调试采用Keil C51来实现。本文所设计的智能交通灯采用了单片机AT89C51,选用了LED灯和多位数码管来模拟显示的交通灯切换状态。本系统除了实现最基本的交通灯功能以外,还有用来应对紧急情况的功能,这就是中断系统所实现的在有特定需要的情况下实现对交通灯状态的控制。对于提高城市交通效率有非常重要的作用。因此,一个完善的交通系统中,交通灯是必不可少的设备,一个完善的交通灯程序会更有效的管理当前道路中出现的实际情况,使车辆、行人的
5、行进变得更顺畅、更和谐。随着我国国民经济的快速发展,我国机动车辆发展迅速,而城镇道路建设由于历史等各种原因相对滞后,如何利用当今计算机和自动控制技术,有效地疏导交通,提高城镇交通路口的通行能力,减少交通事故是很值得研究的一个课题。目前,国内的交通灯一般设在十字路口,在醒目位置用红、绿、黄三种颜色的指示灯加上一个倒计时的显示器来控制行车。二、设计方案与思路简述1、内容简述:此课程设计运用所学单片机原理、模拟和数字电路等方面的知识,基于Protues软件设计出一台交通信号灯,模拟路口交通信号。流程如下:25S5S25S5S东西道红灯亮红灯亮绿灯亮黄灯亮南北道绿灯亮黄灯亮红灯亮红灯亮1)交通信号灯能
6、够控制东西、南北两个方向的交通,红绿黄灯用对应颜色的发光二极管代替;2)用四个2位数码管分别显示东、南、西、北方向的通行时间,南北通行时间为25秒,东西通行时间为15秒红绿灯切换中间黄灯亮5秒。然后,交替循环。在此部分LED灯将配合红黄绿灯的发光时间显示数据,对于每个数据将使用定时器来实现定时1秒,当1秒时间到达,LED上显示的时间自动减1,当时间减至为0,交通灯变换红黄绿灯。设定东西南北走向的十字路口,如下图: 由生活常识可知,十字路口中,东西南北各三盏灯,每三盏分别为红、黄、绿三种颜色。而实际情况下,东西方向灯亮灭一致,南北方向灯亮灭一致,故只需要按东西为一组,南北为一组,两组交错亮灭来设
7、计控制系统,即可达到交通灯系统的控制目的。根据以上分析那么只需要控制东南或者西北六盏灯亮灭规律就能实现控制,另外两组对应一致就行了。根据设计要求,要求东西或者南北通行25秒,红绿灯切换中间黄灯亮5秒。那么要求绿灯亮放行,放行线,绿灯持续亮(通行时间)15秒,黄灯亮(警告提醒时间)5秒,红灯亮禁止通行,禁止线,为15秒。2、设计思路基于完成以上任务分析,由本学期所学关于单片机的中断系统和定时/计数器的相关知识及应用,我们知道对于红、绿、黄两组各三盏灯的控制,可以通过把这六盏灯分别接到单片机的六个输出引脚,若用P1口进行输出,则分配如下: AT89C51 1 2 3 5 6 7P1.0 P1.1
8、P1.2 P1.4 P1.5 P1.6 L1 L2 L3 L4 L5 L6(东西红灯) (东西黄灯) (东西绿灯) (南北红灯) (南北黄灯) (南北绿灯) LED显示分布具体如下: 图 2.2.1 通过对P1口P0P5编程从而实现控制。而时间的各盏灯的熄灭时间的延时情况,则用定时/计数和中断结合应用实现控制。 而输出的时间显示则每个方向分别用两个发光二极管显示,十位接在P0口,个位接在P2口,对P0口P2口编程即可实现控制。三、单元电路设计1. 数码显示管与LED灯模块LED显示器由共阳极七段发光二极管组成,排列成8字形状,因此也称为七段LED显示器。为了显示数字或符号,要为LED显示器提供
9、代码,即字形代码。其段发光二极管,再加上一个小数点位,共计8段,因此提供的字形代码的长度正好是一个字节。图3.1.1 数码管与LED灯单元图2、 C51引脚图图3.2.1 单片机管脚图3、时钟电路MCS-51单片机芯片内部有一个用于构成振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。当使用内部振荡电路时,XTAL1和XTAL2引脚外接石英晶体和微调电容,如图所示,图中C2、C3大小一般为30pF。还加了复位/备用电源引脚的接线方法,任何单片机在工作之前都要进行复位,以便CPU以及其他功能部件都处于一个确定的初始化状态,并从这个状态开始工作,也就是程序开始执行
10、之前,单片机做好准备工作。如何进行复位呢?只能在单片机的RST引脚上保持两个机器周期(24个时钟周期)的高电平即可对单片机实现复位操作。当主电源VCC发生掉电或者是电压降低到电平规定值时,VPD上外接的备用电源自动启用,为单片机内部RAM提供电源,以保护片内RAM中的信息不丢失,使系统在恢复上电后能正常运行。 图3-3.1 时钟电路4 、复位电路AT89C51的复位是由外部的复位电路实现的。复位电路通常采用上电复位和按钮复位两种方式。在此次设计中,我使用了按键复位方式。 复位方式有多种,本设计采用按键复位。接线图如图程序3.1复位电路,图3-4.1 复位电路四、总体设计1. AT89C51芯片
11、简介芯片AT89C51的外形结构和引脚图如图3-1所示。AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM-Flash Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MC-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 图4.1.1 AT89C51引脚图 (1) 主要特性8051CPU与MCS
12、-51兼容4K字节可编程FLASH存储器(寿命:1000写/擦循环)全静态工作:0HZ-24KHZ三级程序存储器保密锁定128*8位内部RAM32位可编程I/O线两个16位定时器/计数器5个中断源可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路(2) 管脚说明VCC:供电电压GND:接地。P0口:P0口为一个8位漏极开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FLASH编程时,P0口作为原码输入口,当FLASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口
13、是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高8位。在给出地址“1”时,它利用内部上拉优势
14、,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,各功能口功能如下:口管脚 备选功能P3.0 RXD(串行输入口)P3.1 TXD (串行输出口)P3.2/INT0 (外部中断0)P3.3/INT1 (外部中断1)P3.4 T0 (计数器0外部输入)P
15、3.5 T1(计数器1外部输入)P3.6/WR(外部数据存储器写选通)P3.7/RD (外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地址字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定是目的。然而它可用作对外部输出的脉冲或用于定是目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁
16、止ALE输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令时才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次有效。但在访问外部数据存储器时,这两次有效的信号将不出现。/VPP:当保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,将内部锁定为RESET;当端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输
17、入。XTAL2:来自反向振荡器的输出引脚。2、原理框图:(1)、硬件原理框图: 图4.2.1 大体电路分配设计图原理具体分布 总设计框图:图4.2.2 具体电路分配设计图(2)、软件框图:单片机 图4.2.3 电路分配设计图3、详细设计 (重点)1、设计电路: 设计电路主要由两部分组成,一部分为P1口与十二个发光二极管连接电路,另一部分是P0、P2口与4个2管七段显示器相连的电路,下面分别详细说明。2、交通灯电路: 设计中采用发光二极管作为交通灯来使用,单片机的I/O接口直接和交通灯(发光二极管)连接。在十字路口的四组红、黄、绿三色交通灯中,东西方向道路上的两组同色灯连接在一起,南北方向道路上
18、的两组同色的灯也彼此连接在,受单片机P1.0P1.5控制。单片机的I/O接口与交通灯电路的具体连接方式为:P1.0P1.2分别接东西方向的红、黄、绿共6个放光二极管,P1.4P16分别接南北方向的红、黄、绿共6个发光二极管。12个发光二极管采用了共阳极的连接方式,因此I/O口输出低电平时,与之相连的发光二极管会亮,I/O口输出高电平时,相应的发光二极管会灭。交通灯电路如图所示 图4.3.2 灯对应管脚图3、倒计时显示电路:该显示装置选用8个七段数码管来显示交通灯转换的剩余时间,根据控制要求,每个路口需要两个数码管,这样四个路口就要求八个数码管。我们可以选用共阳型数码管,这样由单片机的I/O就可
19、以直接驱动,从而简化硬件电路的设计。四个路口倒计时显示被置在同一时刻显示相同的数字。P0口用来显示时间的十位,P2口用来显示时间的个位。运用Protel 99se软件电路如下图所示(1) 数码管及led灯图4.3.3 protel 数码管与LED灯图(2)AT89C51及其管脚,复位及时钟电路图4.3.4 protel 单片机管脚图(3)R8大电阻图4.3.5 大电阻图(3)电路原理图图4.3.6 电路原理图4、仿真电路及效果图:(1)仿真电路结果:图4.3.7 仿真原理图(2)仿真效果:图4.3.8 南北红,东西绿图4.3.9 南北红,东西黄图4.3.10 南北绿,东西红5、元件清单: 名称
20、 封装名 参数 用途电阻RES10K 限流,以免烧坏数码管便于仿真显示AT89C51AT89C51八位微处理器七段显示数码管7SEG_MIX2_CC常用数字显示,便于仿真开关SW_SPDT中断使用电容CAPCapacitors复位电路使用发光二极管LEDred红显示发光二极管LEDyellow黄显示发光二极管LEDgreen绿显示 图4.3.11 元件清单图4、软件框图(1)主程序流程图: 开始初始化南北红灯亮,东西绿灯亮调用显示程序,将时间送显示东西黄灯亮,南北黄灯亮调用显示程序,将时间送显示南北绿灯亮,东西红灯亮调用显示程序,将时间送显示东西黄灯亮,南北黄灯亮调用显示程序,将时间送显示图4
21、.4.1 总框图(2)子程序流程图:提取倒计时数据的十位数调用延时子程序获取十位数字型码并送到P0口取倒计时数值获取个位数字型码并送到P2口提取倒计时数据的个位数开始返回图4.4.2 软件流程图四、程序及注释 1、解释状态状态1, 东西绿灯亮,南北红灯亮,此时P1.0口P1.7口的高低电平为#0BBH。状态2, 东西黄灯亮,南北红灯亮,此时P1.0口P1.7口的高低电平为#0BDH。状态3, 东西红灯亮,南北绿灯亮,此时P1.0口P1.7口的高低电平为#0DEH。状态4, 东西红灯亮,南北黄灯亮,此时P1.0口P1.7口的高低电平为#0EEH。再采用显示子程序与延时子程序可使LED显示灯按照要
22、求点亮。程序初始化状态1(S1)状态2 (S2)状态3(S3)状态4(S4)图4.4.3 状态流程图2、附录清单附录1:程序清单 ORG 0000H LJMP MAIN ORG 0003H LJMP INTT0 ORG 0013H LJMP INTT1 ORG 001BH LJMP TT1 ORG 0100HTT1: MOV TH1,#0D8H ;定时器1,定时10us MOV TL1,#0F0H DJNZ R6,EXIT MOV R6,#100 ;定时器定时100次 MOV R1,#0FFHEXIT: RETIINTT0:MOV P1,#0BEH ;外部中断0, JB P3.4,$ RETI
23、INTT1:MOV P1,#0BBH ;外部中断1, JB P3.4,$ RETI ORG 1000HMAIN: MOV R6,#100 ;主程序; MOV R1,#00H MOV TMOD,#10H ;初始化 MOV TH1,#0D8H MOV TL1,#0F0H MOV IE,#8DH MOV 20H,#25 MOV 21H,#5 MOV 22H,#15 MOV 23H,#30 MOV 24H,#20 SETB TR1ST1: MOV P1,#0EBH ;第一个状态,东西主干道亮绿灯、 支干道亮红灯; CJNE R1,#0FFH,TZ1 MOV R1,#00H DEC 20H DEC 23
24、HTZ1: MOV R2,20H MOV R3,23H LCALL DISP ;调用显示子程序。 MOV A,20H CJNE A,#00H,ST1 MOV 20H,#25ST2: MOV P1,#0EDH ;第二个状态,主干道亮黄灯、支干道亮红灯; CJNE R1,#0FFH,TZ2 MOV R1,#00H DEC 21H DEC 23HTZ2: MOV R2,21H MOV R3,23H LCALL DISP ;调用显示子程序。 MOV A,21H CJNE A,#00H,ST2 MOV 21H,#05 MOV 23H,#30ST3: MOV P1,#0BEH ;第三个状态,主干道亮红灯、
25、 支干道亮绿灯; CJNE R1,#0FFH,TZ3 MOV R1,#00H DEC 24H DEC 22HTZ3: MOV R2,24H MOV R3,22H LCALL DISP ;调用显示子程序。 MOV A,22H CJNE A,#00H,ST3 MOV 22H,#15ST4: MOV P1,#0DEH ;第四个状态,主干道亮红灯、 支干道亮黄灯; CJNE R1,#0FFH,TZ4 MOV R1,#00H DEC 24H DEC 21HTZ4: MOV R2,24H MOV R3,21H LCALL DISP ;调用显示子程序。 MOV A,21H CJNE A,#00H,ST4 M
26、OV 21H,#05 MOV 24H,#20 LJMP ST1 ;跳转到第一个状态。DISP: MOV A,R2 ;显示子程序。 MOV B,#10 DIV AB MOV 60H,A MOV 61H,B MOV A,R3 MOV B,#10 DIV AB MOV 62H,A MOV 63H,B MOV 40H,#04H MOV R5,#0FEH MOV R0,#60HLLP: MOV A,R0 MOV DPTR,#TABLE MOVC A,A+DPTR MOV P0,A MOV A,R5 MOV P2,A LCALL DELAY1 MOV P2, #0FFH; 注:这里是程序修改的地方,P2口
27、控制显示器 令显示器熄灭,以免产生残影 RL A MOV R5,A INC R0 DJNZ 40H,LLP RETDELAY1: ;延时子程序 MOV R4,#12DL2: MOV R7,#12 DJNZ R7,$ DJNZ R4,DL2 RETTABLE:DB 3FH,24H,5dH,75H,66H DB 73H,7bH,25H,7fH,77H END 五、调试 运行将在Keil平台上生成目标代码文件(*. hex)加载到单片机系统中,点击运行按钮,1、按照硬件连接图,相应的,P1.0接红灯,P1.1接黄灯,P1.2接绿灯,P1.3接红灯,P1.4接黄灯,P1.5接绿灯2、从0100H单元开始连续运行,观察六个LED灯是否与交通显示情况对应,如果有偏差,则单步运行或断点运行,进行调试,直至满足设计要求。3、调试完灯的显示后,从0100H开始连续运行,观察数码管显示的是否正常,如果不正常,则运用单步运行或断点运行进行分析
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 淮阴师范学院《中学体育学科教学论》2022-2023学年第一学期期末试卷
- 初中实验课件教学课件
- 淮阴工学院《生理与药理学》2022-2023学年第一学期期末试卷
- 淮阴工学院《图论与网络优化》2023-2024学年第一学期期末试卷
- DB5116T22-2024广安青花椒生产技术规程
- DB3607-T 012-2024《三角梅园林种植与管护技术规程》
- 污水处理的玻璃工业废水处理技术考核试卷
- 煤炭行业投资与融资机制研究考核试卷
- 电气安装电磁阀与电控制阀的选用与安装考核试卷
- 山西省吕梁市离石区光明小学校2023-2024学年四年级上学期期中英语试卷
- 第4章 跨境电商选品与定价
- 《介绍教室》(教案)-2024-2025学年一年级上册数学北师大版
- 2024年检察院招录书记员考试法律基础知识及答案
- 《犯罪心理学(马皑第3版)》章后复习思考题及答案
- 青骄第二课堂2021年禁毒知识答题期末考试答案(初中组)
- 2024-2030年中国射频芯片行业市场发展趋势与前景展望战略分析报告
- 华电线上测评
- 中国吡唑醚菌酯行业市场现状调查及前景战略研判报告
- 住院医师规范化培训日常考核评分表
- 《中华人民共和国监察法》知识测试题库
- 《城市轨道交通桥梁养护技术规范》
评论
0/150
提交评论