《汽车尾灯控制器的设计(EDA大作业).doc》由会员分享,可在线阅读,更多相关《汽车尾灯控制器的设计(EDA大作业).doc(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流汽车尾灯控制器的设计(EDA大作业).精品文档.EDA技术课程大作业设计题目: 汽车尾灯控制器的设计 学生姓名: 学 号: 专业班级: 2012年6月 2日汽车尾灯控制器的设计1. 设计背景和设计方案1.1 设计背景随着社会的发展,科学技术也在不断的进步,状态机的应用越来越广泛。现代交通越来越拥挤,安全问题日益突出,在这种情况下汽车尾灯控制器的设计成为解决交通安全问题一种好的途径。伴随着集成电路和计算机技术的飞速发展,EDA技术应运而生,它是一种高级、快速、有效的电子设计自动化技术。EDA将大量的电路功能集成到一个芯片中,并且可以由用户自行设
2、计逻辑功能,提高了系统的集成度和可靠性。运用EDA技术可以方便、快捷设计电路系统。本次设计就是运用EDA技术,根据状态机原理实现了汽车尾灯常用控制。1.2 设计方案1.2.1 系统设计要求根据现代交通规则,汽车尾灯控制器应满足以下基本要求:(1). 汽车正常使用是指示灯不亮(2). 汽车右转时,右侧的一盏灯亮(3). 汽车左转时,左侧的一盏灯亮(4). 汽车刹车时,左右两侧的指示灯同时亮(5). 汽车夜间行驶时,左右两侧的指示灯同时一直亮,供照明使用1.2.2 系统组成及原理图汽车尾灯控制器就是一个状态机的实例。当汽车正常行驶时所有指示灯都不亮;当汽车向右转弯时,汽车右侧的指示灯RD1亮;当汽
3、车向左侧转弯时,汽车左侧的指示灯LD1亮;当汽车刹车时,汽车右侧的指示灯RD2和汽车左侧的指示灯LD2同时亮;当汽车在夜间行驶时,汽车右侧的指示灯RD3和汽车左侧的指示灯LD3同时一直亮。通过设置系统的输入信号:系统时钟信号CLK,汽车左转弯控制信号LEFT,汽车右转弯控制信号RIGHT,刹车信号BRAKE,夜间行驶信号NIGHT和系统的输出信号:汽车左侧3盏指示灯LD1、LD2、LD3和汽车右侧3盏指RD1、RD2、RD3实现以上功能。系统的整体组装设计原理如图1所示。图1 系统的整体组装设计原理2.方案实施 汽车尾灯控制器有4个模块组成,分别为:时钟分频模块、汽车尾灯主控模块,左边灯控制模
4、块和右边灯控制模块,以下介绍各模块的详细设计。2.1时钟分频模块整个时钟分频模块的工作框图如图2所示。图2时钟分频模块工作框图时钟分频模块由VHDL程序来实现,下面是其中的一段VHDL代码:ARCHITECTURE ART OF SZ ISSIGNAL COUNT:STD_LOGIC_VECTOR(7 DOWNTO 0);BEGINPROCESS(CLK) BEGIN IF CLKEVENT AND CLK = 1THEN COUNT = COUNT + 1; END IF; END PROCESS; CP= COUNT(3);END ART;2.2 汽车尾灯主控模块汽车尾灯主控模块工作框图如
5、图3所示。图3 主控模块工作框图汽车尾灯主控模块由VHDL程序来实现,下面是其中的一段VHDL代码:ARCHITECTURE ART OF CTRL ISBEGIN NIGHT_LED=NIGHT; BRAKE_LEDLP=0;RP=0;LRLP=0;RP=1;LRLP=1;RP=0;LRLP=0;RP=0;LR=1; END CASE; END PROCESS;END ART;2.3左边灯控制模块 左边灯控制模块的工作框图如图4所示。图4左边灯控制模块的工作框图左边灯控制模块由VHDL程序来实现,下面是其中的一段VHDL代码:ARCHITECTURE ART OF LC ISBEGIN LE
6、DB=BRAKE; LEDN=NIGHT;PROCESS(CLK,LP,LR)BEGIN IF CLKEVENT AND CLK = 1 THEN IF(LR =0)THEN IF(LP = 0)THEN LEDL=0; ELSE LEDL=1; END IF; ELSE LEDL =0; END IF; END IF;END PROCESS;END ART;2.4右边灯控制模块右边灯控制模块的工作框图如图5所示。图5 右边灯控制模块的工作框图右边灯控制模块由VHDL程序来实现,下面是其中的一段VHDL代码:ARCHITECTURE ART OF RC ISBEGIN LEDB=BRAKE;
7、LEDN=NIGHT; PROCESS(CLK,RP,LR) BEGIN IF CLKEVENT AND CLK = 1 THEN IF(LR = 0)THEN IF(RP = 0)THEN LEDR =0; ELSE LEDR = 1; END IF; ELSE LEDR =0; END IF; END IF; END PROCESS;END ART;3. 结果和结论3.1分频模块仿真及分析分频模块由VHDL程序实现后,其仿真图如图6所示。图6 分频模块仿真图对其仿真图进行仿真分析:如图所示,首先生成一个600ns的时钟脉冲,通过时钟分频把600ns的脉冲分成一个40ns的脉冲,实现了信号同
8、步。3.2汽车尾灯主控模块仿真及分析汽车尾灯主控模块由VHDL程序实现后,其仿真图如图7所示。 图7主控模块时序仿真图对时序仿真图进行分析:RIGHT,LEFT,NIGHT,BRAKE 为输入信号,RIGHT为1表示右转,LEFT为1表示左转,NIGHT为1表示夜间行路,BRAKE为1表示刹车。RP,LP,NIGHT_LED,BRAKE_LED为输出信号。如图所示:当RIGHT为1时,产生一个RP为1的信号脉冲输出,当LEFT为1时,产生一个LP为1的信号脉冲输出,当NIGHT为1时,产生一个NIGHT_LED为1的信号脉冲输出。当BRAKE为1时,产生一个BRAKE_LED为1的信号脉冲输出
9、。3.3左边灯控制模块仿真及分析左边灯控制模块由VHDL程序实现后,其仿真图如图8所示。图8左边灯控制模块时序仿真图对时序仿真图进行分析:LP,LR,NIGHT,BRAKE 为输入信号,LP为1表示左转,LR为1表示右转,NIGHT为1表示夜间行路,BRAKE为1表示刹车。LEDL,LEDB,LEDN为输出信号,表示汽车左侧的三盏灯。如图所示:当LP为1时,LEDL输出为1表示左侧灯亮,当BRAKE为1时,LEDB输出为1表示左侧灯亮,当NIGHT为1时,LEDN输出为1表示左侧灯亮。当LR为1时,左侧三盏灯输出均为0。即没有灯亮。3.4右边灯控制模块仿真及分析右边灯控制模块由VHDL程序实现
10、后,其仿真图如图9所示。图9右边灯控制模块时序仿真图对时序仿真图进行分析:RP,LR,NIGHT,BRAKE 为输入信号,LR为1表示左转,RP为1表示右转,NIGHT为1表示夜间行路,BRAKE为1表示刹车。LEDR,LEDB,LEDN为输出信号,表示汽车右侧的三盏灯。如图所示:当RP为1时,LEDR输出为1表示右侧灯亮,当BRAKE为1时,LEDB输出为1表示右侧灯亮,当NIGHT为1时,LEDN输出为1表示右侧灯亮。当LR为1时,右侧三盏灯输出均为0。即没有灯亮。 3.5整个系统仿真及分析按图1组装系统后的仿真图如图10所示。图10 整个系统仿真图对时序仿真图进行分析:RIGHT,LEF
11、T,NIGHT,BRAKE 为输入信号,RIGHT为1表示右转,LEFT为1表示左转,NIGHT为1表示夜间行路,BRAKE为1表示刹车。RD1,RD2,RD3为输出信号,表示汽车右侧的三盏灯。LD1,LD2,LD3为输出信号,表示汽车左侧的三盏灯。如图所示:当RIGHT为1时,RD1输出为1表示右侧灯亮,当LEFT为1时,LD1为输出为1表示左侧灯亮,当NIGHT为1时,LD2,RD2输出均为1,表示左,右两侧各有一盏灯亮。当BRAKE为1时,LD3,RD3输出均为1,表示左,右两侧各有一盏灯亮。4.附件4.1各个模块程序4.11主控模块LIBRARY IEEE;USE IEEE.STD_L
12、OGIC_1164.ALL;ENTITY CTRL IS PORT (LEFT,RIGHT,BRAKE,NIGHT: IN STD_LOGIC; LP,RP,LR,BRAKE_LED,NIGHT_LED:OUT STD_LOGIC);END;ARCHITECTURE ART OF CTRL ISBEGIN NIGHT_LED=NIGHT; BRAKE_LEDLP=0;RP=0;LRLP=0;RP=1;LRLP=1;RP=0;LRLP=0;RP=0;LR=1; END CASE; END PROCESS;END ART;4.1.2时钟分频模块LIBRARY IEEE;USE IEEE.STD_L
13、OGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY SZ IS PORT(CLK:IN STD_LOGIC; CP:OUT STD_LOGIC);END;ARCHITECTURE ART OF SZ ISSIGNAL COUNT:STD_LOGIC_VECTOR(7 DOWNTO 0);BEGINPROCESS(CLK) BEGIN IF CLKEVENT AND CLK = 1THEN COUNT = COUNT + 1; END IF; END PROCESS; CP= COUNT(3);END ART;4.1.3右边灯控制模块LIBR
14、ARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY RC IS PORT(CLK,RP,LR,BRAKE,NIGHT:IN STD_LOGIC; LEDR,LEDB,LEDN: OUT STD_LOGIC);END;ARCHITECTURE ART OF RC ISBEGIN LEDB=BRAKE; LEDN=NIGHT; PROCESS(CLK,RP,LR) BEGIN IF CLKEVENT AND CLK = 1 THEN IF(LR = 0)THEN IF(RP = 0)THEN LEDR =0; ELSE LEDR = 1; END IF; ELS
15、E LEDR =0; END IF; END IF; END PROCESS;END ART;4.1.4左边灯控制模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY LC IS PORT(CLK,LP,LR,BRAKE,NIGHT:IN STD_LOGIC; LEDL,LEDB,LEDN: OUT STD_LOGIC);END;ARCHITECTURE ART OF LC ISBEGIN LEDB=BRAKE; LEDN=NIGHT;PROCESS(CLK,LP,LR)BEGIN IF CLKEVENT AND CLK = 1 THEN IF(LR =0)THEN IF(LP = 0)THEN LEDL=0; ELSE LEDL=1; END IF; ELSE LEDL =0; END IF; END IF;END PROCESS;END ART;