出租車自動計價器設計_第1頁
出租車自動計價器設計_第2頁
出租車自動計價器設計_第3頁
出租車自動計價器設計_第4頁
出租車自動計價器設計_第5頁
已閱讀5頁,還剩16頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

8.22出租車自動計價器設計設計要求設計一個出租車計價器。該計價器的計費系統:行程3公里內,且等待累計時間2分鐘內,起步費為10元;3公里外以每公里1.6元計費,等待累計時間2分鐘外以每分鐘以1.5元計費。并能顯示行駛公里數、等待累計時間、總費用。主要技術指標

①計價范圍:0~999.9元計價分辨率:0.1元

②計程范圍:0~99公里計程分辨率:1公里

③計時范圍:0~59分計時分辨率:分系統組成

它由外部輸入模塊、FPGA模塊、顯示模塊三部分組成。FPGA時鐘信號計費/復位公里脈沖控制器分頻器等待信號計費計時計程譯碼顯示模塊設計1.分頻模塊2.控制模塊3.計量模塊4.譯碼模塊5.顯示模塊1.分頻模塊分頻模塊對頻率為240Hz的輸入脈沖進行分頻,得到的頻率為16Hz,15Hz和1Hz的三種頻率。2.控制模塊控制模塊是系統的核心部分,對計價器的狀態進行控制。3.計量模塊完成下面3個功能:計價功能計時功能計程功能計價部分:行程3公里內,且等待累計時間2分鐘內,起步費為10元;3公里外以每公里1.6元計費,等待累計時間2分鐘外以每分鐘1.5元計費。計時部分:計算乘客的等待累計時間。計時器的量程為59分,滿量程自動歸零。計程部分:計算乘客所行駛的公里數。計程器的量程為99公里,滿量程自動歸零。4.譯碼模塊計費數據送入顯示譯碼模塊進行譯碼,最后送至百元、十元、元、角為單位對應的數碼管上顯示。計時數據送入顯示譯碼模塊進行譯碼,最后送至分為單位對應的數碼管上顯示。計程數據送入顯示譯碼模塊進行譯碼,最后送至以公里為單位的數碼管上顯示。5.顯示模塊計價數據在以百元、十元、元、角為單位對應的數碼管上顯示。計時數據在以分為單位對應的數碼管上顯示。計程數據在以公里為單位的數碼管上顯示顯示。出租車計價器程序設計與仿真出租車計價器電路符號

電梯程序端口定義entitytaxiisport(clk_240:instd_logic;--頻率為240Hz的時鐘

start:instd_logic;--計價使能信號

stop:in

std_logic;--等待信號

fin:in

std_logic;--公里脈沖信號

cha3,cha2,cha1,cha0:outstd_logic_vector(3downto0);--費用數據

km1,km0:outstd_logic_vector(3downto0);--公里數據

min1,min0:outstd_logic_vector(3downto0));--等待時間endtaxi;電梯程序中間信號定義signalf_15,f_16,f_1:std_logic;--頻率為15Hz,16Hz,1Hz的信號signalq_15:integerrange0to15;--分頻器signalq_16:integerrange0to14;--分頻器signalq_1:integerrange0to239;--分頻器signalw:integerrange0to59;--秒計數器signalc3,c2,c1,c0:std_logic_vector(3downto0);--制費用計數器signalk1,k0:std_logic_vector(3downto0);--公里計數器signalm1:std_logic_vector(2downto0);--分的十位計數器signalm0:std_logic_vector(3downto0);--分的個位計數器signalen1,en0,f:std_logic;--使能信號注:仿真圖中秒跟分的關系為3進制,即w為2時就歸0;出租車總行駛里程為5公里,等待累計時間為4分鐘,總費用為16.2元。出租計價器程序仿真圖-開頭部分注:行駛公里數為4時,f得到16個計價脈沖數,計價器加16。既等效于加1.6元。注:等待累計時間為3分鐘時,f得到15個計價脈沖。計價器的數值增加15。即等效于加1.5元。feipin:process(clk_240,start)ifclk_240'eventandclk_240='1'thenifstart='0'thenq_15<=0;q_16<=0;f_15<='0';f_16<='0';f_1<='0';f<='0';elseifq_15=15thenq_15<=0;f_15<='1';--得到頻率為15Hz的信號

elseq_15<=q_15+1;f_15<='0';endif;--……得到16Hz和1Hz的信號方法與上面相同

ifen1='1'thenf<=f_15;--此IF語句得到計費脈沖f

elsifen0='1'thenf<=f_16;elsef<='0';endif;endif;endif;process(f_1)

elsifstop='1'thenifw=59thenw<=0;--此IF語句完成等待計時

ifm0="1001"thenm0<="0000";--此IF語句完成分計數

ifm1<="101"thenm1<="000";elsem1<=m1+1;endif;elsem0<=m0+1;

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論