【正文】
超公里數(shù)計(jì)費(fèi)使能信號(hào)產(chǎn)生 EN0=39。039。039。039。039。039。139。 PROCESS(CLK) BEGIN IF CLK39。 END IF。 W 加 1 END IF。 M0 加 1 9 END IF。 M1 加 1 END IF。 M0 清零 IF M1=0101 THEN如果 M1=5 M1=0000。 THEN 如果車(chē)已停止 IF W=59 THEN 如果 W=59 W=0。 M0=0 ELSIF STOP=39。 W=0 M1=0000。039。139。 PROCESS(F_1)等待時(shí)間 BEGIN IF F_139。 END IF。 K0 加 1 END IF。 K1 加 1 END IF。 則清零 IF K1=1001 THEN如果 k1=9 K1=0000。039。 k1=0 K0=0000。039。139。 PROCESS(FIN)公里脈沖計(jì)數(shù) BEGIN IF FIN39。 END IF。 END IF。 7 F_1=39。139。 ELSE IF Q_1=99 THEN Q_1=0。039。039。139。超公里 /等待時(shí)間計(jì)費(fèi)使能信號(hào) BEGIN FEIPIN:PROCESS(CLK,START)脈沖上升沿 車(chē)啟動(dòng)信號(hào) BEGIN IF CLK39。 SIGNAL F_1:STD_LOGIC。M1 代表 W 的高位 SIGNAL M0:STD_LOGIC_VECTOR(3 DOWNTO 0)。計(jì)費(fèi)值 SIGNAL K1,K0:STD_LOGIC_VECTOR(3 DOWNTO 0)。數(shù)碼管掃 描顯示脈沖 6 SIGNAL W:INTEGER RANGE 0 TO 59。等待時(shí)間輸出 END TAXI。計(jì)費(fèi)輸出信號(hào) KM1,KM0: OUT STD_LOGIC_VECTOR(3 DOWNTO 0)。 中途等待停止信號(hào) FIN:IN STD_LOGIC。 系統(tǒng)時(shí)鐘 START:IN STD_LOGIC。 USE 。 USE 。K0=3 時(shí),系統(tǒng)計(jì)費(fèi)始終為起步價(jià),當(dāng)里程超過(guò) 3km時(shí),系統(tǒng)進(jìn)入超公里計(jì)費(fèi),按相應(yīng)單價(jià)計(jì)費(fèi),當(dāng)系統(tǒng)通過(guò)速度檢測(cè)測(cè)得速度小于某值后,系統(tǒng)進(jìn)入等待計(jì)時(shí)計(jì)費(fèi),費(fèi)用單價(jià)可改變。 ( 2)計(jì)時(shí)模塊 計(jì)時(shí)模塊用來(lái) 計(jì)算乘客的等待累計(jì)時(shí)間 , 等候時(shí)間計(jì)費(fèi)需將等候時(shí)間轉(zhuǎn)換成脈沖個(gè)數(shù) , 用每個(gè)脈沖表示的金額與脈沖數(shù)相乘即得計(jì)費(fèi)數(shù) ,計(jì)時(shí)器的量程為59min,滿量程后自動(dòng)歸零。 總體設(shè)計(jì)電路如圖 行車(chē)?yán)锍? 等車(chē)時(shí)間 里程單價(jià) BCD 碼比例乘法器 脈沖電路 BCD 碼比例乘法器 等車(chē)單價(jià) 起步價(jià) 脈沖數(shù)求和 計(jì)數(shù)器 譯碼器 顯示器 4 圖 模塊設(shè)計(jì)和相應(yīng)模塊程序 ( 1) 計(jì)程模塊 計(jì)程 是 2 個(gè) 100 進(jìn)制計(jì)數(shù)器 , 輸入的每 10 米一次脈沖經(jīng)一次 100 進(jìn)制計(jì)數(shù)獲得每 km 一次的脈沖 , 由 100 進(jìn)制計(jì)數(shù)輸出為 2 個(gè) 4 位 2 進(jìn)制 BCD 碼。計(jì)程器的量程為 99km,滿量程后自動(dòng)歸零。等候時(shí)間計(jì)費(fèi)需將等候時(shí)間