在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁(yè) > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 出租車(chē)計(jì)價(jià)器VHDL程序

            出租車(chē)計(jì)價(jià)器VHDL程序

            作者: 時(shí)間:2012-03-27 來(lái)源:網(wǎng)絡(luò) 收藏

            設(shè)計(jì)與仿真。
            1.
            --文件名:taxi.hd
            --功能:
            library IEEE;
            use IEEE.STD_LOGIC_1164.ALL;
            use IEEE.STD_LOGIC_ARITH.ALL;
            use IEEE.STD_LOGIC_UNSIGNED.ALL;
            entity taxi is
            port ( clk_240 :in std_logic; --頻率為240Hz的時(shí)鐘
            start :in std_logic; --計(jì)價(jià)使能信號(hào)
            stop:in std_logic; --等待信號(hào)
            fin:in std_logic; --公里脈沖信號(hào)
            cha3,cha2,cha1,cha0:out std_logic_vector(3 downto 0); --費(fèi)用數(shù)據(jù)
            km1,km0:out std_logic_vector(3 downto 0); --公里數(shù)據(jù)
            min1,min0: out std_logic_vector(3 downto 0)); --等待時(shí)間
            end taxi;
            architecture behav of taxi is
            signal f_15,f_16,f_1:std_logic; --頻率為15Hz,16Hz,1Hz的信號(hào)
            signal q_15:integer range 0 to 15; --分頻器
            signal q_16:integer range 0 to 14; --分頻器
            signal q_1:integer range 0 to 239; --分頻器
            signal w:integer range 0 to 59; --秒計(jì)數(shù)器
            signal c3,c2,c1,c0:std_logic_vector(3 downto 0); --制費(fèi)用計(jì)數(shù)器
            signal k1,k0:std_logic_vector(3 downto 0); --公里計(jì)數(shù)器
            signal m1:std_logic_vector(2 downto 0); --分的十位計(jì)數(shù)器
            signal m0:std_logic_vector(3 downto 0); --分的個(gè)位計(jì)數(shù)器
            signal en1,en0,f:std_logic; --使能信號(hào)
            begin
            feipin:process(clk_240,start)
            begin
            if clk_240'event and clk_240='1' then
            if start='0' then q_15=0;q_16=0;f_15='0';f_16='0';f_1='0';f='0';
            else
            if q_15=15 then q_15=0;f_15='1'; --此語(yǔ)句得到頻率為15Hz的信號(hào)
            else q_15=q_15+1;f_15='0';
            end if;
            if q_16=14 then q_16=0;f_16='1'; --此語(yǔ)句得到頻率為16Hz的信號(hào)
            else q_16=q_16+1;f_16='0';
            end if;
            if q_1=239 then q_1=0;f_1='1'; --此語(yǔ)句得到頻率為1Hz的信號(hào)
            else q_1=q_1+1;f_1='0';
            end if;
            if en1='1' then f=f_15; --此語(yǔ)句得到計(jì)費(fèi)脈沖f
            elsif en0='1' then f=f_16;
            else f='0';
            end if;
            end if;
            end if;
            end process;
            process(f_1)
            begin
            if f_1'event and f_1='1' then
            if start='0' then
            w=0;en1='0';en0='0';m1=000;m0=0000;k1=0000;k0=0000;
            elsif stop='1' then
            if w=59 then w=0; --此語(yǔ)句完成等待計(jì)時(shí)
            if m0=1001 then m0=0000; --此語(yǔ)句完成分計(jì)數(shù)
            if m1=101 then m1=000;
            else m1=m1+1;
            end if;
            else m0=m0+1;
            end if;
            if m1m0>0000001then en1='1'; --此語(yǔ)句得到en1使能信號(hào)
            else en1='0';
            end if;
            else w=w+1;en1='0';
            end if;
            elsif fin='1' then
            if k0=1001 then k0=0000; --此語(yǔ)句完成公里脈沖計(jì)數(shù)
            if k1=1001 then k1=0000;
            else k1=k1+1;
            end if;
            else k0=k0+1;
            end if;
            if k1k0>00000010 then en0='1'; --此語(yǔ)句得到en0使能信號(hào)
            else en0='0';
            end if;
            else en1='0';en0='0';
            end if;
            cha3=c3;cha2=c2;cha1=c1;cha0=c0; --費(fèi)用數(shù)據(jù)輸出
            km1=k1;km0=k0;min1='0'm1;min0=m0; --公里數(shù)據(jù)、分鐘數(shù)據(jù)輸出
            end if;
            end process;
            process(f,start)
            begin
            if start='0' then c3=0000;c2=0001;c1=0000;c0=0000;
            elsif f'event and f='1' then
            if c0=1001 then c0=0000; --此語(yǔ)句完成對(duì)費(fèi)用的計(jì)數(shù)
            if c1=1001 then c1=0000;
            if c2=1001 then c2=0000;
            if c3=1001 then c3=0000;
            else c3=c3+1;
            end if;
            else c2=c2+1;
            end if;
            else c1=c1+1;
            end if;
            else c0=c0+1;
            end if;
            end if;
            end process;
            end behav;

            本文引用地址:http://www.biyoush.com/article/190593.htm

            2. 仿真圖

            18.jpg

            注:1. 仿真圖中秒跟分的關(guān)系為3進(jìn)制,即w為2時(shí)就歸0;

            2. 出租車(chē)總行駛5公里,等待累計(jì)時(shí)間為4分鐘,總費(fèi)用為16.2元。


            圖8.22.3 出租計(jì)價(jià)器程序仿真全圖



            評(píng)論


            相關(guān)推薦

            技術(shù)專(zhuān)區(qū)

            關(guān)閉