ImageVerifierCode 换一换
格式:DOCX , 页数:33 ,大小:518.05KB ,
资源ID:708073      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-708073.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(交通灯课程设计汇总.docx)为本站会员(b****1)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

交通灯课程设计汇总.docx

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三、单元电路设计

3、 61. 数码显示管与LED灯模块 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东西道红灯亮红灯

6、亮绿灯亮黄灯亮南北道绿灯亮黄灯亮红灯亮红灯亮1)交通信号灯能够控制东西、南北两个方向的交通,红绿黄灯用对应颜色的发光二极管代替;2)用四个2位数码管分别显示东、南、西、北方向的通行时间,南北通行时间为25秒,东西通行时间为15秒红绿灯切换中间黄灯亮5秒。然后,交替循环。在此部分LED灯将配合红黄绿灯的发光时间显示数据,对于每个数据将使用定时器来实现定时1秒,当1秒时间到达,LED上显示的时间自动减1,当时间减至为0,交通灯变换红黄绿灯。设定东西南北走向的十字路口,如下图: 由生活常识可知,十字路口中,东西南北各三盏灯,每三盏分别为红、黄、绿三种颜色。而实际情况下,东西方向灯亮灭一致,南北方向灯

7、亮灭一致,故只需要按东西为一组,南北为一组,两组交错亮灭来设计控制系统,即可达到交通灯系统的控制目的。根据以上分析那么只需要控制东南或者西北六盏灯亮灭规律就能实现控制,另外两组对应一致就行了。根据设计要求,要求东西或者南北通行25秒,红绿灯切换中间黄灯亮5秒。那么要求绿灯亮放行,放行线,绿灯持续亮(通行时间)15秒,黄灯亮(警告提醒时间)5秒,红灯亮禁止通行,禁止线,为15秒。2、设计思路基于完成以上任务分析,由本学期所学关于单片机的中断系统和定时/计数器的相关知识及应用,我们知道对于红、绿、黄两组各三盏灯的控制,可以通过把这六盏灯分别接到单片机的六个输出引脚,若用P1口进行输出,则分配如下:

8、 AT89C51 1 2 3 5 6 7P1.0 P1.1 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字形状,因此也称

9、为七段LED显示器。为了显示数字或符号,要为LED显示器提供代码,即字形代码。其段发光二极管,再加上一个小数点位,共计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复位电路

11、,图3-4.1 复位电路四、总体设计1. AT89C51芯片简介芯片AT89C51的外形结构和引脚图如图3-1所示。AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM-Flash Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MC-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 图4.1.1

12、AT89C51引脚图 (1) 主要特性8051CPU与MCS-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进行

13、校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P

14、2口输出地址的高8位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,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/I

15、NT1 (外部中断1)P3.4 T0 (计数器0外部输入)P3.5 T1(计数器1外部输入)P3.6/WR(外部数据存储器写选通)P3.7/RD (外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地址字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定是目的。然而它可用作对外部输出的脉冲或用于定是目的。然而要注意

16、的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令时才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次有效。但在访问外部数据存储器时,这两次有效的信号将不出现。/VPP:当保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,将内部锁定为RESET;当端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VP

17、P)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。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个七段数码管来显示交通灯转换的剩余时间,根据控制要求,每个路口需要两个数码管,这样四个路口就要求八

19、个数码管。我们可以选用共阳型数码管,这样由单片机的I/O就可以直接驱动,从而简化硬件电路的设计。四个路口倒计时显示被置在同一时刻显示相同的数字。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 南北

20、红,东西黄图4.3.10 南北绿,东西红5、元件清单: 名称 封装名 参数 用途电阻RES10K 限流,以免烧坏数码管便于仿真显示AT89C51AT89C51八位微处理器七段显示数码管7SEG_MIX2_CC常用数字显示,便于仿真开关SW_SPDT中断使用电容CAPCapacitors复位电路使用发光二极管LEDred红显示发光二极管LEDyellow黄显示发光二极管LEDgreen绿显示 图4.3.11 元件清单图4、软件框图(1)主程序流程图:南北红灯亮,东西绿灯亮图4.4.1 总框图(2)子程序流程图:图4.4.2 软件流程图四、程序及注释 1、解释状态状态1, 东西绿灯亮,南北红灯亮,

