1、广东工业大学电子技术综合设计与实践课程设计交通灯控制器课程设计课程名称电子技术综合设计与实践(1)题目名称交通灯控制器学生学院自动化学院专业班级13级自动化卓越1班学 号3113000981学生姓名黄景运指导教师张建新,夏益民2015 年11月9日广东工业大学课程设计任务书题目名称交通灯控制器的设计学生学院自动化学院专业班级13级自动化卓越(1)班姓名黄景运学号3113000981一、课程设计的内容设计一个十字路口的红、绿、黄三色信号交通灯控制电路。二、课程设计的要求与数据1. 用红、绿、黄三色发光二极管作信号灯。主干道为东西向,有红、绿、黄三个灯;支干道为南北向,也有红、绿、黄三个灯。红灯亮
2、禁止通行;绿灯亮允许通行;黄灯亮则要求压线车辆快速穿过道口。2. 由于主干道车辆较多而支干道车辆较少,所以主干道绿灯时间较长。当主干道允许通行亮绿灯时,支干道亮红灯。而支干道允许通行亮绿灯时,主干道亮红灯,两者交替重复。主干道每次放行50秒,支干道每次放行30秒。在每次由亮绿灯变成亮红灯的转换过程中间,需要亮5秒的黄灯作为过渡,以使行驶中的车辆有时间停靠到禁行线以外。3. 采用倒计时方法,各用两个七段数码管分别显示东西、南北方向的红灯、绿灯、黄灯时间。4. 能实现总体清零功能。按下清零键后,系统实现总清零,计数器由初始状态开始计数,对应状态的指示灯亮。5.能实现特殊状态的功能显示。设S为特殊状
3、态的传感器信号,当S=1时,进入特殊状态;当S=0时,退出特殊状态。按下S后,能实现如下特殊状态功能:(1).显示器闪烁。(2).计数器停止计数并保持原来的数据。(3).东西、南北路口均显示红灯状态。(4).特殊状态结束后,能继续对时间进行计数。6).利用QUARTUS软件,设计符合以上功能要求的交通灯控制器。用图形输入方法。控制器、计数器的功能用功能仿真的方法验证,可通过观察有关波形确认电路设计是否正确。通过编译,仿真和综合,并下载到相应芯片中实现,最后在学习机上验证设计课题的正确性。在学习机上验证结果。三、课程设计应完成的工作1、设计电路2、模拟仿真3、下载4、项目结果验证5、项目报告四、
4、课程设计进程安排序号设计各阶段内容地点起止日期1Quartus II 入门学习,熟悉设计流程;讲解各设计任务及其要求,分配设计任务实2-212, 214第8周周12通过查阅资料,独立完成电路设计,提交纸质电路原理图草稿实2-212,214第8周周2-周33在Quartus II和DE2板上实现设计实2-212, 214第8周周4-周54演示和验收实2-212, 214第8周周55完成设计报告五、应收集的资料及主要参考文献1、尹明,电子技术综合设计与实践,. 西安电子科技大学出版社,西安,20112、谢云等,现代电子技术实践课程指导,机械工业出版社,北京,20063、张志刚,FPGA与SOPC设
5、计教程DE2实践,西安电子科技大学出版社,西安,20074、阎石等,数字电子技术基础,高等教育出版社,北京,2006发出任务书日期:年月日指导教师签名:计划完成日期: 年 月 日 基层教学单位责任人签章:6主管院长签章:摘 要 本次的任务是利用QURATUS软件设计一个十字路口的红、绿、黄三色信号交通灯控电路,通过时序功能仿真后,下载到DE-II实验板上验证结果。交通信号灯控制器主要由秒脉冲发生器、定时器、控制器、译码显示电路及信号灯组成。秒脉冲发生器由74LS292分频器实现1Hz分频。定时器采用同步十进制减法计数器74LS190实现50S、30S、5S倒计时计数。控制器由JK触发器组成,实
6、现四种状态循环。译码显示电路通过七段显示译码器7447及七段显示数码管连接而实现。控制器通过定时器产生的信号来转变状态,实现对数字显示与红绿黄灯的转换的控制。关键词:分频器、定时器、控制器、译码显示目 录1 设计任务目的与要求 11.1 设计任务 11.2 设计要求 12 模块及其原理介绍 22.1 分频器模块 22.2主控制器模块 22.3 计数器模块 32.4数码管显示模块 42.5交通灯显示模块 52.6复位功能模块 62.7 特殊功能模块 73 设计方案 83.1 设计框图 83.2总体方案设计 83.3 系统总体电路 94 实验结果与数据分析 94.1 实验结果 95 结论与问题讨论
7、 105.1 问题 105.2 解决方法 105.3 完成设计要求程度 105.4总结 10参考文献 101设计任务目的与要求11设计任务:设计一个十字路口的红、绿、黄三色信号交通灯控制电路。12设计要求:1).用红、绿、黄三色发光二极管作信号灯。主干道为东西向,有红、绿、黄三个灯;支干道为南北向,也有红、绿、黄三个灯。红灯亮禁止通行;绿灯亮允许通行;黄灯亮则给行驶中的车辆有时间停靠到禁行线之外。2).由于主干道车辆较多而支干道车辆较少,所以主干道绿灯时间较长。当主干道允许通行亮绿灯时,支干道亮红灯。而支干道允许通行亮绿灯时,主干道亮红灯,两者交替重复。主干道每次放行50秒,支干道每次放行30
8、秒。在每次由亮绿灯变成亮红灯的转换过程中间,需要亮5秒的黄灯作为过渡,以使行驶中的车辆有时间停靠到禁行线以外。3).能实现正常的、即时显示功能。用DE2上的四个七段数码管作为倒计时显示器。分别显示东西、南北方向的红灯、绿灯、黄灯时间。4).能实现特殊状态的功能显示。设S为特殊状态的传感器信号,当=1时,进入特殊状态。当=0时,退出特殊状态。按S后,能实现特殊状态功能:(1)显示器闪烁;(2)计数器停止计数并保持在原来的数据;(3)东西、南北路口均显示红灯状态;(4)特殊状态结束后,能继续对时间进行计数。5).能实现总体清零功能。按下R后,系统实现总清零,计数器由初始状态开始计数,对应状态的指示
9、灯亮。6).利用QUARTUS软件,设计符合以上功能要求的交通灯控制器。用图形输入方法。控制器、计数器的功能用功能仿真的方法验证,可通过观察有关波形确认电路设计是否正确。通过编译,仿真和综合,并下载到相应芯片中实现,最后在学习机上验证设计课题的正确性。在学习机上验证结果。2模块及其原理介绍2.1分频器模块本次课设所使用的DE-II板提供频率为50MHz的信号输入,而我们设计所需要的频率为1Hz,因此我们要对其进行分频处理。我们采用74LS292分频器,通过对E.D.C.B.A五个引脚分别输入高.高.低.低.高电平,实现约为1Hz分频,作为定时器的输入信号。2.2主控制器模块 根据课程设计任务,
10、共有4种状态,可以用二位二进制码(Q1Q0)表示,实现主黄支红(S0)、主红支绿(S1)、主绿支黄(S2)、主绿支红(S3)四个状态循环,则有如下图所示交通灯控制器状态转换图。根据这个状态转换图可得出状态转换真值表,从而得到主控制器的电路。设A为倒计时计数输出信号,当计数完成时输出1,计数未完成时输出0。主控制器是由两个JK触发器连接而成,当计数完成时,触发器便会从一个状态跳到下一个状态,从而实现了状态的转换。主控制器状态转换图0001 1011000011011101101100主控制器状态转换真值表根据真值表可以得到Q1*、Q0*的真值表00011011001111011000011011
11、0010111010则Q1、Q0的状态方程分别为:则Q1、Q0的状态方程分别为:Q0*=AQ1Q0+AQ1Q0+AQ1Q0+AQ1Q0=AQ0+AQ0Q1*=AQ1+AQ1Q0+AQ1Q0=(A+Q0)Q1+AQ0Q1又因为采用JK触发器,则其驱动方程为Q*=JQ+KQ,则J0=A=K0J1=A+Q0=K1因此我们可以将J、K端接在一起,接成T触发器,则T0=AT1=A+Q0主控制器模块电路如下所示:2.3计数器模块设计要求对不同的状态维持的时间不同,而且要以十进制倒计时显示出来。主支干道分别采用两个74LS168完成计时器状态产生模块设计。设计思路:要以十进制输出,而又有一些状态维持时间超过
12、10秒,则必须用两个74LS168分别产生个位和十位的数字信号。我们可以通过将74LS168的时钟CLK端接秒脉冲从而实现计时功能。同时74LS168计数器是十进制减法同步计数器,而且其具有同步置数(上升沿)的功能,因此我们可以采用置数法,根据主控制器状态给计数器置入对应的倒计时间。S0状态时,主干道黄灯亮置入05S,支干道红灯亮置入05S;S1状态时,主干道红灯亮置入35S,支干道绿灯亮置入30S;S2状态时,主干道红灯亮置入05S,支干道黄灯亮置入05S;S3状态时,主干道绿灯亮置入50S,支干道红灯亮置入55S。设D31、D21、D11、D01为主干道十位置数端,D30、D20、D10、
13、D00为主干道个位置数端;设d31、d21、d11、d01为支干道十位置数端,d30、d20、d10、d00为支干道个位置数端,因此可得主支干道置数真值表:Q1Q0D31D21D11D01D30D20D10D00000 0000101010011010110000001011101010000主干道置数真值表Q1Q0d31d21d11d01d30d20d10d00000 0000101010011000010000001011101010101支干道置数真值表则得到主干道真值表达式为:D31=0 D21=Q1Q0 D11=Q1Q0 D01=Q1Q0+Q1Q0=Q0D30=D10=0 D20=D
14、00=Q1+Q1Q0=Q1+Q0支干道真值表达式为:d31=0 d21=Q1Q0 d11=Q1Q0 d01=Q0d30=d10=0 d20=d00=Q1+Q1Q0=Q1+Q0则置数模块电路如下所示:主干道置数电路支干道置数电路当74LS168的U/DN端为低电平时,进行减法运算。又因为日常生活中交通灯倒计时显示不会出现“00”,因此我们在主干道计数器或支干道计数器减到01的时候均输出低电平的置数脉冲,从而进行下一状态的倒计时显示。倒计时模块电路如下:主干道计数模块支干道计数模块2.4数码管显示模块我们采用7447译码器加共阴七段数码管实现时间显示功能,其电路如下所示:2.5交通灯显示模块交通灯
15、显示是表示电路所处的状态,受主控制器控制,即主控制器的状态决定主干道支干道的交通灯显示。设G、Y、R分别表示主干道的绿、黄、红灯;g、y、r分别表示支干道的绿、黄、红灯,值为1时表示该灯亮,值为0时表示灯灭。设S为紧急开关,当S为1时,表示按下紧急按钮,仅主干道和支干道的红灯亮,其余灯不亮;当S=0时,电路维持正常,S0时主黄支红;S1时主红支绿;S2时主红支黄;S3时主绿支红。因此可得到交通灯的真值表:SQ1Q0GYRgyr1XX001001000010001001001100010001010011100001则真值表达式为:G=Q1Q0S Y=Q1Q0S R=Q1Q0+Q1Q0+Sg=Q
16、1Q0S y=Q1Q0S r=Q1Q0+Q1Q0+S则交通灯显示模块电路如下所示:2.6复位功能模块当按下复位按钮,系统要实现总清零,计数器由初始状态开始计数,而我们所使用的JK触发器具有同步清零功能,则我们可以在按下按钮时输入清零信号(低电平有效),让主控制器进入初始状态,同时输入到计数器的置数端置入初始状态的倒计时间。复位功能电路总体置数信号输入电路2.7特殊功能模块设按下特殊功能键输入高电平,则取反后与秒脉冲相或,当秒脉冲为低时,输出低电平,并接到7447的BIN端(7447的BIN端为灭灯控制端,低电平有效),此时数码管灭,当秒脉冲回到高电平时,输出高电平,数码管亮,从而实现数码管显示
17、闪烁。我们把按下特殊按钮的高电平输入分别输入到主干道、支干道的个位计数器的EP、ET端(EP、ET为计数使能端,低电平有效),则主支的个位计数器停止计数,十位计数器也会停止计数,实现数码管的数值保持不变3设计方案3.1设计框图GR倒计时显示倒计时显示yrgY控制控制主干道计数器支干道计数器反馈反馈时钟冲输入复位按钮特殊按钮3.2总体方案设计状态控制器主要记录交通灯的工作状态:主黄支红、主红支绿、主绿支黄、主绿支红;主状态译码器通过与非门点亮相应状态的信号灯;秒信号发生器产生整个定时系统的时间脉冲,频率为1Hz;通过减法计数器对秒脉冲减计数,达到每一种工作状态持续时间。减法计数器减至1输出脉冲使
18、状态控制器完成状态转换,同时主状态译码器根据系统下一个工作状态决定下一次减计数的初始值。减法计数器的状态由BCD译码器译码,数码管显示。2.3系统总体电路4实验结果与数据分析我们运用quartus软件对所设计的电路进行时序仿真和功能仿真,仿真通过后下载到DE-II板,运行程序,观察并记录结果: 1. 开始时,主干道黄灯亮,支干道红灯亮,主支干道数码管分别显示“05”“05”字样。然后主干道05秒倒计到01秒后跳变到红灯,进行35秒倒计时,数码管显示“35”,支干道05秒倒计到01秒后跳变到绿灯,进行30秒倒计时,数码管显示“30”; 支干道30秒倒计时结束后跳变到黄灯,进行5秒倒计时,数码管显
19、示“05”,经行30秒倒计时,主干道仍为红灯,进行5秒倒计时,数码管显示“05”;主干道5秒倒计时结束后跳变为绿灯,进行50秒倒计时,数码管显示“50”,支干道5秒倒计时结束后跳变为红灯,进行55秒倒计时,数码管显示“55”;经过50秒倒计时,主干道跳变为黄灯,进行5秒倒计时,数码管显示“05”,而支干道仍为红灯,进行5秒倒计时,数码管显示“05”。此时交通灯回到主干道黄灯亮,支干道红灯亮的状态,重新开始下一个循环的计时。 2. 当闭合特殊按钮“S键时,可以看到仅主干道和支干道红灯同时亮,计数器停止计时,数码管显示闪烁;当断开“S键时,交通灯恢复正常工作。当按下复位按钮“R”键时,可以看到交通
20、灯回到最开始的状态:主干道黄灯亮,支干道红灯亮,主支干道数码管分别显示“05”“05”。然后交通灯系统开始正常运行。5结论与问题讨论5.1 问题1.开始检验时,发现数码管显示数字不正确,而且高位与低位数码管位置倒过来2.交通灯显示不正确5.2解决办法 1.经检查,发现数码管管脚分配出错,因此对数码管重新分配管脚,并分配好高位与低位数码管的管脚。 2.检查电路,发现所接电路与我们所推导的交通灯显示真值表达式不同,因此重新连接交通灯显示电路。5.3完成设计要求的程度 经修改后,电路能实现课程设计所要求的全部功能。5.4总结 通过本次数电课程设计,我学会了许多知识。我们在做课程设计的时候应该首先明确
21、设计任务和总体结构框图,只有明确了设计的要求和任务,规划出整体的电路结构框图才能有方向的提出设计思路。同时我们要有分模块设计的思想:数字电路有很强模块性,做好每一块模块对整机的运行十分重要,还要详细查阅芯片资料,明确每一个引脚的作用。对于组合逻辑电路,我们应该列出真值表并写出表达式,并根据表达式画出电路图,然后就能够实现模块间的连接。对于时序逻辑电路,我们应该先列状态转换图,然后根据状态图列出真值表,然后卡诺图化简,列出次态方程,驱动方程,然后根据驱动方程连接JK触发器。整个过程里我们收获到许多东西,不但加深了对数字电子技术的了解,而且锻炼了我们独立思考问题的能力。参考文献1 阎石.数字电子技术基础(第五版),高等教育出版2 华成英,童诗白模拟电子技术基础第3版高等教育出版社,2006年3 廖先芸电子技术实践与训练北京高等教育出版社,2005年
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1