版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 綜合實(shí)驗(yàn)</b></p><p> ——出租車計(jì)價(jià)器設(shè)計(jì)</p><p><b> 前言</b></p><p> 隨著微電子技術(shù)的發(fā)展,現(xiàn)代電子技術(shù)的核心已日趨轉(zhuǎn)向基于計(jì)算機(jī)的電子設(shè)計(jì)自動化技術(shù),即EDA(Electronic Design Automation)技術(shù)。EDA技術(shù)就是依
2、賴功能強(qiáng)大的計(jì)算機(jī),在EDA工具軟件平臺上,對以硬件描述語言HDL(Hardware Description Language)為系統(tǒng)邏輯描述手段完成的設(shè)計(jì)文件,自動地完成邏輯編譯、化簡、分割、綜合、布局布線以及邏輯優(yōu)化和仿真測試,直至實(shí)現(xiàn)既定的電子線路系統(tǒng)功能。EDA技術(shù)使得設(shè)計(jì)者的工作僅限于利用軟件的方式,即利用硬件描述語言和EDA軟件來完成對系統(tǒng)硬件功能的實(shí)現(xiàn),這是電子設(shè)計(jì)技術(shù)的一個(gè)巨大進(jìn)步。</p><p&g
3、t; 本學(xué)期,學(xué)校開設(shè)了EDA和VHDL課程的學(xué)習(xí),而學(xué)習(xí)一門編程語言,最好的方法莫過于在一個(gè)完整的系統(tǒng)開發(fā)過程中進(jìn)行。因此,EDA綜合實(shí)驗(yàn)就是一個(gè)最好的學(xué)習(xí)實(shí)踐機(jī)會。</p><p> 隨著我國社會經(jīng)濟(jì)的全面發(fā)展,各大中小城市的出租車營運(yùn)事業(yè)發(fā)展迅速,出租車已經(jīng)成為人們?nèi)粘3鲂羞x擇較為普遍的交通工具。出租車計(jì)價(jià)器是出租車營運(yùn)收費(fèi)的專用智能化儀表是出租車市場規(guī)范化、 標(biāo)準(zhǔn)化以及減少司機(jī)與乘客之間發(fā)生糾紛的重要
4、設(shè)備。一種功能完備、簡單易用、計(jì)量準(zhǔn)確的出租車計(jì)價(jià)器是加強(qiáng)出租車行業(yè)管理、提高服務(wù)質(zhì)量的必備品。本實(shí)驗(yàn)就是采用VHDL硬件描述語言作為設(shè)計(jì)手段,采用自頂向下的設(shè)計(jì)思路,得到一種出租車計(jì)價(jià)系統(tǒng)的軟件結(jié)構(gòu),通過在 Quartus II軟件下進(jìn)行模擬仿真,并進(jìn)行相應(yīng)的硬件下載調(diào)試,證明所設(shè)計(jì)的電路系統(tǒng)完成了出租車計(jì)價(jià)器的功能,各技術(shù)指標(biāo)符合預(yù)定標(biāo)準(zhǔn),具有一定實(shí)用性。</p><p><b> 一、實(shí)驗(yàn)任務(wù)及
5、要求</b></p><p> 1.能實(shí)現(xiàn)計(jì)費(fèi)功能,計(jì)費(fèi)標(biāo)準(zhǔn)為:按行駛里程收費(fèi),起步費(fèi)為10.00元,并在車行3公里后再按1.6元/公里,車暫停時(shí),停車一分鐘之后開始加價(jià),每分鐘增加2.5元。</p><p> 2. 實(shí)現(xiàn)預(yù)置功能:能預(yù)置起步費(fèi)、每公里收費(fèi)、車行加費(fèi)里程。</p><p> 3. 實(shí)現(xiàn)模擬功能:能模擬汽車啟動、停止、暫停等狀態(tài)。&l
6、t;/p><p> 4. 設(shè)計(jì)動態(tài)掃描電路:將車費(fèi)及暫停時(shí)間顯示出來。</p><p> 5. 用VHDL語言設(shè)計(jì)符合上述功能要求的出租車計(jì)費(fèi)器,并用層次化設(shè)計(jì)方法設(shè)計(jì)該電路。</p><p> 6. 綜合仿真驗(yàn)證,并通過有關(guān)波形確認(rèn)電路設(shè)計(jì)是否正確。</p><p> 7. 完成電路全部設(shè)計(jì)后,通過GW48系統(tǒng)實(shí)驗(yàn)箱下載驗(yàn)證設(shè)計(jì)的正確性
7、。</p><p><b> 二、實(shí)驗(yàn)原理</b></p><p> 圖1出租車計(jì)價(jià)器流程圖</p><p><b> 圖2系統(tǒng)結(jié)構(gòu)圖</b></p><p><b> 接口部分定義如下:</b></p><p> 輸入:clk_240,系統(tǒng)時(shí)
8、鐘,頻率為240Hz;</p><p> Start,啟動信號,當(dāng)start=1時(shí),汽車啟動,開始計(jì)價(jià); 當(dāng)start=0時(shí),清零;</p><p> Stop,暫時(shí)計(jì)時(shí)信號,當(dāng)stop-1時(shí),中途暫停,開始計(jì)時(shí);當(dāng)stop=0時(shí),再次出發(fā);</p><p> Fin,汽車車速脈沖信號,是一個(gè)與隨著車速變化而變化的脈沖信號。</p><p&
9、gt; 輸出:cha2,cha1,cha0,分別為價(jià)錢的十位,個(gè)位和角位;</p><p> Km1,km0,分別為行駛公里數(shù)的十位,個(gè)位;</p><p> Min0,暫時(shí)分鐘數(shù)輸出。</p><p> 接口部分源程序如下:</p><p> port ( clk_240 :in std_logic;
10、 --頻率為240Hz的時(shí)鐘 </p><p> start :in std_logic; --計(jì)價(jià)使能信號</p><p> stop:in std_logic; --等待信號</p&g
11、t;<p> fin:in std_logic; --公里脈沖信號</p><p> cha2,cha1,cha0:out std_logic_vector(3 downto 0); --費(fèi)用數(shù)據(jù)</p><p> km1,km0:out std_logic_vector(3 downto 0);
12、 --公里數(shù)據(jù) </p><p> min0: out std_logic_vector(3 downto 0)); --等待時(shí)間 </p><p><b> 計(jì)價(jià)部分原理如下:</b></p><p> 起步價(jià)10元,3公里內(nèi)10元,超出3公里部分,每公里1.6元,車暫停時(shí)
13、,2分鐘內(nèi)不加價(jià),超出2分鐘部分,每分鐘2.5元;</p><p> 計(jì)費(fèi)部分源程序如下:</p><p> feipin:process(clk_240,start)</p><p><b> begin</b></p><p> if clk_240'event and clk_240='1&
14、#39; then</p><p> if start='0' then q_15<=0;q_16<=0;f_15<='0';f_16<='0';f_1<='0';f<='0';</p><p><b> else</b></p>&l
15、t;p> if q_15=15 then q_15<=0;f_15<='1'; --此IF語句得到頻率為15Hz的信號</p><p> else q_15<=q_15+1;f_15<='0';</p><p><b> end if;</b></p><p>
16、; if q_16=14 then q_16<=0;f_16<='1'; --此IF語句得到頻率為16Hz的信號</p><p> else q_16<=q_16+1;f_16<='0'; </p><p><b> end if;</b></p><p> if
17、 q_1=239 then q_1<=0;f_1<='1'; --此IF語句得到頻率為1Hz的信號</p><p> else q_1<=q_1+1;f_1<='0';</p><p><b> end if;</b></p><p> if en1='
18、1' then f<=f_15; --此IF語句得到計(jì)費(fèi)脈沖f</p><p> elsif en0='1' then f<=f_16;</p><p> else f<='0';</p><p><b> end if;</b></p&
19、gt;<p><b> end if;</b></p><p><b> end if;</b></p><p> end process;</p><p> process(f_1)</p><p><b> begin</b></p>
20、<p> if f_1'event and f_1='1' then</p><p> if start='0' then </p><p> w<=0;en1<='0';en0<='0';m1<="000";m0<="0000";k
21、1<="0000";k0<="0000";</p><p> elsif stop='1' then </p><p> if w=59 then w<=0; --此IF語句完成等待計(jì)時(shí)</p><p> if m0="1
22、001" then m0<="0000"; --此IF語句完成分計(jì)數(shù) </p><p> if m1<="101" then m1<="000";</p><p> else m1<=m1+1;</p><p><b> end
23、 if;</b></p><p> else m0<=m0+1;</p><p><b> end if;</b></p><p> if m1&m0>"0000001"then en1<='1'; --此IF語句得到en1使能信號</
24、p><p> else en1<='0';</p><p><b> end if;</b></p><p> else w<=w+1;en1<='0';</p><p><b> end if;</b></p><p>
25、 elsif fin='1' then </p><p> if k0="1001" then k0<="0000"; --此IF語句完成公里脈沖計(jì)數(shù)</p><p> if k1="1001" then k1<="0000";</p
26、><p> else k1<=k1+1;</p><p><b> end if;</b></p><p> else k0<=k0+1;</p><p><b> end if;</b></p><p> if k1&k0>"000
27、00010" then en0<='1'; --此IF語句得到en0使能信號</p><p> else en0<='0';</p><p> end if; </p><p> else en1<='0';en0<='0'
28、;;</p><p><b> end if;</b></p><p> cha3<=c3;cha2<=c2;cha1<=c1;cha0<=c0; --費(fèi)用數(shù)據(jù)輸出</p><p> km1<=k1;km0<=k0;min1<='0'&m
29、1;min0<=m0; --公里數(shù)據(jù)、分鐘數(shù)據(jù)輸出</p><p><b> end if;</b></p><p> end process;</p><p> process(f,start)</p><p><b> begin</b></p>
30、;<p> if start='0' then c3<="0000";c2<="0001";c1<="0000";c0<="0000";</p><p> elsif f'event and f='1' then</p><p>
31、 if c0="1001" then c0<="0000"; --此IF語句完成對費(fèi)用的計(jì)數(shù)</p><p> if c1="1001" then c1<="0000";</p><p> if c2="1001" then c2
32、<="0000";</p><p> if c3<="1001" then c3<="0000";</p><p> else c3<=c3+1;</p><p><b> end if;</b></p><p> else c2
33、<=c2+1;</p><p><b> end if;</b></p><p> else c1<=c1+1;</p><p><b> end if;</b></p><p> else c0<=c0+1;</p><p><b>
34、end if;</b></p><p><b> end if;</b></p><p> end process;</p><p> end behav; </p><p><b> 圖3仿真波形圖1</b></p><p><b> 圖
35、4仿真波形圖2</b></p><p><b> 三、系統(tǒng)測試</b></p><p> 系統(tǒng)測試過程如下:首先用QuartusⅡ仿真工具對系統(tǒng)進(jìn)行時(shí)序仿真(波形如圖3、圖4)。功能仿真用于綜合前檢查設(shè)計(jì)的邏輯功能是否符合設(shè)計(jì)要求,仿真過程中可以通過觀察檢測設(shè)計(jì)的輸入信號、輸出信號以及內(nèi)部信號來分析設(shè)計(jì)的邏輯功能是否實(shí)現(xiàn)。如果仿真全部通過無誤的話,就可
36、以進(jìn)行引腳鎖定,然后下載程序到GW48 系統(tǒng)進(jìn)行硬件仿真。FPGA 的配置芯片為ACEX1K EP1K30TC114-3,利用在實(shí)驗(yàn)箱上連接好的八片LED 數(shù)碼管中的六片,直接觀察結(jié)果。測試結(jié)果表明,系統(tǒng)設(shè)計(jì)達(dá)到了預(yù)期的技術(shù)指標(biāo)要求。</p><p><b> 四、實(shí)驗(yàn)總結(jié)</b></p><p> 出租車計(jì)費(fèi)器系統(tǒng)的設(shè)計(jì)已全部完成,能按預(yù)期的效果進(jìn)行模擬汽車啟動
37、、停止、暫停等功能,并設(shè)計(jì)LED數(shù)碼管顯示車費(fèi)數(shù)目。車暫時(shí)1分鐘內(nèi)車費(fèi)保持不變。若停止則車費(fèi)清零,等待下一次計(jì)費(fèi)的開始出租車計(jì)費(fèi)系統(tǒng)的設(shè)計(jì)中體現(xiàn)了VHDL覆蓋面廣,描述能力強(qiáng),是一個(gè)多層次的硬件描述語言及PLD器件速度快,使用方便,便于修改等特點(diǎn),本設(shè)計(jì)在實(shí)用方面具有一定的價(jià)值。</p><p> 此外,由于是初學(xué)EDA及VHDL,難免一些錯(cuò)誤及不足之處,本系統(tǒng)也存在一定的缺陷,如車費(fèi)只能顯示到十位,百位無法顯
38、示,暫停也只能顯示10分鐘以內(nèi)。因此,改進(jìn)方向可從擴(kuò)大輸出范圍入手。</p><p> 最后,衷心感謝文毅老師全程指導(dǎo)及提出的寶貴建議,可以說,沒有文老師,本實(shí)驗(yàn)就不能取得成功。</p><p><b> 五、心得體會:</b></p><p> 這次課程設(shè)計(jì)中,我們主要是運(yùn)用VHDL語言設(shè)計(jì)了一個(gè)出租車計(jì)費(fèi)器,并且用層次化的設(shè)計(jì)方法來實(shí)
39、現(xiàn)這個(gè)電路。在程序編寫結(jié)束后,我們還對該程序進(jìn)行了調(diào)試, 能按預(yù)期的效果進(jìn)行模擬汽車啟動、停止、暫停等功能,基本完成課程設(shè)計(jì)的要求。</p><p> 通過此次課程設(shè)計(jì),我們更進(jìn)一步的深入了解了VHDL設(shè)計(jì)語言,并通過使用對它有了更深的體會。對于編程過程中可能遇到的問題有了一定的了解,也明白了其中的一些注意事項(xiàng),對于下次進(jìn)行編程設(shè)計(jì)有很大的幫助和提高。</p><p> 總之,這次實(shí)驗(yàn)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 出租車計(jì)價(jià)器(20170824174838)
- 出租車計(jì)價(jià)器課程設(shè)計(jì)
- 578 出租車計(jì)價(jià)器系統(tǒng)設(shè)計(jì)
- 出租車計(jì)價(jià)器系統(tǒng)設(shè)計(jì).doc
- 畢業(yè)設(shè)計(jì)----出租車計(jì)價(jià)器
- 出租車計(jì)價(jià)器畢業(yè)設(shè)計(jì)
- 765 出租車計(jì)價(jià)器系統(tǒng)設(shè)計(jì)
- 出租車計(jì)價(jià)器系統(tǒng)的設(shè)計(jì)
- 出租車計(jì)價(jià)器課程設(shè)計(jì)
- 出租車計(jì)價(jià)器課程設(shè)計(jì)
- 出租車計(jì)價(jià)器課程設(shè)計(jì)
- 出租車計(jì)價(jià)器系統(tǒng)設(shè)計(jì).doc
- 語音多路出租車計(jì)價(jià)器
- 出租車計(jì)價(jià)器程序.doc
- 出租車計(jì)價(jià)器程序.doc
- 畢業(yè)設(shè)計(jì)--出租車計(jì)價(jià)器設(shè)計(jì)
- 50設(shè)計(jì)-出租車計(jì)價(jià)器系統(tǒng)設(shè)計(jì)
- 課程設(shè)計(jì)---出租車計(jì)價(jià)器設(shè)計(jì)
- 課程設(shè)計(jì)---出租車計(jì)價(jià)器設(shè)計(jì)
- 課程設(shè)計(jì)--出租車計(jì)價(jià)器設(shè)計(jì)
評論
0/150
提交評論