

免费预览已结束,剩余8页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
安 徽 矿 业 职 业 技 术 学 院 课 程 设 计eda课程设计 交通灯控制系统设计l 姓 名:许朝亮l 专 业: 应用电子技术 l 班 级:101l 课程设计题目:交通灯控制系统l 指 导 教 师:l 学 号:l 设 计 时 间:2012-01-(0411)- 36 -前言电子设计自动化(eda)是近几年迅速发展起来的计算机软件、硬件和微电子技术交叉形成的现代电子设计技术,其含义已经不局限在当初的类似protel电路版图设计自动化的概念,目前eda技术更多的是指芯片内的电路设计自动化。也就是说,开发人员完全可以通过自己设计电路来定制其芯片内部的电路功能,使之成为专用集成电路(asic)芯片,这就是当今的用户可编程逻辑器件(pld)技术。目前,在世界范围内,可编程逻辑器件受到了业界的普遍欢迎,在近几年得到了迅速的发展,其集成度和工作速度不断提高,功能不断完善,已经成为当今实现电子系统集成化的重要工具。因此,eda技术势必成为广大电子信息工程技术人员必须掌握的技术,运用eda技术设计电子系统也是一个电子工程师必备的技能。随着交通工具的迅速发展,私家车辆是越来越多,道路已经变得十分拥堵,因此这对那些十字路口的红绿灯要求十分严格,红绿灯能否正常运行关系到交通事故和驾驶员、行人的生命安全,因此交通灯的设计将会变得十分严格,决不允许有半点的差错,这就要求设计人员具有崇高的电子信息工程技术知识和设计思想,具有非常细心的设计态度。目录1绪论- 1 1.1简介- 1 1.2eda 发展历程- 1 1.3摘要- 1 2. quartusii6.0 的使用方法- 2 3. 交通灯的设计目的和要求- 19 3.1设计目的- 19 3.2设计要求- 19 4 交通的设计分析- 20 4.1 设计思路- 20 4.2整体设计方案框架图- 21 4.3交通灯控制器状态控制表- 21 4.4设计流程图- 21 5 分频模块235.1 分频模块的功能- 23 5.2 分频模块的源程序- 23 5.3 分频模块的功能仿真图- 24 6. 控制模块246.1控制模块功能- 24 6.2 控制模块源程序- 25 6.3 控制模块功能仿真图- 26 7. 选择模块- 26 7.1 选择模块的功能- 26 7.2 选择模块的源程序- 27 7.3 选择程序的功能仿真图- 29 8. led显示模块- 30 8.1 led显示模块的功能- 30 82 led显示模块的源程序- 30 8.3 led显示模块的功能仿真图- 31 9. 顶层文件原理图设计329.1顶层文件原理图- 32 9.2 顶层原理图的功能仿真波形图- 33 10.交通灯的测试结果- 34 11.课程设计总结- 35 参考文献- 36 1绪论1.1简介 电子设计自动化(electronic design automation ,eda)技术以计算机为基础工作平台,以微电子技术为物理基础,以现代电子设计技术为灵魂,采用计算机软件工具,最终实现电子系统或专用集成电路(asica)的设计。eda技术的使用者包括两类:一类是专用集成电路芯片的设计研发人员;另一类是广大电子线路设计人员。eda技术可简单概括为以大规模可编程逻辑器件为设计载体,通过硬件描述语言或逻辑图输入给相应eda开发软件,经过编译和仿真,最终将设计的电路下载到设计载体中,从而完成系统设计任务的一门新技术。 1.2eda 发展历程从目前的eda技术来看,其发展趋势是政府重视,使用普及、应用广泛、工具多样、软件功能强大。随着微电子技术与工具软件的发展,eda技术的硬件载体、软件开发工具与设计输入方式都发生了很大的变化。1.3摘要本课程设计侧重于逻辑电路设计同时采用vhdl硬件描述语言辅助完成对十字路口交通灯电路的功能仿真。在设计过程中,重点探讨了交通灯控制系统的设计思路和功能模块的划分,对设计过程中出现的问题详细进行分析。系统主要由四个模块组成: 分频模块、控制模块、选择模块、数码显示模块。关键词:交通灯 功能模块 vhdl语言2. quartusii6.0 的使用方法启动quartus ii6.0双击桌面上的quartus ii6.0图标或单击“开始”按钮并在程序菜单中选择quartus ii6.0,可以启动quartus ii6.0.编辑文件(1)单击菜单栏中的filenew命令,打开“new”对话框,用于输入文件类型。(2)单击“new”对话框中的device design files选项卡,选择输入文件的类型。这里选择“block diagram/schematic file”,选好后单击“ok”按钮,打开图形编辑窗口。输入原理图(1)右击鼠标,弹出快捷菜单,点击“insertsymbol”,会出现一个输入原理符号的窗口(2)右击鼠标,弹出快捷菜单,点击“insertsymbol”,会出现一个输入原理符号的窗口。本实训中所用的原件74151、74161在othersmaxplus2库中,输入端口信号、输出端口信号在primitivespin中,电源信号(vcc)、接地信号(gnd)在primitivesother库中。在画连线时,把光标置于端口处,当出现十字形时按下左键进行画线。其余的操作与protel相似。(3)保存所建立的文件,将该文件保存到d盘design文件夹中,文件名为ex1-v。创建工程(1)打开创建工程向导a:单击filenew preject wizard菜单,出现新建工程向导的对话框,b:单击”nex”按钮,出现工程基本设置对话框。c:在最上面的输入框中输入工作库文件夹的地址,这里用的地址是d:dsigns,单击旁边浏览按钮,选择所需的设计文件。d:输入该工程的名称,一般可以用顶层文件的名称作为工程名称,这里的顶层文件名是ex1-v。最下面的文件名输入框要求输入顶层设计文件实体的名称,这里顶层文件的实体的名称也是ex1-v。单击“打开”按钮,会出现一个工程设置完成对话框。(2)将设计文件加入工程中单击“nex”按钮,弹出添加文件对话框,将与本工程有关的文件加入,(3)选择目标芯片单击“nex”按钮,打开选择目标芯片的对话框,根据系统设计的实际需要选择目标芯片。首先在family栏选择芯片系列,这里选择cylone系列的ep1c3t144c8芯片。(4)选择仿真器和综合器类型.a:单击“nex”按钮,弹出选择仿真器和综合器对话框。b:单击“nex”按钮,弹出工程设置统计窗口。最后单击“finish”按钮,结束设置。目标芯片的配置。(1)选择目标芯片,单击菜单栏中的assignmentsdevice命令,弹出一个对话框,选择category下的device选项,然后在右侧选择目标芯片ep1c3t144c8。(2)选择目标器件编程配置方式单击“device& pin options.”按钮进入器件管脚操作对话框。首先选择configuration方式为passive serial,这种方式可以直接由pc机配置。(3)选择输出配置单击“programming files”选项卡,可以选“hexadecimal”,即产生下载文件的同时,产生十六进制配置文件。(4)选择目标器件闲置引脚的状态单击“unused pins”选项卡,可根据实际需要选择目标器件空闲管脚的状态。编译(1)编译单击菜单栏中的processingstart compilation命令,启动编译(2)阅读编译报告编译成功后可以看到编译报告。仿真(1)建立波形文件仿真前必须建立波形文件。单击filenew命令,打开文件选择窗口,然后单击“other files”选项卡,选择其中的“vector waveform file”选项。(2)打开波形编译器 单击“ok”按钮,即出现空白的波形编辑窗口(3)输入信号节点。a: 单击viewutility windowsnode finder 命令,打开输入信号节点对话框。在该对话框的filter栏中选pins:all,然后单击“list”按钮,在下方的“nodes found”列表框中会出现设计工程的所有端口引脚名。b:。用鼠标输入节点,逐个拖到波形编辑窗口。然后单击关闭按钮,关闭“node finder”对话框。(4)编辑输入波形分别给输入管脚编辑波形,给输入信号添加脉冲波形。(5)启动仿真及阅读仿真报告单击菜单栏中的processingstart simulation命令,即可启动仿真器,生成仿真波形图。指定芯片管脚(1) 单击菜单栏中的assignmentspin,打开芯片管脚编辑对话框。(2) 双击芯片的管脚,弹出“pin properties”对话框。给管脚添加相应的信号。3. 交通灯的设计目的和要求3.1设计目的(1)掌握数字系统的设计流程;(2)掌握利用原理图与vhdl混合设计数字系统的方法;(3)掌握交通灯的设计原理与设计实现。3.2设计要求1、能显示十字路口东西、南北两个方向的红、黄、绿灯的指示状态,用两组红、黄、绿三色灯作为两个方向的红、黄、绿灯。2 、能实现正常的倒计时功能,用两组数码管作为东西、南北方向的倒计时显示,显示时间为红灯45秒,绿灯40秒,黄灯5秒。3、能实现特殊状态的功能。按s1键后,能实现以下特殊状态:(1)显示倒计时的两组数码管闪烁。(2)计数器停止计数并保持在原来的状态。(3)东西、南北路口均显示红灯状态。(4)特殊状态解除后能继续计数。4、能实现总体清零功能。按下sb键后,系统实现总体清零,计数器由初状态计数,对应状态的指示灯亮。5、用vhdl语言设计上述功能的交通灯控制器,并用层次化的方法设计该电路。6、完成电路全部设计后,通过系统实验箱下载严重所设计课题的正确性。4 交通的设计分析4.1 设计思路本实验中主要应用了状态机以及减法器的设计原理。在状态连续变化的数字系统设计中,采用状态机的设计思想有利于提高设计效率,增加程序的可读性,减少错误的发生几率。其中,主要模块包括分频模块、控制模块、选择模块、数码显示模块。各个模块先用eda技术中的vhdl语言编程仿真,再生成各个模块的模拟元件,最后根据设计连接电路生成顶层原理图文件十字路口交通灯系统。4.2整体设计方案框架图4.3交通灯控制器状态控制表状态主干道支干道时间/s1绿灯亮红灯亮402黄灯亮红灯亮53红灯亮绿灯亮404红灯亮黄灯亮54.4设计流程图在程序流程图中,ga、ra、ya表示a支路的绿灯、红灯、黄灯,gb、rb、yb表示b支路的绿灯、红灯、黄灯,s表示特殊功能按键,t表示计时的时间。5 分频模块5.1 分频模块的功能 该模块的功能是将时间256分频,得到占空比为1:256的方波。以达到将交通灯的电亮时间预置到分频电路中。5.2 分频模块的源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity m isport ( clk : in std_logic; - - 时钟信号输入端;d: out std_logic; sel: buffer std_logic_vector(2 downto 0);- -sel端输出;end;architecture one of m issignal a : std_logic_vector(7 downto 0);- - 定义变量a;beginprocess(clk)beginif clk event and clk =1 then a=a+1;sel=sel+1;end if;- - 上升沿有效end process;dyyy=0000;end case; end process;end;6.3 控制模块功能仿真图说明:由上图得到sel的8个数,在这里分成了000,001和others三种结果,分别控制shi,ge和清零的三种状态。7. 选择模块7.1 选择模块的功能该模块为整个程序的核心,它实现东西和南北方向的三种交通灯颜色的交替点亮、时间的倒计时。7.2 选择模块的源程序library ieee; use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity xuanze isport(clk,clr:in std_logic;- -时钟和清零信号的输入;dx,nb:out std_logic_vector(2 downto 0);shi1,ge1:out std_logic_vector(3 downto 0) );end;architecture ad of xuanze issignal shi,ge:std_logic_vector(3 downto 0);- - 十位,个位的定义;type fsm_st is (s1,s0,s2,s3);signal state :fsm_st;beginprocess(clk,clr)beginif clr=1then state=s0;ge=0000;shidx=100;nb=001;if ge=0000 then if shi=0000 then state=s1;ge=0101;shi=0000;else shi=shi-1;ge=1001;end if;else gedx=100;nb=010;if ge=0000 then if shi=0000 then state=s2;ge=0000;shi=0100;else shi=shi-1;ge=0000;end if;else gedx=001;nb=100;if ge=0000 then if shi=0000 then state=s3;ge=0101;shi=0000;else shi=shi-1;ge=1001;end if;else gedx=010;nb=100;if ge=0000 then if shi=0000 then state=s0;ge=0000;shi=0100;else shi=shi-1;ge=0101;end if;else ge=ge-1;end if;end case;end if;shi1=shi;ge1yyyyyyyyyyyyyyyy=01000000;end case; end process; end;8.3 led显示模块的功能仿真图说明:当由上面的程序确定q值时,显示模块通过判断q值,把对应的值赋值给y,由数码管输出可以看到的数字。9. 顶层文件原理图设计9.1顶层文件原理图9.2 顶层原理图的功能仿真波形图图1:说明:图1显示的是nb=010,dx=100时,sel控制的是十位数为4,个位数为0;由图可以看到sel=001时,y=01100110;led数码管显示的是40的数字,图2:说明:图2显示的是nb=001,dx=100时,sel控制的是个位为5,十位数为0;由图可以看到sel=000时,y=01101101;led数码管显示的是05的数字。 10.交通灯的测试结果 经过测试得到如下结论: 当东西方向亮红灯时,南北方向同时亮灯;南北方向黄绿灯交替点亮,红灯45秒倒计时,黄灯5秒倒计时之后,绿灯40秒倒计时;当两个方向的数码管同时为零时,南北方向亮红灯,东西方向同时亮灯;东西方向黄绿灯交替点亮,红灯45秒倒计时,黄灯5秒倒计时之后,绿灯40秒倒计时;当两个方向的数码管同时为零时;重复上述过程,当clk信号不断输出时,结果无限循环下去。说明本程序能完成交通灯的基本工作。11.课程设计总结一周的课程设计结束了,通过这次设计,更加熟悉quartus ii6.0的使用方法和vhdl硬件描述语言的特点,使我的理论知识掌握得更扎实,动手能力明显提高。我们小组一共9个人,我们采取分工去完成任务,两个人一小组,我主要负责显示模块这方面。我们通过分工协作,最后一起共同完成了这次课程设计任务,这次课程设计促进了我们小组分工和协作的能力,组与组之间相互讨论,形成最终的结果。在设计过程中,我们有遇到过困难,我们课间、晚上的时间通过上网搜索,查找资料解决困难,有时真无法解决的就请教老师。在这次课程设计过程中,我们学会了利用许多方法解决所遇到的困难。这次设计,让我感受最深的是:在设计的阶段遇到的问题,我们一定要细心,有时一个程序就因为标点符号的不对,导致程序编译不成功,其次,要具备检查、排除故障的能力。这次课程设计,我深刻认识到了“理论联系实际”的这句话的重要性与真实性。平常的我们也在机房进行练习,但那时的我就纯粹为了敲一个程序,照书抄
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 植树护林建设美丽中国课件
- 农田水利工程绿化施工质量预防措施
- 交通运输行业隐患排查年度计划
- 电力工程建设进度与安全措施
- 五年级数学(小数乘法)计算题专项练习及答案汇编
- 环保项目机密信息保护措施
- 危险化学品进出口安全管理职责
- 化工厂安全隐患排查报告范文
- 小学篮球赛事观摩活动计划
- 建筑行业劳动力规划与设备配置计划
- 第10课和谐校园共同维护(课件)-【中职专用】高一思想政治《心理健康与职业生涯》(高教版2023·基础模块)
- 2024年04月江苏省农业农村厅直属事业单位2024年公开招考工作人员笔试历年高频考题摘选后附答案详解
- 伤口造口进修汇报护理
- 档案整理及数字化服务售后服务方案
- 2024年一年级《体育与健康》全册教案
- 臂丛神经损伤康复护理
- 糜烂性胃炎的护理查房
- 【高中语文】《红楼梦》+日常生活描写所表现的文化内涵+统编版高中语文必修下册
- 摄影测量与遥感课件
- 银行安全知识培训课件
- 小学语文作文:五感法描写课件
评论
0/150
提交评论