eda--vhdl程序设计汽车灯设计1

eda--vhdl程序设计汽车灯设计1

ID:41887373

大小:205.78 KB

页数:16页

时间:2019-09-04

eda--vhdl程序设计汽车灯设计1_第1页
eda--vhdl程序设计汽车灯设计1_第2页
eda--vhdl程序设计汽车灯设计1_第3页
eda--vhdl程序设计汽车灯设计1_第4页
eda--vhdl程序设计汽车灯设计1_第5页
资源描述:

《eda--vhdl程序设计汽车灯设计1》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、汽车灯0911020104吴菇一、设计目的设计一个组合控制电路,使得1前大灯可以随意打开和关闭;2当汽车左转弯的时候,前左灯闪烁,同时左后灯的3盏灯由右往左闪烁;3当汽车右转弯的时候,前右灯闪烁,同时右后灯的3盏灯有左往右闪烁;4当汽车减速或紧急刹车的时候,左后灯和右后灯同时闪烁;5当汽车在左转弯的同时减速,则前左转向灯闪烁,左后灯的3盏灯由右往左闪烁,同时右后灯都点亮。6当汽车在右转弯的同时减速,则前右转向灯闪烁,右后灯的3盏灯有左往右闪烁,同时左后灯都点亮。二.实验原理及设计过程指令开关控制:大前灯控制、刹车/减速控制、左转向控制、右转向控制输出的指标:

2、前大灯、前转向灯(分左灯和右灯,即前左灯和前右灯)、左后灯3盏、右后灯3盏设计过程:后灯的循环移位,因为有三盏灯,所以用有三个状态的状态机,每个状态对应一组3位的输出,控制3盏灯循环地亮。灯的闪烁,用到T触发器的原理,设计一个中间变量,当来第一个时钟脉冲的时候,将这个中间变量取反,再来一个时钟脉冲的时候,再取反一次,有回到原来的初值,从而两个时钟脉冲实现两次翻转,发光二极管闪烁一下。整个设计基本上rh循环电路和控制电路组成。为了避免汽车从一个状态切换到另一个状态是灯控制组合出现不稳定现象,所以每一个状态都必须对中间变量初始化。三、设计源程序模块说明:车灯控制

3、器模块:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_ARITH.ALL;ENTITYcarcontrolISPORT(turn_fro_big」ight:INstdjogic;-前大灯控制开关tum」eft:INstd」ogic;—左转turn_right:INstd_logic;一右转bake:INstdjogic;一刹车或减速fro_big_light_con:OUTstd_logic;一前大灯fro_L_light_con:OUTstdjogic;一前左灯fro_R_light_co

4、n:OUTstdjogic;一前右灯back_L_lights_con:OUTstd_logic_vector(2downto0);—后左灯back_R_lights_con:OUTstd_logic_vector(2downto0)后右灯);ENDcar_control;ARCHITECTUREarch_car_controlofcar_controlISBEGINprocess(turn_left,turn_right,bake,turn_fro_big_light)BEGINif(turn_fro_big_light=T)thenfro_big_lig

5、ht_con<='1';elsefro_big_light_con<=V;endif;-如果前灯控制为1,则前灯亮;否则不亮-whennothingtodo在匀速直线行驶的情况下,前左右灯不亮,后左右转向灯不亮if(turn_left=Oandturn_right=!0!andbake=’O')thenfro_L_light_con<=‘0;fro_R_light_con<=V;back_L_lights_con<="000”;back_R_lights_con<=n000n;-在只是减速刹车的情况下,前转向灯不亮,后左右转向灯闪烁elsif(turn_le

6、ft二Qandturn_right二‘0’andbake二‘1’)thenfro_L_light_con<='O';fro_R_light_con<=V;back_L_lights_conv="010”;back_R_lights_conv="010”;-在只是右转的情况下,前右转向灯闪烁,同时右后灯的3盏灯有左往右闪烁;其他左右灯不亮elsif(turn_left=Oandturn_right=Tandbake='O')thenfro_L_light_con<=‘0;fro_R_light_con<=T;back_L_lights_con<="000”;b

7、ack_R_lights_con<=-当汽车在右转弯的同时减速,则前右转向灯闪烁,右后灯的3盏灯有左往右闪烁,同时左后灯都点亮。elsif(turn_left='0*andturn_right=Tandbake=*1!)thenfro_L_light_con<='O';fro_R_light_conv=T;back_L_lights_con<="100";back_R_lights_con<=n001H;-当汽车左转弯的吋候,前左转向灯闪烁,同时左后灯的3盏灯由右往左闪烁;其他左右灯不亮elsif(turn_left=Tandturn_right=‘0’an

8、dbake='O')thenfro_L_light_

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。