《简易交通灯控制逻辑电路设计.pdf》由会员分享,可在线阅读,更多相关《简易交通灯控制逻辑电路设计.pdf(20页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、电子技术课程设计报告题目:简易交通灯控制逻辑电路设计学生姓名:学生学号:年级:2014 级专业:自动化班级:(1)班指导教师:机械与电气工程学院制2017 年 5 月简易交通灯控制逻辑电路设计简易交通灯控制逻辑电路设计机械与电气工程学院 自动化专业1 1 设计的任务与要求设计的任务与要求课程设计的任务课程设计的任务本系统由单片机系统、数码管显示、交通灯显示系统组成。系统除基本的交通功能外,还具有倒计时。东西、南北两个干道交于一个十字路口,各干道有一组红、绿、黄三色的指示灯。红灯亮禁止通行,绿灯亮允许通行。黄灯亮提示人们注意红、绿灯的状态即将切换。课程设计的要求课程设计的要求本次课程设计实现的交
2、通灯是带有额外的功能,预期实现的主要功能如下。(1)具有时间显示功能,就是数码管倒计时功能;(2)红绿灯具有两种状态,南北直行,东西直行;(3)具有模式转换功能,切换到不同状态,交通灯通行时间不一样;程序开始运行先南北段通行、东西段禁止 60s,后东西段通行、南北段禁止 60s,依此循环。系统分三种工作模式:正常模式、繁忙模式、特殊模式,并且通过三个按钮“正常”、“繁忙”、“特殊”可相互转化。正常模式:直行时间显示数码管显示60。此时南北段直行通行(绿灯)、东西段禁止(红灯)60s,倒计时到 3s 时,黄灯亮,提醒人们注意了。然后是东西段通行(绿灯),南北段禁行(红灯),一直循环下去。繁忙模式
3、:南北段、东西段的通行时间改为 30s,其它与正常模式类似。特殊模式:特殊模式红灯全亮,倒计时 20s,到最后 3 秒黄灯闪 3 次后并转入正常模式。2 2 简易交通灯控制逻辑电路设计方案制定简易交通灯控制逻辑电路设计方案制定简易交通灯控制逻辑电路设计的原理简易交通灯控制逻辑电路设计的原理系统上电或手动复位之后,系统先显示状态灯及 LED 数码管,将状态码值送显 P1口,将要显示的时间值的个位和十位分别送显 P0 口,在此同时用软件方法计时 1 秒,到达 1s 就要将时间值减 1,刷新 LED 数码管。时间到达一个状态所要全部时间,则要进行下一状态判断及衔接,并装入次状态的相应状态码值以及时间
4、值,当然,还要开启两个外部中断,其一为紧急情况处理中断,一旦信号有效,即K 键为低电平时进入中断服务子程序,东西南北路口的保持现有通行状态,再按一下键,中断结束返回。其二为通行时间调整中断,若按键有效,进入相应的中断子程序,对时间进行调整,可延长或减少某一路段的通行时间,此后再按键则中断结束返回。简易交通灯控制逻辑电路设计的技术方案简易交通灯控制逻辑电路设计的技术方案单单P0P0 口口片片图图 1 1 简易交通灯硬件框图简易交通灯硬件框图数码管数码管红绿灯红绿灯按钮按钮模式显示模式显示开始开始初始化初始化黄灯闪黄灯闪 3S3S南北行东西停南北行东西停南北停东西行南北停东西行N NN N60S6
5、0S60S60SY YY Y图图 2 2 总程序流程图总程序流程图T0T0定时器中断定时器中断1S1S到到倒计时减倒计时减 1 1返回返回图图 3 3 定时器中断的流程图定时器中断的流程图INTOINTO 响应响应“正常”“正常”键按下键按下正常模式设置正常模式设置“繁忙”“繁忙”键按下键按下繁忙模式设置繁忙模式设置特殊模式设置特殊模式设置“特殊”“特殊”键按下键按下返回返回图图 4 4 外部中断外部中断 0 0 的中断流程图的中断流程图3 3 简易交通灯控制逻辑电路设计方案实施简易交通灯控制逻辑电路设计方案实施复位电路复位电路单片机复位电路原理是在单片机的复位引脚RST上外接电阻和电容,实现
6、上电复位。当复位电平持续两个机器周期以上时复位有效。复位电平的持续时间必须大于单片机的两个机器周期。具体数值可以由 RC 电路计算出时间常数。复位电路由手动复位和上电复位两部分组成。上电复位电路要求接通电源后,通过外部电容充电来实现单片机自动复位操作。上电瞬间 RESET 引脚获得高电平,随着电容的充电,RERST 引脚的高电平将逐渐下降。RERST引脚的高电平只要能保持足够的时间(2 个机器周期),单片机就可以进行复位操作。手动复位:手动复位就是在复位电容上并联一个开关,当开关按下时电容被放电、RST 也被拉到高电平,而且由于电容的充电,会保持一段时间的高电平来使单片机复位。单片机复位期间不
7、产生 ALE 和 PSEN 信号,即 ALE=1 和 PSEN=1。这表明单片机复位期间不会有任何取指操作。图图 5 5 复位电路复位电路振荡电路振荡电路单片机系统里都有晶振,在单片机系统里晶振作用非常大,全称叫晶体振荡器,它结合单片机内部电路产生单片机所需的时钟频率,单片机晶振提供的时钟频率越高,那么单片机运行速度就越快,单片机的一切指令的执行都是建立在单片机晶振提供的时钟频率。单片机晶振的作用是为系统提供基本的时钟信号。单片机的时钟电路设计有两种方式,一种是内部时钟方式,一种是外部时钟方式。在内部时钟方式下单片机内部的高增益、反相放大器通过 XTAL1、XTAL2 外接作为反馈元件的外部晶
8、体管振荡器与电容组成的并联谐振回路构成一个稳定的自激振荡器,向内部时钟电路提供振荡时钟。震荡器的频率主要取决于晶体的振荡频率。MCS-51 单片机的晶体振荡频率可以在 1-12MHz 范围内选择,电容 C1、C2 的选择范围是 15-45pF,电容的大小会影响振荡器的稳定性和起振速度。外部时钟方式是把外部已有的时钟信号引入到单片机内。此方式常用于多片单片机同时工作,以便于各单片机的同步。一般要求外部信号高电平的持续时间大于 20s,且为频率低于 12MHz 的方波。本设计采用内部时钟方式,采用 12MHz 的晶振和两个 22pF的电容。图图 6 6 振荡电路振荡电路图图 7 7 最小系统最小系
9、统 LED LED 显示器显示器 LED 显示器由七个发光二极管组成,因此也称之为七段 LED 显示器,此外,显示器中还有一个圆点型发光二极管(在图中以 dp 表示),用于显示小数点。通过七段发光二极管的不同组合,可以显示多种数字、字母或者其他符号。LED 显示器中的发光二极管共有两种连接方法。如图 3-3 所示。(1)共阳极接法把发光二极管的阳极连在一起构成公共阳极。使用时公共阳极接+5V。这样阴极端输入低电平的段发光二极管就导通点亮,而输入高电平的则不点亮。(2)共阴极发光二极连在公共阴公共阴样阳极电平的接法把极 管 的 阴一 起 构 成极。使用时极接地,这端 输 入 高段发光二极管就导通
10、点亮,而输入低电平的则不点亮。此设计用共阴级的 2 位数码管。图图 8 LED8 LED 引脚图及两种接法引脚图及两种接法LED 显示分为动态显示和静态显示:(1)静态显示,是指显示器显示某一字符时,相应段的发光二极管恒定地导通或截止。这种显示方法每一位都需要有一个8 位输出控口控制,占用硬件资源多,一般用于显示位数较少场合。静态显示时,较小的驱动电流就可以得到较高的显示亮度,所以可由接口芯片直接驱动。(2)动态显示,是一位一位地轮流点亮各位数码管。对于多位 LED 显示器的接口电路来说,需要有两个输出口:各位数码管的段控线相应并联在一起,由一个 8 位的 I/O口控制,还学要一个输出口输出位
11、控制信号,“位控”实际上就是对LED 显示器的公共端进行控制,位控信号的数目与显示器个数相同。这种电路的特点是节省I/O 口线,硬件电路相对静态显示方式简单。动态显示方式的硬件电路简单,动态显示采用多路复用技术的动态扫描显示方式,利用人眼的暂留效应和发光二极管发光时间的长短,发光的亮度等因素。静态显示程序简单,且CPU 占用率低,但每个LED 数码管需要一个锁存器来锁存每一个显示位的代码,硬件开销大,仅适合显示位数较少的场合。本设计采用两个二位一体共阴数码管,不管将几位数码管连在一起,数码管的显示原理都是一样的,用P0 口来控制 LED 数码管的段控线和和利用 P2 口控制位控线,动态显示采用
12、动态扫描的方法进行显示及循环点亮每一个数码管,虽然任何时刻都只有一位数码管被点亮,但由于人眼存在暂留效应,只要每位数码管间隔时间足够短,就可以给人以同时显示的感觉。图图 9 9 二位数码管二位数码管发光二极管模拟红绿灯发光二极管模拟红绿灯它是半导体二极管的一种,可以把电能转化成光能,常简写为 LED。发光二极管与普通二极管一样是由一个 PN 结组成,也具有单向导电性。当给发光二极管加上正向电压后,从 P 区注入到 N 区的空穴和由 N 区注入到 P 区的电子,在 PN 结附近数微米内分别与 N 区的电子和 P 区的空穴复合,产生自发辐射的荧光。不同的半导体材料中电子和空穴所处的能量状态不同。当
13、电子和空穴复合时释放出的能量多少不同,释放出的能量越多,则发出的光的波长越短。常用的是发红光、绿光或黄光的二极管。发光二极管的反向击穿电压约 5 伏。它的正向伏安特性曲线很陡,使用时必须串联限流电阻以控制通过管子的电流。图图 1010 启动与停止电路启动与停止电路按键模块按键模块程序开始运行先南北段通行、东西段禁止 60s,后东西段通行、南北段禁止60s,依此循环。系统分三种工作模式:正常模式、繁忙模式、特殊模式,并且通过三个按钮“正常”、“繁忙”、“特殊”可相互转化。这里用到了二极管做开关,是为了防止有一按键被按下3 根线同时低,中断无效。二极管在正向电压作用下电阻很小,处于导通状态,相当于
14、一只接通的开关;在反向电压作用下,电阻很大,处于截止状态,如同一只断开的开关。利用二极管的开关特性,可以组成各种逻辑电路。图图 1111 按键电路按键电路电子秒表系统电路图电子秒表系统电路图图图 1212 简易交通灯控制逻辑电路总电路图简易交通灯控制逻辑电路总电路图元器件清单元器件清单表表 1 1实验原器件清单表实验原器件清单表序号序号编号编号名称名称STC89C52 单片型号型号/参数参数数量数量1U1机七段两位数码AT89C5212无管D9、D12、D15、D187SEG-MAX2-CC1LED-RED红、黄交通灯各 4 个LED-YELLOWLED-GREEN73D7、D11、D14、D
15、164D4、D5、D6、D7、绿发光二极管D10、D13、D16567891011D1、D2、D3R1-R17C3C1、C2无X1RP1普通二极管电阻有极性电容普通电容按键晶振排阻DIDOERES/220CAP-ELECCAP/22pFBUTTONCRYSTALRESPACK-8317124114 4 简易交通灯控制逻辑电路的仿真实现简易交通灯控制逻辑电路的仿真实现仿真软件介绍仿真软件介绍 STC89C52 STC89C52 简介简介STC89C52 是一种低功耗、高性能 CMOS 8 位微控制器,具有 8K 在系统可编程 Flash存储器。使用高密度非易失性存储器技术制造,与工业 80C51
16、 产品指令和引脚完全兼容。片上 Flash 允许程序存储器在系统可编程 Flash,使得 STC89C52 为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。功能:STC89C52 具有以下标准功能:8K 字节 Flash,256 字节 RAM,32 位 I/O 口线,看门狗定时器,2 个数据指针,三个 16 位定时器/计数器,一个 6 向量 2 级中断结构,全双工串行口,片内晶振及时钟电路。另外,STC89C52 可降至 0Hz 静态逻辑操作,支持 2种软件可选择节点模式。空闲模式下,CPU 停止工作,允许 RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM 内容被保存,
17、振荡器被冻结,单片机一切工作停止,指导下一个中断或硬件复位为止。C C 语言介绍语言介绍C 语言是一种通用的计算机程序设计语言,它既可以用来编写计算机的系统程序也可以用来编写一般的应用程序。以前计算机的系统软件主要用汇编语言编写,单片机应用系统更是如此。由于汇编语言程序的可读性和可移植性都较差,采用汇编语言编写单片机应用程序不但周期长,而且调试和排错也比较困难,为了提高单片机应用程序的开发效率,改善程序的可读性和可移植性,采用高级语言无疑是一种最好的选择。C 语言既具有一般高级语言的特点,又能直接对计算机的硬件进行操作,表达和运算能力也较强,许多以前只能采用汇编语言来解决的问题现在都可以用 C
18、 语言来解决。综上所述,C 语言在功能上、结构性、可读性、可维护性上有明显的优势,故本课题采用 C 语言实现软件功能。Keil uVision4 Keil uVision4 介绍介绍本课题采用 Keil uVision4 软件开发系统,Keil uVision4 是美国 Keil Software公司出品的 51 系列兼容单片机 C 语言软件开发系统。Keil uVision4 是一款可用于多种 8051MCU 的集成开发环境(IDE),该IDE 同时也是 PK51 及其它开发套件的一个重要组件。除增加了源代码、功能导航器、模板编辑以及改进的搜索功能外,uVision4 还提供了一个配置向导功
19、能,加速了启动代码和配置文件的生成。此外其内置的仿真器可模拟目标 MCU,包括指令集、片上外围设备及外部信号等。uVision4 提供逻辑分析器,可监控基于 MCU 的 I/O 引脚和外设状态变化下的程序变量。Proteus Proteus 仿真器介绍仿真器介绍Proteus 是目前最好的模拟单片机外围器件的工具。可以仿真 51 系列、AVR,PIC 等常用的 MCU 及其外围电路(如LCD,RAM,ROM,键盘,马达,LED,AD/DA,部分SPI 器件,部分 IIC 器件,.)。Proteus 与其它单片机仿真软件不同的是,它不仅能仿真单片机 CPU 的工作情况,也能仿真单片机外围电路或没
20、有单片机参与的其它电路的工作情况。因此在仿真和程序调试时,关心的不再是某些语句执行时单片机寄存器和存储器内容的改变,而是从工程的角度直接看程序运行和电路工作的过程和结果。对于这样的仿真实验,从某种意义上讲,是弥补了实验和工程应用间脱节的矛盾和现象。简易交通灯控制逻辑电路仿真实现简易交通灯控制逻辑电路仿真实现本设计是一款的多功能交通灯,采用 STC89C52 单片机为核心,2 位 LED 数码管显示,本设计采用模块化的设计方法,硬件设计包括单片机模块、显示模块、发光二极管模块、相关控制模块等的模块化设计与制作;整个设计过程是硬件和软件相结合的,并采用 C语言编写实现。根据要求用单片机对其进行控制
21、,取得了以下研究成果:(1)控制系统接线图(2)控制系统工作原理的阐述(3)硬件电路的完成由于使用的是单片机作为核心的控制元件,使得电路的可靠性比较高,功能也比较强大,达到了预期设计要求的结果,实现了交通灯 3 个状态的转化,数码管的倒计时功能,和特殊情况下的交通灯的变化。图图 1313 简易交通灯控制逻辑电路仿真结果图简易交通灯控制逻辑电路仿真结果图5 5 总结及心得体会总结及心得体会经过两周的努力工作,终于完成了简易交通灯控制逻辑电路的课程设计。虽然设计仿真调试的过程很艰辛,但结果还是好的,看到仿真结果出来,看到交通灯的循环闪烁,心情顿时好起来,调试过程中的种种怨言都没有了。这次课程设计主
22、要是软件仿真,由于器材有限就没有弄硬件部分。在软件的设计与调试过程中,我觉得它主要考验你的思维逻辑能力及你对指令的熟悉程度。可以说再整个软件设计过程中,我感觉又重新学了一次单片机,在学习的过程中不仅学会了延时的两种方法,即软件延时和硬件延时,还掌握数码管的两种显示方式(即动态显示与静态显示)及其如何选择。通过几次反复调试过程,使得我对c 语言有了更深刻的理解。同时在整个课程设计过程我还学会熟练使用 Keil、proteus 等软件,对我在今后的学习中会有很大的帮助。我对这个课程设计课有着深刻的体会:要想做好这个课程设计,就必须认认真真地去做,不要怕麻烦,遇到不懂的问题就要主动去问同学或者老师。
23、最后我希望课程设计课能够再多一点给我们提供动手的机会,并让我们多点发挥主观能动性和创造能力,这样可以在学到东西的同时又能发散大家的思维。总之,通过这次练习我有了很多收获。在摸索该如何设计电路使之实现所需功能的过程中,特别有趣,培养了我的设计思维,增强了动手能力。6 6 参考文献参考文献1杨加国主编,单片机原理与应用及 C51 程序设计第 3 版,M北京:清华大学出版社,2014 年2来清民主编,手把手教你学 CAN 总线,M北京:北京航空航天大学出版社,2010 年3张齐、朱宁西主编,单片机应用系统设计技术第3 版,M北京:电子工业出版社,2015 年4郭天祥主编,51 单片机 C 语言教程:
24、入门、提高、开发、拓展全攻略,电子工业出版社,2012 年5谭浩强主编,C 程序设计第 4 版,清华大学出版社,2015 年6黄继昌,电子元器件应用手册M,北京人民邮电出版.20047张齐,单片机原理及应用:基于 Proteus 和 Keil C 第 2 版,电子工业出版社,20138王琰琰,唐功友,实时控制交通信号机的设计与实现,中国海洋大学出版社,20109刘维恒,实用电子电路基础,电子工业出版社,200410张庆权,电子元器件的选用与检测,机械工业出版社,200211肖业伟,郭雪峰,黄辉先.盘宏斌,自适应的智能交通信号机系统设计,M北京:电子工业出版社,2009指导教师评语指导教师评语指导教师签字:成绩(60%)年月日答辩过程及评价答辩过程及评价答辩小组签字:成绩(40%)年月日院综合意见分管院长签字(盖章):综合成绩年月日