基于单片机的交通信号灯控制系统设计毕业设计.pdf

上传人:教**** 文档编号:88277444 上传时间:2023-04-24 格式:PDF 页数:28 大小:1.74MB
返回 下载 相关 举报
基于单片机的交通信号灯控制系统设计毕业设计.pdf_第1页
第1页 / 共28页
基于单片机的交通信号灯控制系统设计毕业设计.pdf_第2页
第2页 / 共28页
点击查看更多>>
资源描述

《基于单片机的交通信号灯控制系统设计毕业设计.pdf》由会员分享,可在线阅读,更多相关《基于单片机的交通信号灯控制系统设计毕业设计.pdf(28页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、湖南科技工业职业技术学院湖南科技工业职业技术学院毕业设计(论文)开题报告书湖南科技工业职业技术学院毕业设计(论文)开题报告书电气自动化专业学生姓名季屿璠班级12201学号12211007课题名称基于单片机的交通信号灯控制系统设计课题准备情况1、复习以前学过的知识,查阅书籍。2、在网络上查询需要的相关资料。3、了解所需要的元器件的型号和数量。4、和同学讨论设计方案。5、购买元器件。思路和方法1、硬件设计部分,为实现所要求的功能,首先参考多种资料,选用 AT89C51 单片机为硬件设计的核心器件。2、在采用 74LS48 驱动电路驱动 LED 晶体管显示部分,用数码管显示黄,绿,红灯。3、根据要求

2、和系统所具有的功能,参考相关资料画出交通灯控制系统的系统框图。4、设计交通灯控制系统硬件电路与软件控制程序,对硬件与软件程序分别进行调试,并进行软硬件联调。5.完善硬件与程序。拟重点解决的问题1、交通信号灯控制系统的工作原理。2、器件运行所需要的程序框图。计划进度阶段准备时 间 安 排针对任务书要求,了解内容。2015.01.01复习学过的书籍。2015.01.02在网络和图书馆寻找资料2015.01.03了解器件型号功能2015.01.04确定思路2015.01.05和同学讨论2015.01.06完成开题报告2015.01.07毕业设计初稿2015.01.09-2015.01.16毕业答辩2

3、015.05.11-2015.05.31参考文献1王幸之.AT89 系列单片机原理与接口技术M.北京:北京航空航天大学出版社,2004.2李忠国.单片机应用技能实训M.北京:人民邮电出版社,2006.3先锋工作室.单片机程序设计实例M.北京:清华大学出版社,2003.4肖跃安.数字产品的分析与制作.兵器工业出版社,2011.3.毕业设计方案指导教师意见签名:年月日毕业设计方案目录摘要.1第一章 设计要求与硬件说明.21.1 设计要求.21.2 交通灯控制系统硬件框图.21.3 AT89C51 的介绍.21.3.1 AT89C51 引脚介绍.31.4 数码管介绍.3第二章 部分电路设计.52.1

4、 单片机最小系统.52.1.1 复位电路.52.1.2 时钟电路.52.2 信号灯与数码管显示电路.62.3 键盘输入电路.72.4 电路原理图.7第三章 软件设计与仿真.93.1 程序流程.93.2 proteus 软件介绍.93.3 keil 介绍.93.4 仿真结果显示.10结论.13致谢.14参考文献.15附录.16基于单片机的交通信号灯控制系统设计1基于单片机的交通信号灯控制系统设计摘要通过总体设计交通灯原理接线图,综合应用单片机原理、微机原理、微机接口技术等方面的知识,结合单片机仿真系统的使用方法,通过软硬件结合,使用89C51 单片机来设计出符合要求的交通灯控制系统。根据设计要求

5、,模拟单片机的交通信号灯控制系统由单片机 89C51、发光二极管、两位一体数码管、按键、电阻及电容组成。系统除基本交通灯功能外,还具有倒计时、显示时间设置、时间可以根据具体情况手动控制等功能。从而提高交通灯控制系统的总体能力和综合应用能力。关键词:单片机;交通灯;数码管基于单片机的交通信号灯控制系统设计2第一章 设计要求与硬件说明1.1 设计要求1.设计硬件路,包括主控制器单片机、时钟电路、键盘与显示灯电路;2.南北方向为绿灯时及黄灯时,东西方向为红灯,反之亦然;3.南北方向绿灯时间为 30s,然后黄灯闪烁 3s,在红灯亮 33s;4.各路口各灯亮时,利用两位数码管显示倒计时时间;5.设计按键

6、,能更改各方向绿灯、黄灯、红灯的时间;6.编制完善软件。1.2 交通灯控制系统硬件框图根据设计要求,设计通过 AT89C51 单片机以及单片机最小系统和三极管驱动数码管以及外围的按键和数码管显示等部件,数码管倒计时显示时间。利用单片机内部定时器实现定时功能。如图 1-1 所示。图 1-1 交通灯控制系统框图1.3 AT89C51 的介绍AT89C51 是一种带 4K 字节的单片机,与工业标准的 MCS-51 指令集和输出管脚相兼容。由于将多功能 8 位 CPU 和闪烁存储器组合在单个芯片中,AT89C51 是一种高效微控制器。如图1-2 所示AT89C51单片机8 段 LED 数码管复位电路晶

7、振电路驱动显示按键控制红黄绿信号灯毕业设计方案3图 1-2 AT89C51 芯片1.3.1 AT89C51 引脚介绍(1)P0.0-P0.7(32-39):在访问外部存储器时,它是分时传送的低字节地址和数据总线,此时,P0 口内含上拉电阻。(2)P1.0-P1.7(1-8):当 P0 口用作通用 I/O 口时,每个引脚可驱动 8 个 TTL 负载;当用作输入时,每个端口首先置 1。(3)P2.0-P2.7(21-28):在访问外部存储器时,它输出高 8 位地址。当用作输入时,每个端口首先置 1。(4)P3.0-P3.7(10-17):P3 口是内部带有提升电阻的 8 位准双向 I/O 口,能驱

8、动 4个 TTL 负载。当用作输入时,每个端口首先置 1。(5)XTAL1(19):内部振荡电路反相放大器的输入端,是外接晶体的一个引脚。(6)XTAL2(18):内部振荡电路反相放大器的输出端,是外接晶体的另一端。(7)RST(9):当振荡器运行时,此引脚上出现两个机器周期的高电平,将使单片机复位。1.4 数码管介绍八段数码管由八个发光二极管组成,其中有 7 个条形发光二极管和一个小圆点发光二极管,通过控制不同的发光二极管的亮灭来显示出不同的字形。湖南科技工业职业技术学院4数码管又分为共阴极和共阳极两种类型,共阳极结构是把所有发光二极管的阳极作为公共端连起来,接高电平,通过控制每一只发光二极

9、管的阴极电平来十七发光或熄灭,阴极为低电平则发光二极管发光,为高电平则熄灭。本系统采用两位一体的共阳极数码管。如图 1-3所示。图 1-3 两位一体数码管为了显示数字或符号,要为 LED 数码管提供代码,即字形代码。七段发光二极管,再加上一个小数点位,共计 8 段,因此提供给 LED 数码管的字形代码正好是一个字节。本次设计的交通灯用到的共阳极字形码 09 的字形代码如表 1 所示。表 1 字形代码表中“0”代表亮,“1”代表灭字形abcdefgdp共阳极000000011C0H110011111F9H200100001A4H300001101B0H41001100199H5010010019

10、2H60100000182H700011111F8H80000000180H90000100190H毕业设计方案5第二章 部分电路设计2.1 单片机最小系统单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统.对 51 系列单片机来说,最小系统一般应该包括:单片机、时钟电路、复位电路。2.1.1 复位电路AT89C51 单片机的复位电路在 RST 输入端出现高电平时实现复位和初始化。在振荡运行的情况下,要实现复位操作,必须使 RST 引脚至少保持两个机器周期的高电平。CPU 在第二个机器周期内执行内部复位操作,以后每一个机器周期重复一次,直至 RST 端电平变低。按

11、下复位键时,显示时间将会恢复到初始值。如图 2-1 所示。图 2-1 复位电路2.1.2 时钟电路AT89C51 片内有一个由高增益相放大器构成的振荡电路。XTAL1 和 XTAL2 分别为振荡电路的输入、输出端。片内振荡器与 XTAL1 和 XTAL2 引脚两端接石英晶体振荡器和两个微调电容构成的振荡电路。此时,单片机的机器周期为 1us。晶振采用 12MHz。如图 2-2 所示湖南科技工业职业技术学院6-图 2-2 时钟电路2.2 信号灯与数码管显示电路信号灯用来显示车辆通行状态,每个路口的信号的转换顺序为:绿-黄-红绿灯表示允许通行,黄灯表示禁止通行,但已经驶过安全线的车辆可以继续通行,

12、是绿灯过滤到红灯提示灯。红灯表示禁止通行。因此本系统的交通信号灯共有 4 种信号灯显示状态。如表 2 所示。表 2 信号灯状态倒计时显示可以提醒驾驶员在信号灯灯色发生改变的时间、在“停止”和“通行”两者间做出合适的选择。驾驶员和行人普遍都愿意选择有倒计时显示的信号控制方式,并且认为有倒计时显示的路口更加安全。倒计时显示是用来减少驾驶员在信号灯色改变的关键时刻做出复杂的判断的一种方法,他可以提醒驾驶员灯色发生改变的时间。信号灯用来显示车辆通行状态,每个路口有绿、黄、红三种信号灯,在这里用 LED,采用共阳极接法,数码管为共阳极。P22-P24 控制南北信号灯,P25-P27 控制东西信号灯。交通

13、灯及数码管显示电路如图 2-3 所示。信号灯状态状态 1东西方绿灯亮,南北红灯亮。状态 2东西方向黄灯闪烁,南北方向红灯亮状态 3东西方向红灯亮,南北方向绿灯亮。状态 4东西方向红灯亮,南北方向黄灯闪烁。毕业设计方案7图 2-3 信号灯与数码管显示电路2.3 键盘输入电路交通灯控制的键盘模块设计采用独立键盘,有设置键、加键、减键和模式键 4 个按键。这 4 个按键分别接到 P1 口的 P1.0、P1.1、P1.2 和 P1.3 引脚。键盘控制电路见图 2-4 所示。图 2-4 键盘控制电路2.4 电路原理图根据前面对单元电路的介绍,本设计利用 AT89C51 的 P0 口控制倒计时显示,P1

14、口控制按键,P2 口控制指示灯。原理图如图 2-6 所示湖南科技工业职业技术学院8图 2-6 电路原理图毕业设计方案9第三章 软件设计与仿真3.1 程序流程根据设计要求以及所需要的功能进行相应的操作,交通灯分为四个状态。程序流程图如图 3-1 所示。可以通过设置键、模式键来控制和调整各方向的显示时间和显示状态。是否否是否否是图 3-1 程序流程图根据此流程图,利用 C 语言编制交通灯控制程序,程序清单见附录。3.2 proteus 软件介绍Proteus 是功能强大的单片机仿真软件。Proteus 与其他的仿真软件相比较,在下面的优点:1.能绘能仿真模拟电路、数字电路、数模混合电路;2.制原理

15、图、PCB 图;3.几乎包括实际中所有使用的仪器;4.其最大的优点在于能够对单片机进行实物级的仿真,支持汇编语言和 C 语言的编程。还可配合 KeilC 实现程序的联合调试,将 Proteus 中绘制的原理图作为实际中的目标板。3.3 keil 介绍1.Keil 软件是 51 系列单片机的软件。支持 c 语言,汇编语言。2.Keil 提供了包括 C 编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境将这些部分组合在一起。红灯状态,红灯状态显示时间显示时间减 1显示时间是否为0显示时间减 1显示时间是否为 0黄灯状态,黄灯状态显示时间绿灯状态,绿灯

16、状态显示时间显示时间减 1显示时间是否为 0黄灯状态,黄灯状态显示时间显示时间减 1显示时间是否为 0湖南科技工业职业技术学院103.4 仿真结果显示根据前面对单元电路的介绍,通过 proteus 软件与 Keil 软件完成仿真。1.南北方向 30s 亮绿灯,东西方向亮红灯。如图 3-2。图 3-2 南北方向绿灯亮2.南北方向 3s 亮黄灯闪烁,东西方向亮红灯。如图 3-3。图 3-3 南北黄灯闪烁3.南北方向亮红灯,东西方向 33s 亮绿灯。如图 3-4。毕业设计方案11图 3-4 南北方向红灯亮4.模式键可以调整信号灯现实的状态。如图 3-5 所示。图 3-5 调整信号灯状态5.设置键与加

17、、减键可以调整各方向的显示时间。如图 3-6 所示。湖南科技工业职业技术学院12图 3-6 调整信号灯显示时间毕业设计方案13结论交通灯控制在交通运输领域有着非常重要的作用。本文完成了基于单片机的交通灯控制系统的设计。包括通行方案的设计,系统的硬件开发、软件编程等。在毕业设计说明书完成过程中,主要做的工作有:(1)确定交通系统具体的通行方案,规定东西向和南北向车辆的行止状态和时间分配,以及要求其他多功能的实现。(2)以 ATMEL 公司的 AT89C51 单片机为核心进行系统硬件设计,输入量包括:按键状态;输出控制交通信号灯亮灭状态及时间;更改信号灯显示状态,以及 LED 数码管倒计时显示。通

18、过这次设计完成了利用单片机实现交通灯的控制。也让自己学习了很多知识。为日后的工作打下了基础。湖南科技工业职业技术学院14致谢非常感谢肖晓刚老师在我大学的最后学习阶段毕业设计阶段给自己的指导,从最初的定题,到资料收集,到写作、修改,到说明书定稿,他给了我耐心的指导和无私的帮助。为了指导我们的毕业设计说明书,他放弃了自己的休息时间,他的这种无私奉献的敬业精神令人钦佩,在此我向他表示我诚挚的谢意。同时,感谢所有任课老师和所有同学在这三年来给自己的指导和帮助,是他们教会了我专业知识,教会了我如何学习,教会了我如何做人。正是由于他们,我才能在各方面取得显著的进步,在此向他们表示我由衷的谢意,并祝所有的老

19、师培养出越来越多的优秀人才,桃李满天下!通过这一阶段的努力,我的毕业设计说明书基于单片机的交通信号灯系统控制设计终于完成了,这意味着大学生活即将结束。在大学阶段,我在学习上和思想上都受益非浅,这除了自身的努力外,与各位老师、同学和朋友的关心、支持和鼓励是分不开的。在本设计说明书的写作过程中,我的指导老师肖晓刚老师倾注了大量的心血,从选题到开题报告,从写作提纲,到一遍又一遍地指出每稿中的具体问题,严格把关,循循善诱,在此我表示衷心感谢。同时我还要感谢在我学习期间给我极大关心和支持的各位老师以及关心我的同学和朋友。写作毕业设计说明书是一次再系统学习的过程,毕业设计说明书的完成,同样也意味着新的学习

20、生活的开始。我将铭记我曾是一名科工职院的学子,在今后的工作中把科工职院的优良传统发扬光大。毕业设计方案15参考文献1余锡存 曹国华.单片机原理及接口技术M.陕西:西安电子科技大学出版社,2000.7.2胡汉才.单片机原理及其接口技术M.北京:清华大学出版,1996.3沈鸿星.LED 交通信号灯系统的硬件设计J.电子工程师,2004.4吴黎明,王桂棠.单片机原理及应用技术M.北京:科学出版社,2005.5何力民.单片机高级教程.北京:北京航空航天大学出版社,2000.6李群芳等.单片机原理、接口及应用.北京:清华大学出版社,2005.7张迎新等.单片机初级教程.北京:北京航空航天大学出版社,20

21、00.8刘守义等.单片机应用技术.西安:西安电子科技大学出版社,2002.湖南科技工业职业技术学院16附录程序源代码#include/调用单片机头文件#define uchar unsigned char/宏定义uchar代替unsigned char。#define uintunsigned int/宏定义uint用来定义无符号整型数。#include eeprom52.h/数码管段选定义 0123456789uchar code smg_du=0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8,0 x80,0 x90,/ABCDEF不显示0 x8

22、8,0 x83,0 xc6,0 xa1,0 x86,0 x8e,0 xff;/断码uchar dis_smg8=0 xc0,0 xf9,0 xa4,0 xb0,0 x99,0 x92,0 x82,0 xf8;uchar smg_i=4;/显示数码管的个位数/数码管位选定义sbit smg_we1=P20;/数码管位选定义sbit smg_we2=P21;sbit smg_we3=P36;sbit smg_we4=P37;char dx_s=0;/东西南北 倒计时变量sbit dx_red=P24;/东西红灯sbit dx_green=P23;/东西绿灯sbit dx_yellow=P22;/东

23、西黄灯sbit nb_red=P27;/南北红灯sbit nb_green=P26;/南北绿灯sbit nb_yellow=P25;/南北黄灯uchar flag_jtd_mode;/交通灯的模式 根据时间bit flag_1s=0;bit flag_500ms;bit flag_dx_nb;/东西南北模式uchar flag_5m_value;uchar i;uchar flag_alarm;/模式uchar dx_time=30,nb_time=33;/东西、南北的时间uchar flag_jdgz;/交通管制毕业设计方案17/*数码位选函数*/void smg_we_switch(uch

24、ar i)switch(i)case 0:smg_we1=0;smg_we2=1;smg_we3=1;smg_we4=1;break;case 1:smg_we1=1;smg_we2=0;smg_we3=1;smg_we4=1;break;case 2:smg_we1=1;smg_we2=1;smg_we3=0;smg_we4=1;break;case 3:smg_we1=1;smg_we2=1;smg_we3=1;smg_we4=0;break;/*把数据保存到单片机内部 eeprom 中*/void write_eeprom()SectorErase(0 x2000);byte_write

25、(0 x2000,dx_time);byte_write(0 x2001,nb_time);byte_write(0 x2058,a_a);/*把数据从单片机内部 eeprom 中读出来*/void read_eeprom()dx_time=byte_read(0 x2000);nb_time=byte_read(0 x2001);a_a=byte_read(0 x2058);/*开机自检 eeprom 初始化*/void init_eeprom()/开机自检 eeprom 初始化read_eeprom();/先读if(a_a!=1)/新的单片机初始单片机内问 eeproma_a=1;dx_t

26、ime=30;湖南科技工业职业技术学院18nb_time=33;/东西、南北的时间write_eeprom();/保存数据/*名称:delay_1ms()*功能:延时 1ms 函数*输入:q*输出:无*/void delay_1ms(uint q)uint i,j;for(i=0;iq;i+)for(j=0;j110;j+);/*名称:display()*功能:数码管显示*输入:无*输出:无*/void display()uchar i;for(i=0;i 3)dx_red=1;/灭dx_green=0;/亮dx_yellow=1;/灭nb_red=0;/亮nb_green=1;/灭湖南科技工

27、业职业技术学院20nb_yellow=1;/灭flag_5m_value=0;else if(dx_s 3)dx_red=0;/亮dx_green=1;/灭dx_yellow=1;/灭nb_red=1;/灭nb_green=0;/亮nb_yellow=1;/灭flag_5m_value=0;else if(dx_s 5)flag_jdgz=0;if(flag_jdgz=1)/全部亮红灯dx_red=0;/亮dx_green=1;/灭dx_yellow=1;/灭nb_red=0;/亮nb_green=1;/灭nb_yellow=1;/灭if(flag_jdgz=2)/东西红灯南北绿灯dx_red

28、=0;/亮dx_green=1;/灭dx_yellow=1;/灭nb_red=1;/灭nb_green=0;/亮nb_yellow=1;/灭if(flag_jdgz=3)/南北红灯东西绿灯dx_red=1;/灭dx_green=0;/亮dx_yellow=1;/灭nb_red=0;/亮nb_green=1;/灭nb_yellow=1;/灭毕业设计方案23if(flag_jdgz=4)/南北绿灯东西绿灯dx_red=1;/灭dx_green=0;/亮dx_yellow=1;/灭nb_red=1;/灭nb_green=0;/亮nb_yellow=1;/灭if(flag_jdgz=5)/南北黄灯东西

29、黄灯dx_red=1;/灭dx_green=1;/灭dx_yellow=0;/亮nb_red=1;/灭nb_green=1;/灭nb_yellow=0;/亮if(key_can=1)/设置键menu_1+;if(menu_1=3)menu_1=0;if(menu_1=1)/设置东西的时间if(key_can=2)dx_time+;/加 1if(dx_time 99)dx_time=99;if(key_can=3)湖南科技工业职业技术学院24dx_time-;/减 1if(dx_time 99)nb_time=99;if(key_can=3)nb_time-;/减 1if(nb_time=10)

30、nb_time=10;dis_smg0=smg_du11;/显示为 Bdis_smg1=smg_du11;/显示为 Bdis_smg2=smg_dunb_time%10;/显示东西设置的时候dis_smg3=smg_dunb_time/10;write_eeprom();/保存数据/*名称:main()*功能:实现灯的闪烁*输入:无*输出:无毕业设计方案25*/void main()time0_init();init_eeprom();/开机自检 eeprom 初始化dx_s=nb_time;/东西时间while(1)key();if(key_can=20)value=0;flag_1s=1;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