EDA综合实验-交通灯_第1页
EDA综合实验-交通灯_第2页
EDA综合实验-交通灯_第3页
EDA综合实验-交通灯_第4页
EDA综合实验-交通灯_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学生实验报告系别电子信息学院课程名称《EDA综合实验》班级10通信A班实验名称交通灯控制器的设计姓名张炘实验时间2012年11月27日学号2010010101073指导教师王红航报告内容一、实验目的和任务本次实验的目的和任务是:1熟悉QUARTUES软件的使用及操作页面。2.设计一个交通灯控制器。3FPGA芯片的选择和对引脚的软件选择。4对实验箱的简单操作。二、实验原理介绍本次交通灯设计功能较简单,1.亮红绿黄灯。2.数码管倒计时。三、设计代码(或原理图)、仿真波形及分析moduletraffic_1(clk,rst,a_light,a_su);inputclk,rst;outputreg[2:0]a_light;outputreg[5:0]a_su;reg[2:0]a_red,a_yellow,a_green;reg[5:0]su_red,su_yellow,su_green;reg[3:0]a_num;regtemp;always@(rst)begin if(!rst) begin a_red<=3'b001; a_yellow<=3'b010; a_green<=3'b100; su_red<=6'd32; su_yellow<=6'd5; su_green<=6'd27; endendalways@(posedgeclk)begin if(rst)//gaodianpinyouyong begin if(!temp) begin temp<=1'b1; case(a_num) 0:begina_light<=a_red; a_su<=su_red; a_num<=4'd1; end 1:begina_light<=a_green; a_su<=su_green; a_num<=4'd2; end 2:begina_light<=a_yellow; a_su<=su_yellow; a_num<=4'd0; end endcase end else begin a_su<=a_su-1'b1; if(a_su==6'd2)//chichu6'd2shiyingweijishushi0kaishi temp<=1'd0; end end else begin a_light<=a_red; a_su<=su_red; temp<=1'b0; a_num<=4'd0; endendendmodule以上是一条道路A的红绿灯的显示,用case语句实现红、黄、绿灯的循环变换,以temp变量判断是否变换等色,以下是仿真时的时序图:moduleBCD(timer,timer_1);input[5:0]timer;outputreg[7:0]timer_1;always@(timer)beginif(timer>59)timer_1<=timer+8'b00100100;//加36elseif(timer>49)timer_1<=timer+8'b00011110;//加30elseif(timer>39)timer_1<=timer+8'b00011000;//加24elseif(timer>29)timer_1<=timer+8'b00010010;//加18elseif(timer>19)timer_1<=timer+8'b00001100;//加12elseif(timer>9)timer_1<=timer+8'b00000110;//加6elsetimer_1<=timer;endendmodule我们数码管显示的是BCD码对应的数字,所以我们输出前要把二进制变为BCD码形式,其仿真时序图如下:moduletraffic_3(clk,rst,b_light,b_su);inputclk,rst;outputreg[2:0]b_light;outputreg[5:0]b_su;reg[2:0]b_red,b_yellow,b_green;reg[5:0]su_red,su_yellow,su_green;reg[3:0]b_num;regtemp;always@(rst)begin if(!rst) begin b_red<=3'b001; b_yellow<=3'b010; b_green<=3'b100; su_red<=6'd32; su_yellow<=6'd5; su_green<=6'd27; endendalways@(posedgeclk)begin if(rst)//gaodianpinyouyong begin if(!temp) begin temp<=1'b1; case(b_num) 0:beginb_light<=b_green; b_su<=su_green; b_num<=4'd1; end 1:beginb_light<=b_red; b_su<=su_red; b_num<=4'd2; end 2:beginb_light<=b_yellow; b_su<=su_yellow; b_num<=4'd0; end endcase end else begin b_su<=b_su-1'b1; if(b_su==6'd2)//chichu6'd2shiyingweijishushi0kaishi temp<=1'd0; end end else begin b_light<=b_red; b_su<=su_red; temp<=1'b0; b_num<=4'd0; endendendmodule以上是另外一条道路B的红绿灯变换程序,其亮灯时序与A的亮灯相反,同时也是需要BCD转换与上面BCD转换一样;以下是整个交通灯变换的原理图:四、实验结论与心得本次实验充分了解了简单交通灯的基本设计概念,对软件、语言的使用更加熟悉,但对状态机设计还有待学习。五、实

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论