logo资料库

EDA的汽车尾灯控制系统.doc

第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
资料共6页,全文预览结束
一、实验目的
1)了解汽车尾灯的工作原理
2)进一步熟悉Verilog语言以及QuartusII开发环境
3)掌握由硬件语言控制LED灯的亮灭
二、实验内容
1)汽车尾部左右两侧各有3只尾灯,用作汽车行驶状态的方向指示标志。
2) 当汽车正常向前行驶时,6只尾灯全部熄灭。
3) 当汽车要向左或向右转弯时,相应侧的3只尾灯依次由左至右闪亮。每个灯亮1s,每个周期为3s,另一
4) 紧急刹车时,6只尾灯全部闪亮,闪动频率为1Hz。
三、实验学时:6学时
四、实验步骤
1)根据实验要求作预习报告。
2)根据实验需求,进行程序的设计。
3)根据以前设计的经验,反复调试程序。
4)调试通过,下载到FPGA开发板上进行实践调试。
5)完成整个过程,写实验报告。
五、实验要求:
实验报告应包含实验目的、实验原理,分析与设计思路,实验程序,对应变量的管脚配置表,实验结果,实验总结
1)程序实现模块化设计,写出设计思路,认真标注代码注释;
2)达到正确地运行结果;
3)实验中出现的问题进行详细总结。
六、实验结果:
1)实验程序:
2)实验pin脚图:
3)实验成果:
①:刹车的情况
②:右转弯的情况
数字系统设计实验报告 实验五 汽车尾灯控制系统设计 09 自动化 0937030 张丹 0937017 陈永财 0937026 张鹏程 实验地点: 理工楼703 实验时间:2011年05月10日
一、实验目的 1)了解汽车尾灯的工作原理 2)进一步熟悉 Verilog 语言以及 QuartusII 开发环境 3)掌握由硬件语言控制 LED 灯的亮灭 二、实验内容 1)汽车尾部左右两侧各有 3 只尾灯,用作汽车行驶状态的方向指示标志。 2) 当汽车正常向前行驶时,6 只尾灯全部熄灭。 3) 当汽车要向左或向右转弯时,相应侧的 3 只尾灯依次由左至右闪亮。每个 灯亮 1s,每个周期为 3s,另一侧的 3 只灯不亮。 4) 紧急刹车时,6 只尾灯全部闪亮,闪动频率为 1Hz。 三、实验学时:6 学时 四、实验步骤 1) 根据实验要求作预习报告。 2) 根据实验需求,进行程序的设计。 3) 根据以前设计的经验,反复调试程序。 4) 调试通过,下载到 FPGA 开发板上进行实践调试。 5) 完成整个过程,写实验报告。 五、实验要求: 实验报告应包含实验目的、实验原理,分析与设计思路,实验程序,对应变 量的管脚配置表,实验结果,实验总结。其中具体要求为: 1)程序实现模块化设计,写出设计思路,认真标注代码注释; 2)达到正确地运行结果; 3)实验中出现的问题进行详细总结。 六、实验结果: 1)实验程序: module ab(clk,m,n,l,la,lb); input clk;
input m,n,l; output [0:2] la,lb; reg [0:2] la,lb; reg conj,disj; integer coni,disi,a; /*------------------分频模块------------------*/ //1Hz 的分频信号 always @(posedge clk) begin if (coni>1999999) begin conj<=~conj; coni<=0; end else coni<=coni+1; end //控制显示的分频信号 always @(posedge clk) begin if(disi>9999) begin disj<=~disj; disi<=0; end else disi<=disi+1; end /*----------------------计时模块-------------------------------*/ always@(posedge conj) begin if(a>=3) a<=1; else a<=a+1; end /*-------------------------汽车尾灯显示控制------------------------------------*/ always@(posedge clk) begin if(l) begin if(a==1)
begin la<=3'b111;lb<=3'b111;end else if(a==2) begin la<=3'b000;lb<=3'b000;end else end if(m) begin if(a==1) begin la<=3'b001;lb<=3'b000;end else if(a==2) begin la<=3'b010;lb<=3'b000;end else if(a==3) begin la<=3'b100;lb<=3'b000;end end else if(n) begin if(a==1) begin la<=3'b000;lb<=3'b100;end else if(a==2) begin la<=3'b000;lb<=3'b010;end else if(a==3) begin la<=3'b000;lb<=3'b001;end end end endmodule
2)实验 pin 脚图: 3)实验成果: ①:刹车的情况
②:右转弯的情况 六、实验总结: 这次实验在上次交通灯控制实验的基础上有了改动,让我们更加熟悉了分频模块的应 用以及 verilog 程序的编写。
分享到:
收藏