亚洲AV日韩AⅤ综合手机在线观看,激情婷婷久久综合色,欧美色五月婷婷久久,久久国产精品99久久人人澡

  • <abbr id="uk6uq"><abbr id="uk6uq"></abbr></abbr>
  • <tbody id="uk6uq"></tbody>
  • 發(fā)光二極管走馬燈電路的設計與實現(xiàn)實驗(一)

    時間:2024-07-26 22:16:08 電子信息工程畢業(yè)論文 我要投稿
    • 相關推薦

    發(fā)光二極管走馬燈電路的設計與實現(xiàn)實驗(一)

    實驗程序:
     設計思路:首先用按鍵SW1來控制顯示模式。用狀態(tài)機來實現(xiàn)單點移動和幕布式移動。
    VHDL程序如下
    library ieee;
    use ieee.std_logic_1164.all;
    entity scan is
     port(clk,reset:in std_logic;
       light:out std_logic_vector(7 downto 0);
       a:in std_logic
      );
    end scan;
    architecture arch_scan of scan is
    TYPE state_type is(s0,s1,s2,s3,s4,s5,s6,s7);
    signal state:state_type;
    begin
    process(a,clk,reset)     ——————process使用嵌套
    begin
    if(reset='1') then light<="00000000";
    elsif(rising_edge(clk)) then
     if a='0' then      ——————‘a(chǎn)’代表BW1的值,控制顯示模式
      case state is    ——————實現(xiàn)單點移動
       when s0=>
         state<=s1;
         light<="10000000";
       when s1=>
         state<=s2;
         light<="01000000";
       when s2=>
         state<=s3;
         light<="00100000";
       when s3=>
         state<=s4;
         light<="00010000";
       when s4=>
         state<=s5;
         light<="00001000";
       when s5=>
         state<=s6;
         light<="00000100";
       when s6=>
         state<=s7;
         light<="00000010";
       when s7=>
            state<=s0;
          light<="00000001";
      end case;
      else
         case state is     ——————實現(xiàn)幕布式移動
      when s0=>
        state<=s1;
       light<="00011000";
      when s1=>
        state<=s2;
       light<="00111100";
      when s2=>
       state<=s3;
       light<="01111110";
      when s3=>
       state<=s4;
       light<="11111111";
      when s4=>
       state<=s5;
       light<="01111110";
      when s5=>
       state<=s6;
       light<="00111100";
      when s6=>
       state<=s7;
       light<="00011000";
      when s7=>
       state<=s0;
       light<="00000000"; 
      end case;
       end if;
    end if; 
    end process;
    end arch_scan;

    仿真波形如下:

    600)makesmallpic(this,600,1800);' src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/ksohtml/wps_clip_image-0.png" width="662" height="244" />


    實驗總結
     仿照上個實驗的狀態(tài)機設計,自己寫出了以上的程序。雖然程序簡單,容易寫出,但由于語法不熟,在編寫的過程中走了很多的彎路也出現(xiàn)了較多的錯誤。還好,在老師的指導下,經(jīng)過不段的調(diào)試,改正終于得出了正確的結果。
     最初,我由于不知道要用嵌套PROCESS,而在一個PROCESS中又加入倆個PROCESS。導致編譯不能通過。這是由于語法不清而犯的錯誤。
     還有就是在寫程序的時候沒有進行深入的思考。簡單的認為狀態(tài)機不能實現(xiàn)幕布式的移動(因為我認為狀態(tài)機的狀態(tài)不足以表達幕布式的各個狀態(tài),其實是足夠的)而使用了兩個循環(huán),這樣就把程序弄的很復雜。編寫的時候太草率了,應該進行細致的思考后再去編寫。
     最后的問題就是,整個編程的過程中,小錯誤總是不段。這里多個‘;’,那里少個字母的。這些小的錯誤雖然在編譯后能夠更正過來,但最好還是希望自己能在以后不要在出現(xiàn)類似的錯誤。
     經(jīng)過這次實驗,存在的問題還是老問題——語法不清、不夠細心。語法的問題是由于沒有具體的學習過,又沒有在課下反復的聯(lián)系。要去系統(tǒng)的學習VHDL語言,在近期有點不切實際,還是要多加練習。在練習中熟練 VHDL的語法,而做的多了,也就能避免在細節(jié)問題上總是出錯。

    【發(fā)光二極管走馬燈電路的設計與實現(xiàn)實驗(一)】相關文章:

    錯誤檢測與糾正電路的設計與實現(xiàn)03-20

    ADPCM語音編解碼電路設計及FPGA實現(xiàn)03-18

    Boost電路的一種軟開關實現(xiàn)方法03-18

    AGC電路的設計03-07

    用Protel99SE實現(xiàn)脈沖電路的仿真03-18

    換體DMA高速數(shù)據(jù)采集電路的CPLD實現(xiàn)03-18

    一款開關同步檢波電路的設計03-07

    開關電源控制及觸發(fā)電路的設計(一)03-07

    IP協(xié)議設計實現(xiàn)—重裝模塊(一)03-07