21、此时P1.0口P1.7口的高低电平为#0BBH。状态2, 东西黄灯亮,南北红灯亮,此时P1.0口P1.7口的高低电平为#0BDH。状态3, 东西红灯亮,南北绿灯亮,此时P1.0口P1.7口的高低电平为#0DEH。状态4, 东西红灯亮,南北黄灯亮,此时P1.0口P1.7口的高低电平为#0EEH。再采用显示子程序与延时子程序可使LED显示灯按照要求点亮。图4.4.3 状态流程图2、附录清单附录1:程序清单 ORG 0000H LJMP MAIN ORG 0003H LJMP INTT0 ORG 0013H LJMP INTT1 ORG 001BH LJMP TT1 ORG 0100HTT1: MO

22、V 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,$ RETIINTT1: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

23、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 23HTZ1: 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 21

24、H 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 ;第三个状态,主干道亮红灯、 支干道亮绿灯; 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 ;第四个状

25、态,主干道亮红灯、 支干道亮黄灯; 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 MOV 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 M

26、OV 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口控制显示器 令显示器熄灭,以免产生残影 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

27、,25H,7fH,77H END 五、调试 运行将在Keil平台上生成目标代码文件(*. hex)加载到单片机系统中,点击运行按钮,1、按照硬件连接图,相应的,P1.0接红灯,P1.1接黄灯,P1.2接绿灯,P1.3接红灯,P1.4接黄灯,P1.5接绿灯2、从0100H单元开始连续运行,观察六个LED灯是否与交通显示情况对应,如果有偏差,则单步运行或断点运行,进行调试,直至满足设计要求。3、调试完灯的显示后,从0100H开始连续运行,观察数码管显示的是否正常,如果不正常,则运用单步运行或断点运行进行分析和调试,直至满足要求。4、整体运行,观察灯显示和时间显示是否都符合要求,不符合,则再调试。直

28、至满足要求。六、涉及资料及参考文献1 彭为等。单片机典型系统设计实例精讲M。北京:电子工业出版社,20062 张毅刚等。单片机原理与应用设计M。北京:电子工业出版社,20083 王义军。单片机原理及应用习题与实验指导书M。北京:中国电力出版社,2006七、心得体会通过这段时间的交通灯课程设计,我对单片机相关知识有了更深的了解。对于管脚及相关的控制寄存器,有了更进一步的巩固和了解,尤其是I/O口的实用及编程,相当于重新细细温习了一遍。特别对protues软件画电路图及仿真的过程,这次课程设计的任务是通过单片机的I/O口来控制交通灯。主要完成两大项任务,第一就是硬件连接图;第二是编写相应的程序来实

29、现硬件功能。看似简单,实际上需要过硬的知识作为基础。这次设计过程中,遇到了很多棘手的问题,很多东西,动起手来束手无策,大多都只得先通过查阅资料或者参考别人做类似课题,才能自己动手设计画图,编程调试。就是protues软件仿真原来及整个过程,虽然并不太难,但是我是通过这次才真正弄明白的。通过这次课程设计,关于单片机的知识深入了解了更多,但更多是让我知道了知识的欠缺,很多环节,都慢慢翻书或者查找资料才能完成。这次课程设计让我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧(特别是汇编语言)的掌握方面都能向前迈了一大步。让我把以前学习到的知识得到巩固和进一步的提高认识,对已有知识有了更进一步的理解和认识。通过这次课程设计我感觉到要想做成功,必须花时间多做准备,查阅大量资料,每个过程都很繁琐,都要认真地分析每一步每一个模块要实现大的功能,然后分步进行编写调试,最后整合成在一起。这次完成了对单片机的整体设计,更加了解到单片机的各项功能和需要注意的问题,加深了对单片机的了解。总的来说,这次课程设计,提高了我的知识的应用能力和和实践能力,同时提高了独立思考独立完成任务的能力,虽然时间不长但是我学到了很多东西,让我明白,在以后的学习中,应更注

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2