编号:1104020112
课程设计
(可编程逻辑器件与应用)
题目:汽车尾灯控制电路设计与实现
院 (系) 计算机与信息工程学院
专 业 信息工程
班 级 信息111
学生姓名 李会希
20##年6月
摘要
本次设计旨在完成汽车尾灯的控制电路,汽车尾灯控制电路使得汽车的行驶更加有秩序,更加方便操作。分析汽车尾灯控制电路设计原理, 采用Verilog HDL硬件描述语言实现汽车尾灯控制电路的设计, 具有可编程性、线路简单、可靠性高等特点,采用Quartus II 开发平台进行逻辑综合和时序仿真,并下载到PEC12Q240C8芯片上进行验证,获得了预期的结果。实验结果表明,该系统没有传统设计中的接线问题,硬件功能可以像软件一样通过编程来修改,可靠性高、体积小,极大地提高了电子系统设计的灵活性和通用性。
关键词:汽车尾灯控制电路; Verilog HDL ;Quartus II ;PEC12Q240C8芯片
目录
1. 1 绪论... 1
2. 2 设计方案分析... 1
3. 2.1 汽车尾灯控制电路的基本功能... 1
4. 2.2汽车尾灯控制电路设计原理... 1
5. 2.3汽车尾灯控制电路FPGA 的实现... 2
6. 3 汽车尾灯控制方案实施... 2
a) 3.1利用 Verilog HDL语言实现主控模块... 2
b) 3.3 实验箱连线... 5
7. 4 系统测试分析... 6
a) 4.1 功能仿真测试分析... 6
b) 4.2 电路下载测试分析... 6
8. 5 结论... 6
9.
参考文献... 7
随着集成电路工艺EDA技术的高速发展, 电子系统的设计技术和工具发生了深刻的变化,以现场可编程门阵列(FPGA)为代表的ASIC器件得到了迅速普及和发展,器件集成度和速度都在高速增长。FPGA既具有门阵列的高逻辑密度和高可靠性, 又具有可编程特性。利用它进行产品开发,不仅微功耗、成本低、周期短、可靠性高, 而且可以实现静态可重复编程、动态在系统重构、硬件功能可以像软件一样通过编程来修改,因此极大地提高了电子系统设计的灵活性和通用性。
在汽车运行过程中,驾车司机通过尾灯通知后继车辆本人的运行意图,对于维持正常的交通秩序,保障安全具有极其重要的意义。汽车尾灯控制电路是随汽车智能化技术的发展而迅速发展起来的,汽车尾灯一般是用基于微处理的硬件电路构成, 正因为硬件电路的局限性,不能随意的更改电路的功能和性能,且可靠性得不到保证,因此对汽车尾灯控制系统的发展带来一定的局限性,难以满足现代汽车的智能化发展。
本设计使用复杂可编程逻辑器件FPGA,用Verilog HDL语言对汽车尾灯控制电路进行设计,并用Quartus II 软件进行FPGA芯片的编译和下载,生成的是集成化的数字电路,没有传统设计中的接线问题,硬件功能的改变可以通过编程来修改,所以故障率低、可靠性高,而且体积小,体现了EDA 技术在数字电路设计中的优越性。
用6个发光管模拟6个汽车尾灯(左右各3个),用4个开关作为汽车控制信号,分别为:左拐、右拐、故障和刹车。
车匀速行驶时,6个汽车尾灯全灭;
右拐时,车右边3个尾灯从左至右顺序亮灭;
左拐时,车左边3个尾灯从右至左顺序亮灭;
故障时,车6个尾灯一起明灭闪烁;
刹车时,6个尾灯全亮。
汽车尾部两侧各有三个指示灯。按一般规律,汽车正常行驶时尾部的指示灯全灭; 右转弯时, 右侧的三个指示灯按右循环的顺序点亮; 左转弯时,左侧的三个指示灯按左循环的顺序点亮; 刹车时,所有指示灯随clk脉冲同步闪烁。表1中列出汽车尾灯点亮和汽车运行状态之间的关系, 其中clk为控制灯闪烁的脉冲信号,left1~left3为左侧指示灯,right1~right3为右侧指示灯,L1~L4为状态控制开关。
本控制电路采用Verilog HDL语言设计, 运用自顶而下的设计思想, 按功能逐层分割实现层次化设计根据汽车尾灯控制电路设计原理, 将整个控制电路分为主控模块、右侧灯控制模块和左侧灯控制模块, 然后利用Verilog HDL语言编程描述各模块的接口及电路功能, 最后利用原理图方式实现顶层电路设计。
表2-1 汽车尾灯点亮与汽车运行状态之间的关系
module carled(clk,cro,cout,VGA);
input clk;
input [3:0] cro; //开关控制
output reg[5:0] cout; //6个输出
output [3:0] VGA;
assign VGA = 4'b0001;
reg[3:0] i=4'b0000; //初始时灯为全亮
always @(posedge clk)
begin
if(i!=cro) //判断汽车不为匀速行驶时
begin
if(cro==4'b0000)
cout<=6'b111111;
else if(cro==4'b1000)
cout<=6'b110111;
else if(cro==4'b0100)
cout<=6'b111011;
else if(cro==4'b0010)
cout<=6'b000000;
else if(cro==4'b0001)
cout<=6'b000000;
end
else if(i==cro) //判断汽车为匀速行驶时
begin
if(cro==4'b0000) //匀速行驶,灯全灭
cout<=6'b111111;
else if(cro==4'b1000) //左拐
begin
if(cout==6'b011111)
cout<=6'b110111;
else cout<=(cout<<1)|6'b000001;
end
else if(cro==4'b0100) //右拐
begin
if(cout==6'b111110)
cout<=6'b111011;
else cout<=(cout>>1)|6'b100000;
end
else if(cro==4'b0010) //故障
cout<=~cout;
else if(cro==4'b0001) //刹车
cout<=6'b000000;
else cout<=6'b111111;
end
i=cro;
end
endmodule
3.2 功能仿真及下载验证
各模块Verilog HDL程序经过编译优化后, 选择合适的目标芯片进行综合、管脚配置。本电路选用ALTERA公司的可编程逻辑芯片PEC12Q240C8, 在QuartusⅡ软件上进行编程仿真并采用第三方验证工具EDI-VI试验箱验证所有预期功能, 根据现象对程序进行修改,以至准确实现所有功能。用EDI-VI试验箱验证时管脚定义及配置管脚图如表2-2、图2-1所示。
表2-2 管脚定义
图2-1 配置管脚
如图3-1为硬件实验箱验证的连线图。
图3-1 硬件实验箱仿真连线图
如图4-1为用QuartusⅡ软件仿真得到的结果。
图4-1 功能仿真的波形图
该汽车尾灯控制电路在Quartus II中进行仿真, 仿真波形如图4-1所示。其中clk为时钟源提供连续时钟信号;cro寄存器是控制左、右转弯、匀速、刹车以及故障的模拟开关,负责接收系统外的输入信号,cout寄存器显示的是左侧尾灯left1~left3及右侧尾灯right1~right3的相应状态。通过对仿真图进行分析,可以看出,本设计的输入输出逻辑关系已符合预期要求:车匀速行驶时,6个汽车尾灯全灭;右拐时,车右边3个尾灯从左至右顺序亮灭;左拐时,车左边3个尾灯从右至左顺序亮灭;故障时,车6个尾灯一起明灭闪烁;刹车时6个尾灯全亮。这说明软件部分设计基本完成。
将所设计的程序下载到Altera公司的FPGA器件PEC12Q240C8芯片中(注意:往实验箱烧程序之前要将所有管脚状态设置为三态As input tri-stated),并进行在线测试。根据各输入端的逻辑功能,分别赋予相应的值。通过观察输出指示灯的变化,设计电路符合要求。
本设计基于完成汽车尾灯控制电路,在确立总体预期实现功能的前提下,分层次进行描述, 满足设计要求。在Quartus II环境下,用语言实现该电路,根据Verilog HDL的语法规则,对系统的逻辑行为进行描述, 然后通过综合工具进行电路结构的综合、编译、优化,利用波形仿真工具,可在短时间内设计出高效、稳定、符合设计要求的电路。这种利用FPGA设计的汽车尾灯电路,具有较强的灵活性,具备系统可编程能力,便于扩展,而且使用一块核心芯片就可以完成多项功能。另外,使用Verilog HDL进行编程,易学易用,便于调试。随着电子设计自动化技术的发展和普及, 利用EDA工具, 采用可编程逻辑器件缩短了电子产品的设计周期, 为设计者提供了方便。
[1] 王金明. 数字系统设计与Verilog HDL(第四版) [M]. 北京:电子工业出版社. 2012.
[2] 李皓瑜. 汽车尾灯控制电路设计[J]. 软件导刊, 2013,12(8):33-34.
[3] 刘宗佳. 汽车尾灯控制电路设计[J]. 科技资讯, 2013, 34(8):100.
20xx级模拟电子技术课程设计数字电子技术课程设计报告书课题名称姓名汽车尾灯模拟控制电路设计陈景玉学号20xx6434院系部专业指…
前言汽车现今已是非常普遍的交通工具作已大量进入人们的生活随着电子技术的发展对于汽车的控制电路也已从过去的全人工开关控制发展到了智能…
前言汽车现今已是非常普遍的交通工具作已大量进入人们的生活随着电子技术的发展对于汽车的控制电路也已从过去的全人工开关控制发展到了智能…
数字电路课程设计课题名称汽车尾灯控制电路设计专业班级姓名学号日期20xx0621汽车尾灯控制电路设计前言汽车现今已是非常普遍的交通…
一设计要求假设汽车尾部左右两侧各有3个指示灯用发光二极管模拟1汽车正常运行时指示灯全灭2右转弯时右侧3个指示灯按右循环顺序点亮3左…
武汉工程大学计算机科学与工程学院综合设计报告设计名称数字系统综合设计设计题目汽车尾灯逻辑控制电路设计学生学号专业班级学生姓名学生成…
20xx级模拟电子技术课程设计数字电子技术课程设计报告书课题名称姓名汽车尾灯模拟控制电路设计陈景玉学号20xx6434院系部专业指…
一设计要求假设汽车尾部左右两侧各有3个指示灯用发光二极管模拟1汽车正常运行时指示灯全灭2右转弯时右侧3个指示灯按右循环顺序点亮3左…
课程设计报告数字电子技术题目汽车尾灯控制器的设计院系机电工程学院专业电子科学与技术学号20xx0661104学生姓名刘乾坤指导教师…
课程设计报告课程名称电子技术课程设计设计题目汽车尾灯控制器专业电气工程及其自动化班级20xx学号20xx0240315学生姓名李博…
数字电子实习报告题目汽车尾灯的设计专业测控技术与仪器班级学号10100姓名00指导老师张海一日期20xx62520xx628目录1…