出租車計費器EDA課件_第1頁
出租車計費器EDA課件_第2頁
出租車計費器EDA課件_第3頁
出租車計費器EDA課件_第4頁
出租車計費器EDA課件_第5頁
已閱讀5頁,還剩4頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

南京理工大學(xué)EDA設(shè)計(II)實驗報告作者:學(xué)號:學(xué)院(系): 自動化學(xué)院專業(yè): 自動化標(biāo)題 出租車計費器指導(dǎo)老師: 實驗日期: 2015年9月TOC\o"1-5"\h\z\o"CurrentDocument"1緒論 1\o"CurrentDocument"2系統(tǒng)總體設(shè)計 1\o"CurrentDocument"系統(tǒng)設(shè)計思想 1\o"CurrentDocument"系統(tǒng)功能概述 1\o"CurrentDocument"系統(tǒng)總體組成結(jié)構(gòu) 2\o"CurrentDocument"3系統(tǒng)各模塊詳細(xì)設(shè)計 2\o"CurrentDocument"計時模塊 2\o"CurrentDocument"按鍵控制模塊 2\o"CurrentDocument"動態(tài)顯示模塊 3\o"CurrentDocument"里程和車費計算模塊 4我的部分 4\o"CurrentDocument"調(diào)試 5\o"CurrentDocument"系統(tǒng)仿真 5\o"CurrentDocument"系統(tǒng)實際驗證 5\o"CurrentDocument"4.3調(diào)試過程中遇到的問題與解決方法 5\o"CurrentDocument"5總結(jié)與心得體會 6致謝 6參考文獻(xiàn) 7出租車計費器1緒論EDA是電子設(shè)計自動化(ElectronicDesignAutomation)的縮寫,發(fā)展于20世紀(jì)90年代。EDA技術(shù)就是以計算機(jī)為工具,設(shè)計者在EDA軟件平臺上,用硬件描述語言VHDL完成設(shè)計文件,然后由計算機(jī)自動地完成邏輯編譯、化簡、分割、綜合、優(yōu)化、布局、布線和仿真,直至對于特定目標(biāo)芯片的適配編譯、邏輯映射和編程下載等工作。EDA技術(shù)的出現(xiàn),極大地提高了電路設(shè)計的效率和可操作性,減輕了設(shè)計者的勞動強(qiáng)度。本次EDA設(shè)計使用MAX+plusII實驗開發(fā)系統(tǒng),學(xué)習(xí)并掌握VHDL硬件描述語言的基本語法以及設(shè)計方法和思想,將已學(xué)過的數(shù)字電子設(shè)計知識綜合運用于電子系統(tǒng)的設(shè)計中,掌握運用VHDL設(shè)計電子系統(tǒng)的流程和方法,加強(qiáng)和培養(yǎng)自己對電子系統(tǒng)的設(shè)計能力。綜合設(shè)計的任務(wù)是用一周的時間,在EDA軟件MAX+plusII上用VHDL語言設(shè)計完成一個電子技術(shù)綜合問題,小組成員分工,負(fù)責(zé)各個子模塊的設(shè)計,最后將各個模塊整合起來,連接整體電路,分配引腳,下載到實驗班上進(jìn)行測試。2系統(tǒng)總體設(shè)計系統(tǒng)設(shè)計思想用VHDL語言設(shè)計出符合功能要求的的出租車計費器系統(tǒng),完成設(shè)計后使用系統(tǒng)實驗箱下載驗證。系統(tǒng)功能概述1、計費功能:計費標(biāo)準(zhǔn)為按行駛里程收費,起步價為11元,車行3公里后每公里1.4元,車停止時不計費;2、實現(xiàn)模擬功能:能模擬汽車啟動、暫停及停止?fàn)顟B(tài);3、實現(xiàn)顯示功能:能在數(shù)碼管上顯示出公里數(shù)及總費用。2.3系統(tǒng)總體結(jié)構(gòu)整個計費系統(tǒng)的結(jié)構(gòu)如下圖所示,其計時模塊負(fù)責(zé)對實驗板上的時鐘信號進(jìn)行分配,產(chǎn)生合適的計數(shù)脈沖,供里程計算模塊和車費計算模塊的技術(shù)。而顯示模塊則將前兩者計算得到的結(jié)果顯示在數(shù)碼管上。開關(guān)控制模塊則接受實驗板上的開關(guān)信號,模擬出租車的起停。3系統(tǒng)各模塊詳細(xì)設(shè)計計時模塊計時模塊的時鐘源為試驗箱的CP2時鐘,頻率為1024Hz,在VHDL中經(jīng)過計數(shù)十分頻得到模擬的出租車百米行駛計數(shù)時鐘。其計數(shù)的邏輯比較簡單,不再詳細(xì)列出。按鍵控制模塊在按鍵控制模塊中我們引入了兩個撥碼開關(guān)K1和K2,其中K1是啟動和停止開關(guān),K2是暫停開關(guān),兩個按鍵向上撥邏輯值均為1,向下?lián)苓壿嬛稻鶠?。為了方便控制,我們引入了state這個兩位的二進(jìn)制變量,用它的值來標(biāo)記出租車的不同狀態(tài),其控制邏輯如下:鍵值邏輯結(jié)果K1=1,K2=1出租車處在停止?fàn)顟B(tài),但此次載客未結(jié)束,state=”00”K1=1,K2=0出租車處于載客運行計費狀態(tài),state-"11”2K1=0,K2任出租車處于載客結(jié)束的停止?fàn)顟B(tài),*意state=“01“或“10”(本設(shè)計里默認(rèn)為01)按鍵控制模塊程序如下:control:PROCESS(start,pause)beginif(start='0')thenstate<="01";elsif(pause='1')thenstate<="00";elsif(pause='0')thenstate<="11";endif;endPROCESS;動態(tài)顯示模塊由于此系統(tǒng)要用到實驗板上的8個數(shù)碼管,且每個數(shù)碼管顯示的數(shù)字都不相同,所以不能采用靜態(tài)顯示而必須使用動態(tài)顯示,動態(tài)顯示即依次向每位數(shù)碼管同時送出字形碼和相應(yīng)的位選,位與位之間利用延時程序進(jìn)行延時,當(dāng)延時程序非常短時,由于發(fā)光管的余輝和人眼視覺暫留作用,此時我們的人眼就分辨不出位與位之間有延時存在(人眼視覺暫留時間為0.05-0.2秒,延時程序應(yīng)當(dāng)根據(jù)這個范圍來調(diào)整),感覺各位數(shù)碼管同時都在顯示。此處用系統(tǒng)時鐘1024Hz來掃描數(shù)碼管,取得了不錯的效果。該模塊程序如下,后面tmp1為其它值時,各種情況與其值為0時相似,未有 列出:PROCESS(clk)variabletmp1,tmp2:integerrange0to10;BEGINif(clk'eventandclk='1')thentmp1:=tmp1+1;if(tmp1>=8)thentmp1:=0;endif;casetmp1iswhen0=>sel<="00000001”;tmp2:=CONV」NTEGER(fee_tenth);casetmp2iswhen0=>data<="11111100”;when1=>data<="01100000”;when2=>data<="11011010”;when3=>data<="11110010”;when4=>data<="01100110”;when5=>data<="10110110”;when6=>data<="10111110”;when7=>data<="11100000”;when8=>data<="11111110”;when9=>data<="11110110”;whenothers=>null;endcase;里程和車費計算模塊在里程和車費計算模塊中,只需要完成一個工作一一計數(shù)。里程的計算與之前所做數(shù)字鐘的計數(shù)沒有什么本質(zhì)區(qū)別,由于每個時鐘上升沿只要在原里程的基礎(chǔ)上加0.1,故計算的邏輯就是從低位(十分位)到高位(百位)層層判斷,每次加“1",滿‘9’歸零即可。而對于車費的計算,還需要對邏輯進(jìn)行如下調(diào)整:1.由于里程數(shù)小于3公里的情況下,車費要保持11元不變,這一要求可以用if語句進(jìn)行限制;2.車費的計算是每100公里1.4元,故在里程大于3公里的情況下每接受到計時模塊時鐘上升沿就要在原有車費基礎(chǔ)上加1.4即可。我的部分詳細(xì)介紹在本次綜合設(shè)計中,我負(fù)責(zé)的是動態(tài)顯示模塊,之前的基礎(chǔ)實驗中,我們已經(jīng)做過類似的顯示程序,我在自己編寫的時候參照該模塊進(jìn)行了一定的調(diào)整。對每一位進(jìn)行位選后分別顯示前端傳送過來的數(shù)據(jù),每一位只要顯示0到9,原本打算使用選擇循環(huán)方法顯示,但經(jīng)嘗試后出現(xiàn)了問題不能得到合理解決,故最終在與本組周珅宇同學(xué)商定后,由其整合為最終程序的分段式對每一位進(jìn)行顯示,隨程序段較長,但不易出現(xiàn)邏輯錯誤。4系統(tǒng)調(diào)試系統(tǒng)仿真我們將程序整合在一起,并未進(jìn)行仿真校驗,而是直接下載到實驗箱上驗證。系統(tǒng)實際驗證將程序整合完成以后,我們進(jìn)行了編譯與調(diào)試,多次修改完善,然后對照實驗指導(dǎo)書進(jìn)行管腳分配。在多次修改嘗試后,最終在試驗箱上成功完成了出租車計費器系統(tǒng)的相關(guān)要求,實現(xiàn)了計費功能、模擬功能和顯示功能,即實現(xiàn)了開始時制定的系統(tǒng)設(shè)計要求。調(diào)試過程中遇到的問題與解決方法數(shù)碼管顯示問題在進(jìn)行基礎(chǔ)實驗時我們發(fā)現(xiàn)數(shù)碼管顯示不能按照我們預(yù)先的設(shè)想,隨后我們利用資料對實驗箱的數(shù)碼管進(jìn)行了研究,發(fā)現(xiàn)基礎(chǔ)實驗中數(shù)碼管采用的是靜態(tài)顯示,由于本系統(tǒng)中數(shù)碼管各位需要顯示不同的數(shù)字,最后我們選定了動態(tài)掃描顯示的方法,問題得到了解決。取模運算問題在系統(tǒng)設(shè)計中期,我們本準(zhǔn)備采用公式計算的方法來得到車費,即將里程數(shù)的各位(mile_tenth,mile_unit,mile_decade,mile_hp)通過函數(shù)CON_INTEGER()A8位二進(jìn)制數(shù)轉(zhuǎn)化為整型數(shù),然后對各位加權(quán)求和得到整型數(shù)表示的里程數(shù),從而將其帶入公式后,計算得到對應(yīng)車費,再在用函數(shù)REM()分離出車費的各位,分別顯示。然而在實際編程中我們發(fā)現(xiàn),使用REM()函數(shù)需要添加頭文件IEEE.NUMERIC_STD。在QUARTUSII編譯環(huán)境下可以成功添加并編譯,然而在MAX+PLUSII下卻缺少這個頭文件,多次嘗試添加失敗后,我們放棄了計算法,采用另外的方法來實現(xiàn)顯示目的,即改為采用每次加1.4元的方法實現(xiàn)計費,最終取得了成功。調(diào)試中的問題針對器件的引腳配置不能馬虎,否則在下載到實驗箱上時會出現(xiàn)顯示位的錯亂,在實際調(diào)試中我們便遇到了這樣的問題,隨后進(jìn)行了分析糾正。5總結(jié)與心得體會本次實驗我初次接觸了VHDL語言,了解了其基本語法以及設(shè)計方法和思想。在經(jīng)過兩次基礎(chǔ)實驗的鍛煉之后,我已經(jīng)基本上熟悉了整個MAX+plusII實驗開發(fā)系統(tǒng),也能夠?qū)ζ溥M(jìn)行簡單的操作設(shè)計。在綜合設(shè)計中,我主要是負(fù)責(zé)了動態(tài)掃面顯示方面的設(shè)計工作,其原理與基礎(chǔ)實驗中的顯示方法相同,故在理解原程序的基礎(chǔ)上我對其進(jìn)行了改進(jìn),并最終由周珅宇同學(xué)對其進(jìn)行整合用于總的程序中去。經(jīng)過本次實驗,鍛煉了我的操作能力和系統(tǒng)設(shè)計能力,對于課堂知識進(jì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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論