正文

汽车车灯控制系统的VHDL语言实现2005-08-19 22:00:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/niao0311/3954.html

分享到:

1.            系统功能及要求: 汽车上有一转弯控制杆,此杆有三种状态:中间位置时,汽车不转弯;向上时,汽车左转; 向下时汽车右转。汽车转弯时相应尾灯相应头灯均闪烁,当应急开关合上时,头灯尾 灯均闪烁。汽车刹车时,2个尾灯发出一直亮的信号。如果汽车刹车时正在转弯,则 相应的转弯闪烁信号不受影响。 2.    逻缉抽象: 由要求转换成真值表           输入信号                          输出信号          刹车  应急  左转  右转         左头灯 右头灯  左尾灯  右尾灯          开关  开关  开关  开关          状态   状态    状态    状态         (A)  (B)   (C)    (D)            (E)    (F)      (G)     (H)           0     0     0      0             断     断      断      断              0     0     0      1             断     闪      断      闪             0     0     1      0             闪     断      闪      断             0     0     1      1             断     断      断      断           0     1     0      0             闪     闪      闪      闪           0     1     0      1             闪     闪      闪      闪           0     1     1      0             闪     闪      闪      闪           0     1     1      1             断     断      断      断           1     0     0      0             断     断      通      通           1     0     0      1             断     闪      通      闪           1     0     1      0             闪     断      闪      通           1     0     1      1             断     断      断      断           1     1     0      0             闪     闪      通      通           1     1     0      1             闪     闪      通      闪           1     1     1      0             闪     闪      闪      通           1     1     1      1             断     断      断      断      注:断——灯不亮    闪——灯闪烁    通——灯一直亮 3.    由真值表得出逻缉表达式:          E(断)=(C AND D) OR ((NOT B) AND (NOT C));          E(闪)=(B AND (NOT C) ) OR (C AND (NOY(D));          E(通)=0;          F(断)=(C AND D) OR ((NOT B) AND (NOT D));          F(闪)=((NOT C) AND D) OR (B AND (NOT(D));          F(通)=0;          G(断)=(C AND D) OR ((NOT A) AND (NOT B) AND (NOT C));          G(闪)=(C AND (NOT D)) OR ((NOT A) AND B AND (NOT C));          G(通)=A AND (NOT C);          H(断)=(C AND D) OR ((NOT A) AND (NOT B) AND (NOT D));          H(闪)=((NOT C) AND D) OR ((NOT A) AND B AND (NOT D));          H(通)=A AND (NOT D); 4.    VHDL语言实现(源程序注释):    library IEEE;                  ——定义IEEE库,使用std_logic_1164       use IEEE.std_logic_1164.all;         std_logic_unsigned 包集合    use IEEE.std_logic_unsigned.all;    entity autolight is               ——定义实体autolight     port (                            A,B,C,D对应上述四个开关,信号为输入         A: in STD_LOGIC;             E,F,G,H 对应上述前后车灯,信号为输出         C: in STD_LOGIC;         B: in STD_LOGIC;         D: in STD_LOGIC;         E: out STD_LOGIC;         F: out STD_LOGIC;         G: out STD_LOGIC;         H: out STD_LOGIC     ); end autolight;

阅读(15338) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册