《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 汽車尾燈VHDL設計
汽車尾燈VHDL設計
摘要: 汽車尾燈VHDL設計標簽/分類:1.系統設計要求用6個發光管模擬6個汽車尾燈(左右各3個),用4個開關作為汽車控制信號,分別為:左拐、右拐、故障和剎車。車勻速行駛時,6個汽車尾燈全滅;右拐時,車右邊
Abstract:
Key words :

汽車尾燈VHDL設計

標簽/分類:


1.系統設計要求
     用6個發光管模擬6個汽車尾燈(左右各3個),用4個開關作為汽車控制信號,分別為:左拐、右拐、故障和剎車。
    車勻速行駛時,6個汽車尾燈全滅;右拐時,車右邊3個尾燈從左至右順序亮滅;左拐時,車左邊3個尾燈從右至左順序亮滅;故障時車6個尾燈一起明滅閃爍;剎車時,6個尾燈全亮
2.系統設計方案
   根據系統設計要求,采用自頂向下設計方法,頂層設計采用原理圖設計,它由主控模塊、左邊燈控制模塊和右邊燈控制模塊三部分組成。
3參考VHDL源程序
(1) 主控制模塊
     說明:此程序為系統主控制模塊。當左轉時,lft信號有效;右轉時,rit信號有效;當左右信號都有效的時,lr有效。
library ieee;
use ieee.std_logic_1164.all;
entity kz is
   port(left,right:in std_logic;
        lft,rit,lr:out std_logic);
end kz;
architecture kz_arc of kz is
begin
   process(left,right)
   variable a:std_logic_vector(1 downto 0);
   begin
     a:=left&right;
     case a is 
        when"00"=>lft<='0';
                  rit<='0';
                  lr<='0';
        when"10"=>lft<='1';
                  rit<='0';
                  lr<='0';
        when"01"=>rit<='1';
                  lft<='0';
                  lr<='0';
        when others=>rit<='1';
                     lft<='1';
                     lr<='1';
     end case;
   end process;
end kz_arc;
        
(2)左邊燈控制模塊
說明:此模塊的功能是當左轉時控制左邊的3個燈,當左右信號都有效時,輸出為全“1”。
library ieee;
use ieee.std_logic_1164.all;
entity lfta is
   port(en,clk,lr:in std_logic;
        l2,l1,l0:out std_logic);
end lfta;
architecture lft_arc of lfta is
begin
   process(clk,en,lr)
   variable tmp:std_logic_vector(2 downto 0);
   begin
      if lr='1' then
         tmp:="111";
      elsif en='0' then
         tmp:="000";
      elsif clk'event and clk='1' then
         if tmp="000" then
            tmp:="001";
         else
            tmp:=tmp(1 downto 0)&'0';
         end if;
      end if;
      l2<=tmp(2);
      l1<=tmp(1);
      l0<=tmp(0);
   end process;
end lft_arc;
 
(2) 右邊燈控制模塊
說明:此模塊的功能是控制右邊的3個燈,與上面模塊相似。
library ieee;
use ieee.std_logic_1164.all;
entity rita is
    port(en,clk,lr:in std_logic;
         r2,r1,r0:out std_logic);
end rita;
architecture rit_arc of rita is
begin
   process(clk,en,lr)
   variable tmp:std_logic_vector(2 downto 0);
   begin
    if lr='1' then
       tmp:="111";
    elsif en='0' then
       tmp:="000";
    elsif clk'event and clk='1' then
       if tmp="000" then
          tmp:="100";
       else
         tmp:='0'&tmp(2 downto 1);
       end if;
    end if;
       r2<=tmp(2);
       r1<=tmp(1);
       r0<=tmp(0);
    
   end process;
end rit_arc;
此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 国产青年摘花xxx| 放荡的女按摩师2| 亚洲欧美精品一区二区| 三上悠亚电影在线观看| 日韩激情淫片免费看| 亚洲日韩一区精品射精| 色婷婷综合久久久久中文字幕| 国产福利一区二区三区在线视频| AV无码久久久久久不卡网站| 总裁舌头伸进花唇裂缝中| 久久久久国产精品免费免费不卡| 李莫愁好紧好湿好滑| 亚洲最大视频网| 美女被羞羞吸乳动漫视频| 国产午夜鲁丝片av无码免费| 日韩色图在线观看| 国产精品福利一区二区久久| aaaaa级少妇高潮大片| 女人脱裤子让男生桶的免费视频| 三级毛片在线免费观看| 扒开老师的蕾丝内裤漫画| 亚洲国产成人久久| 波多野吉衣AV无码| 人人妻人人澡人人爽欧美精品| 精品久久久影院| 午夜视频在线观看免费完整版 | 日本人强jizz多人高清| 国产精品无码免费视频二三区| 91香蕉视频导航| 国内精品视频一区二区三区八戒| 久久99国产乱子伦精品免费| 日韩a在线播放| 久久精品国产96精品亚洲| 最新国产成人ab网站| 亚洲videos| 欧洲美女与动zooz| 亚洲一区二区三区欧美| 欧美国产精品va在线观看| 亚洲国产综合人成综合网站00| 欧美日韩中文国产va另类| 亚洲欧美日韩一区在线观看|