EDA汽车尾灯控制器设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程名称:EDA课程设计
设计题目:汽车尾灯控制器的设计院系:电气工程系
专业:电子信息工程
年级:2007级
姓名:梁晓
指导教师:许金福
学号:20077823
西南交通大学峨眉校区
2010 年10 月日
课程设计任务书
专业电子信息工程姓名梁晓学号20077823
开题日期:2010 年10 月日完成日期:2010年11月日题目汽车尾灯控制器设计
一、设计的目的
本次设计的目的就是通过实践深入理解状态机原理,了解EDA技术并掌握VHDL硬件描述语言的设计方法和思想。通过学习的VHDL语言结合电子电路的设计知识理论联系实际,掌握所学的课程知识和基本单元电路的综合设计应用。通过对实用汽车尾灯控制器的设计,巩固和综合运用所学知识,提高分析、解决EDA技术实际问题的独立工作能力。
二、设计的内容及要求
1、设计内容
设计一个汽车尾灯控制器,利用EDA软件(MAX+plusII)进行编译及仿真,设计输入可采用VHDL硬件描述语言输入法和原理图输入法,通过仿真查看设计的可行性,因条件有限,只能进行简单的仿真实验。
2、设计要求
(1)汽车尾部左右两侧各有多盏指示灯。
(2)汽车正常行驶时指示灯都不亮。
(3)汽车右转弯时,右侧的一盏指示灯亮。
(4)汽车左转弯时,左侧的一盏指示灯亮。
(5)汽车刹车时,左右两侧的一盏指示灯同时亮。
(6)汽车在夜间行驶时,左右两侧有指示灯同时一直亮,供照明使用。
三、指导教师评语
四、成绩
指导教师(签章)
年月日
汽车尾灯控制器设计
1.引言
随着集成电路和计算机技术的飞速发展,EDA技术应运而生,它是一种高级、快速、有效的电子设计自动化技术。EDA将大量的电路功能集成到一个芯片中,并且可以由用户自行设计逻辑功能,提高了系统的集成度和可靠性。运用EDA技术可以方便、快捷设计电路系统。
本文基于EDA系统,在MAX+plusII软件平台上,完成了汽车尾灯电路的设计。采用VHDL硬件描述语言描述汽车尾灯电路,完成对电路的功能仿真。在设计过程中,重点探讨了汽车尾灯电路的设计思路和功能模块划分,通过分析仿真波形表明设计的汽车尾灯电路完成了预期的功能。
2.汽车尾灯控制器的设计过程
2.1设计内容
设计一个汽车尾灯控制器,利用EDA软件(MAX+plusII)进行编译及仿真,设计输入可采用VHDL硬件描述语言输入法和原理图输入法,通过仿真查看设计的可行性,因条件有限,只能进行简单的仿真实验。
2.2设计要求
(1)汽车尾部左右两侧各有多盏指示灯。
(2)汽车正常行驶时指示灯都不亮。
(3)汽车右转弯时,右侧的一盏指示灯亮。
(4)汽车左转弯时,左侧的一盏指示灯亮。
(5)汽车刹车时,左右两侧的一盏指示灯同时亮。
(6)汽车在夜间行驶时,左右两侧有指示灯同时一直亮,供照明使用
2.3汽车尾灯控制器的工作原理
汽车尾灯控制器就是一个状态机的实例。当汽车正常行驶时所有指示灯都不亮;当汽车向右转弯时,汽车右侧的指示灯ldright亮;当汽车向左侧转弯时,汽车左侧的指示灯ldleft 亮;当汽车刹车时,汽车右侧的指示灯ldbrake1和汽车左侧的指示灯ldbrake2同时亮;当汽车在夜间行驶时,汽车右侧的指示灯ldnight1和汽车左侧的指示灯ldnight2同时一直亮;当于大雾天行驶时右侧指示灯ldfoggy1和左侧指示灯ldfoggy2同时亮。
通过设置系统的输入信号:系统时钟信号clk,汽车左转弯控制信号left,汽车右转弯控制信号right,刹车信号brake,夜间行驶信号night,雾灯信号foggy和系统的输出信号:汽
车左侧4盏指示灯ldleft,dbrake1,dnight1,dfoggy1和汽车右侧4盏指示灯ldright,ldbrake2,ldnight2,ldfoggy2实现以上功能。
系统的整体组装设计原理如图所示:
系统设计整体框图
2.4方案选择与论证
根据系统设计要求,系统设计采用自顶向下的设计方法,顶层设计采用原理图设计方案,它是由时钟分频模块、汽车尾灯主控模块、左边灯控制模块、右边灯控制模块四部分组成。
2.5系统设计详述
系统的输入信号包括:系统时钟信号CLK,汽车左转弯控制信号LEFT,汽车右转弯控制信号RIGHT,刹车信号BRAKE,夜间行驶信号NIGHT。
系统的输入信号包括:汽车左侧4 盏指示灯LLED1,LLED2,LLED3,LLED4和汽车右侧4 盏指示灯RLED1,RLED2,RLED3,RLED4。
当汽车正常行驶时所有的指示灯都不亮,当汽车向左转时,汽车左边的指示灯LLED1亮,当汽车向右转时,汽车右边的指示灯RLED1亮,当汽车刹车时,左右的LLED2、RLED2亮,当汽车夜间行驶时,汽车左右的LLED3、LLED4、RLED3 、RLED4一直亮。
2.6各组成模块原理及程序
2.6.1汽车尾灯主控模块
数据入口:
RIGHT:右转信号;
LEFT:左转信号;
BRAKE:刹车信号;
NIGHT:夜间行驶信号;
数据出口:
LP:左侧灯控制信号;
RP:右侧灯控制信号;
LR:错误控制信号;
BRAKE_LED:刹车控制信号;
NIGHT_LED:夜间行驶控制信号;
VHDL程序(CTRL.VHD)
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY CTRL IS
PORT(LEFT,RIGHT,BRAKE,NIGHT: IN STD_LOGIC;
LP,RP,LR,BRAKE_LED,NIGHT_LED: OUT STD_LOGIC);
END ENTITY CTRL;
ARCHITECTURE ART OF CTRL IS
BEGIN
NIGHT_LED<=NIGHT;
BRAKE_LED<=BRAKE;
PROCESS(LEFT,RIGHT)
V ARIABLE TEMP:STD_LOGIC_VECTOR(1 DOWNTO 0);
BEGIN
TEMP:=LEFT&RIGHT;
CASE TEMP IS
WHEN "00"=>LP<='0';RP<='0';LR<='0'; --当汽车直行时,左右灯都不亮
WHEN "01"=>LP<='0';RP<='1';LR<='0';; --当汽车右拐时,右拐指示灯亮
WHEN "10"=>LP<='1';RP<='0';LR<='0'; --当汽车左拐时,左指示灯亮
WHEN OTHERS=>LP<='0';RP<='0';LR<='1'; --当汽车刹车时,左右灯都亮
END CASE;
END PROCESS;
END ARCHITECTURE ART;
功能:
该段程序用于对汽车尾灯进行整体控制,当输入为左转信号时,输出左侧灯控制信号;