新聞中心

        EEPW首頁 > EDA/PCB > 設計應用 > 基于FPGA的A/D轉換采樣控制模塊的設計

        基于FPGA的A/D轉換采樣控制模塊的設計

        作者: 時間:2009-03-13 來源:網絡 收藏

        2.3 A/D控制與數據的部分程序及仿真

        采用QuartusⅡ軟件平臺下的VHDL語言編程實現。

        library ieee;

        use ieee.std_logic_unsigned.all;

        use ieee.std_logic_1164.all;

        entity ad_hgq is

        port( d :in std_logic_vector(7 downto 0);---AD輸入;

        clk,eoc :in std_logic; ---eoc:結束狀態信號; oe : buffer std_logic;

        addr :out std_logic_vector(2 downto 0); ---oe:輸出允許,addr:選通地址;

        ale,start:out std_logic; ---ale:允許地址鎖存;

        q :buffer std_logic_vector(7 downto 0)); ---數據輸出顯示;

        end ad_hgq;

        architecture behaviour of ad_hgq is

        type state is (st0,st1,st2,st3,st4,st5,st6,st7); ---以枚舉類型定義各狀態子類型;

        signal current_state,next_state :state:=st0; signal regl :std_logic_vector(7 downto 0);

        signal addrx :std_logic_vector(2 downto 0):=000;

        signal lock :std_logic; ---轉換后數據輸出鎖存時鐘信號;

        signal hex :std_logic_vector(7 downto 0);

        begin

        process(clk)

        begin

        if(clk'event and clk='1') then current_state=next_state;

        end if; ---在時鐘上升沿,轉換至下一狀態;

        end process ; ---由信號current_state將當前狀態帶出進程,進入下一進程;

        process(lock)

        begin

        if lock='1'and lock'event then regl=d;

        end if; --在lock上升沿,將轉換好的數據鎖存入8位鎖存器中;

        end process;

        process(clk)

        begin

        if clk'event and clk='1' then

        if current_state=st0 then addrx=addrx+1; ---進入下一地址通道;

        end if;

        end if;

        addr=addrx;

        end process;

        q=regl; ---數據輸出;

        process(clk)

        begin

        if( clk'event and clk ='1') then if oe='1' then hex=q; ---將數據送給hex;

        end if;

        end if;

        end process;

        end behaviour;

        圖2顯示的是A/D控制并將所采的數據轉換為BCD碼的仿真結果。圖中Value為所采的電壓結果值。


        圖2 仿真

        3 結束語

        采用EP1C6T144C8芯片實現對A/D轉換器的采樣控制,充分利用了的高速度和高可靠性,從而解決了傳統中用單片機控制時速度慢的問題。具有靈活的編程方式,簡單方便的編程環境,易學易用,大大提高工作效率,縮短研制周期。本設計可用于高速應用領域和實時監控方面。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 佛冈县| 凤城市| 海阳市| 建始县| 清水县| 山阴县| 繁峙县| 白朗县| 阳朔县| 新野县| 佳木斯市| 宜春市| 随州市| 丹东市| 北川| 贵港市| 辽源市| 云龙县| 浮山县| 华宁县| 集安市| 西林县| 竹北市| 蕲春县| 镇远县| 定西市| 恭城| 昌黎县| 广丰县| 武汉市| 松阳县| 屯昌县| 固始县| 石门县| 汝南县| 牙克石市| 离岛区| 绥江县| 海阳市| 紫云| 文昌市|