eda交通灯设计和实现(共15页).doc
《eda交通灯设计和实现(共15页).doc》由会员分享,可在线阅读,更多相关《eda交通灯设计和实现(共15页).doc(15页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上 EDA交通灯课程设计 班级:电气技术1031交通灯控制器 1.实验目的 学习交通灯控制器的设计,学习简单状态机的设计和硬件测试。 2.实验内容 本实验的内容是设计一个建议的交通灯控制,要求能实现三种灯的控制并通过数码管显示倒计时的时间。整个设计在MagicSOPC试验箱上实现。 3.实验原理 本实验设计的交通灯控制器要求实现对A、B两个方向的红、绿、黄三种灯的控制,并能实现时间显示的倒计时。因此每个方向的灯可以用一个状态机实现,状态的跳转顺序为灯-绿灯-黄灯-红灯(另一个的状态应为绿-黄-红绿),同时设计一个计时器,来记录每种灯的倒计时时间。最后将交通灯的状态信息输
2、出,至数码管显示模块和交通灯显示模块。注意一个方向的红灯时间应和另一个方向的绿黄灯时间总和相等。 4.实验步骤 1)启动QuartusII建立一个空白工程,然后命名为traffic-top.qpf。 2)新建Verilog HDL源程序文件traffic.v、traffic-test、traffic-top.v,输入程序代码并保存(完整的Verilog HDL程序参考程序清单3.17),对各个HDL文件进行综合编译,若在编译过程中发现错误,则找出并更改错误,直至编译成功为止。 3)选择目标器件并对相应的引脚进行锁定,在这里所选择的器件为Altera公司CycloneII系列的EP2C35F67
3、2C8芯片,引脚锁定方法如表3.16所列。将未使用的引脚设置为三态输入(一定要设置,否则可能会损坏芯片)。设置方法见3.1节。Lampa,lampb 表3.16 引脚锁定方法 4)设置traffic-top.v为顶层文件,对该工程文件进行全程编译处理,若在编译处理过程中发现错误,则找出更正错误,直至编译成功为止。 5)把程序下载到FPGA器件中。按一下复位键SYS-RST,然后观察交通灯及数码管的显示状态。 5.实验参考程序 程序清单3.17 交通灯程序 1) 交通灯控制器,文件traffic.v 本模块实现交通灯控制器的逻辑功能。 /* /* 交通灯控制器 /* module traffic
4、(clock,rst_n,clken,lampa,lampb,acount,bcount); input clock; /系统时钟50MHz input rst_n; /同步复位信号,低电平有效 input clken; /时钟使能信号:1Hz。 output 2:0 lampa; /控制A方向三盏灯的亮灭;其中lampa2:0分 /别控制A方向的绿灯、黄灯、红灯(低电平灯亮) output 2:0 lampb; /控制B方向三盏灯的亮灭;其中lampb2:0分 /别控制B方向的绿灯、黄灯、红灯(低电平灯亮) output 7:0 acount; /用于A方向灯的时间显示,8位BCD码输出 o
5、utput 7:0 bcount; /用于B方向灯的时间显示,8位BCD码输出 reg2:0 lampa,lampb; reg7:0 numa,numb; /时间计数器 reg tempa,tempb; /防重进入标志 reg2:0 StateA,StateB; /A、B方向灯控制状态机的状态 /设置各种灯的计数器的预置数 parameter ared =8h30, /30秒 ayellow =8h5, /5秒 agreen =8h15, /15秒 bred =8h20, /20秒 byellow =8h5, /5秒 bgreen =8h25; /25秒 assign acount=numa;
6、 assign bcount=numb; /控制A方向的三种灯 always (posedge clock or negedge rst_n) begin if(!rst_n) begin StateA = 3h0; lampa = 3b011; tempa = 1b0; end else if(clken) begin if(!tempa) begin tempa = 1b1; /防重进入标志 case(StateA) /控制亮灯的顺序 0: begin numa = agreen; lampa = 3b011; StateA = 1; end 1: begin numa = ayellow
7、; lampa = 3b101; StateA = 2; end 2: begin numa = ared; lampa = 3b110; StateA = 0; end default: lampa 1) if(numa3:0=0) begin numa3:0=4h9; numa7:4=numa7:4-4h1; end else numa3:0=numa3:0-4h1; 专心-专注-专业if (numa=2) tempa=1b0; end end end /控制A方向的三种灯 always (posedge clock or negedge rst_n) begin if(!rst_n) b
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- eda 交通灯 设计 实现 15
限制150内