版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、<p> 基于FPGA的出租車計費器的設計</p><p><b> 摘 要</b></p><p> 隨著EDA技術(shù)的日益成熟的發(fā)展趨勢, 與電子設計相關的設計技術(shù)與開發(fā)平臺等也都有了迅猛的發(fā)展??删幊踢壿嬈骷﨏PLD/FPGA的快速發(fā)展與深入應用也為設計人員提供了很大的便利。本文主要介紹一種基于FPGA芯片的出租車計費器的設計方法,對該設計方
2、法的研究意義和應用價值進行了闡述,描述了FPGA芯片的發(fā)展歷史和主要應用,介紹了VHDL(硬件描述語言)的主要功能和算法設計思想及設計流程。</p><p> 本次設計高效利用FPGA設計方法的多變性和可編程性等優(yōu)勢,有效的縮短研發(fā)周期,設計出體積小、功能強的出租車計費系統(tǒng)。能夠根據(jù)需求簡便、快捷地調(diào)整出租車計費價格,并且防止作弊現(xiàn)象等問題的產(chǎn)生。</p><p> 該出租車計費器主要
3、包含五大模塊:分頻模塊向各模塊提供驅(qū)動信號;計量模塊完成等待時間和所行駛路程數(shù)據(jù)的統(tǒng)計;計費方式選擇模塊是對汽車行駛過程不同計價狀態(tài)進行判斷輸出;計費模塊完成總費用統(tǒng)計計算;動態(tài)掃描模塊最后將累計等待計費時間、行駛路程以及計費總數(shù)等實時顯示出來。</p><p> 本次設計采用VHDL硬件描述語言編寫計費器的系統(tǒng)程序,QuartersⅡ軟件作為開發(fā)平臺,對程序進行了仿真,最后將生成的目標文件下載到教學實驗儀器Z
4、Y11EDA13B的FPGA芯片中,完成了相應的硬件測試和驗證,證明了出租車計費系統(tǒng)的可行性。</p><p> 關鍵詞:EDA;FPGA;出租車計費器;VHDL;QuartersⅡ</p><p><b> ABSTRACT</b></p><p> With the growing maturity of the developmen
5、t trend of EDA technology, and the technologies and the design of the platform which related to the electronic design , also have a very rapid development.The fast development of Programmable logic device and in deepth a
6、pplication also offers a great convenience to designers. This Paper introduces a method for FPGA chip to design a taxi billing system and describes the significance and value of the design methods , describes the history
7、 and development </p><p> Efficient use of FPGA design method variability and programmability advantages could effectively shorten the development cycle, and design a small but powerful taxi billing system.
8、 According to effectively address the needs of simple , it can quick adjust taxi meter rates to prevent cheating and other issues.</p><p> The taxi meter mainly includes five modules: the divide module modu
9、le provides drive signal to other module; the metering module works to statistical date about the wait1ing time and the distance traveled; the control module is used to judge output of the cars with different pricing st
10、atus; the billing module caculate statistical of the total cost; finally the dynamic scanning module billing will display the wait1 time, total distance traveled and billing in real time.</p><p> The billin
11、g system program is designed by the VHDL hardware description language, Quarters Ⅱ software as a development platform to simulate the program .Finally the generated file is downloaded to the teaching laboratory instrume
12、nts ZY11EDA13B FPGA chip,finish to test and validate the hardware ,and prove the taxi billing system is feasible.</p><p> Keywords:EDA;FPGA;TAXI;VHDL ;QuartersⅡ</p><p><b> 目 錄</b&g
13、t;</p><p><b> 第1章 緒論1</b></p><p> 1.1課題研究的背景及意義1</p><p> 1.2 出租車計費器的發(fā)展現(xiàn)狀1</p><p> 1.3 課題研究的內(nèi)容及方法2</p><p> 1.4 本章小結(jié)2</p><p&
14、gt; 第2章 相關設計工具介紹3</p><p> 2.1 EDA技術(shù)簡介3</p><p> 2.1.1 EDA的歷史背景3</p><p> 2.1.2 EDA的發(fā)展現(xiàn)狀3</p><p> 2.1.3 EDA的技術(shù)特點3</p><p> 2.2 FPGA簡介4</p>&
15、lt;p> 2.2.1 FPGA的結(jié)構(gòu)4</p><p> 2.2.2 FPGA的開發(fā)流程圖5</p><p> 2.3 VHDL簡介5</p><p> 2.3.1 VHDL的發(fā)展歷史6</p><p> 2.3.2 VHDL的優(yōu)勢特點6</p><p> 2.3.3 VHDL的開發(fā)流程
16、7</p><p> 2.4 QuartusII簡介及開發(fā)流程7</p><p> 2.5 本章小結(jié)8</p><p> 第3章 課題原理及各模塊的設計說明9</p><p> 3.1 課題設計原理9</p><p> 3.2 分頻模塊12</p><p> 3.2.1 分
17、頻模塊的功能描述12</p><p> 3.2.2 分頻模塊的仿真波形圖12</p><p> 3.2.3 分頻模塊器件圖12</p><p> 3.3 計量模塊13</p><p> 3.3.1 計量模塊的功能描述13</p><p> 3.3.2 計量模塊的流程圖14</p>&
18、lt;p> 3.3.3 計量模塊的模塊生成符號16</p><p> 3.3.4 計量模塊的仿真波形圖16</p><p> 3.4 計費方式選擇模塊17</p><p> 3.4.1 計費方式選擇模塊的功能描述17</p><p> 3.4.2 計費方式選擇模塊的流程圖17</p><p>
19、 3.4.3 計費方式選擇模塊的模塊生成符號18</p><p> 3.4.4 計費方式選擇模塊的仿真圖形19</p><p> 3.5 計費模塊19</p><p> 3.5.1 計費模塊功能描述19</p><p> 3.5.2 計費模塊的流程圖20</p><p> 3.5.3 計費模塊的模
20、塊生成符號21</p><p> 3.5.4 計費模塊的仿真圖形22</p><p> 3.6 顯示模塊22</p><p> 3.6.1 數(shù)碼管顯示電路22</p><p> 3.6.2 動態(tài)掃描的功能描述24</p><p> 3.6.3 動態(tài)掃描的模塊符號26</p><
21、p> 3.7 頂層模塊原理圖26</p><p> 3.8 本章小結(jié)28</p><p> 第4章 下載調(diào)試與結(jié)果驗證29</p><p> 4.1 下載及調(diào)試29</p><p> 4.2 實驗箱硬件驗證29</p><p> 4.2.1 無乘客上車30</p><p
22、> 4.2.2 乘客上車行駛中30</p><p> 4.2.3 停車等待31</p><p> 4.2.4 停車結(jié)算32</p><p> 4.2.5 下車復位33</p><p> 4.3 本章小結(jié)34</p><p><b> 總結(jié)35</b></p>
23、;<p><b> 參考文獻36</b></p><p><b> 致謝37</b></p><p><b> 第1章 緒論</b></p><p> 1.1課題研究的背景及意義</p><p> 隨著我國人民經(jīng)濟水平的不斷提高,越來越多的人們選擇出
24、租車做為出行最便捷的交通工具。出租車計價器作為計量器具有其特殊性和專用性,它只用在出租車汽車上,因此它與出租汽車車輛、出租汽車的收費辦法、出租汽車的管理經(jīng)營等密切相關[]。出租汽車計價器必須隨時適應它們的變化和需求。出租車計費器的使用也使出租車市場更加規(guī)范化和標準化,同時直觀、快捷的智能化計費方式也幫助人們節(jié)省了時間、創(chuàng)造了更多效益,使乘客與出租車運營者之間的矛盾得以解決。出租車的設計也更加注重于實用性和功能性,是不可缺少的一種計量工具
25、。</p><p> 隨著越來越多的消費群體乘坐出租車,廣大的乘客對計費器的功能也提出了更多的要求。用戶不僅要求計費器性能穩(wěn)定,計費準確,有防作弊功能;同時還要求其具有車票資料打印、IC卡付費、語音報話、電腦串行通信及稅控等功能[]。大部分地區(qū)的收費不都是一樣的,車型不一致使收費也會有區(qū)別,隨著油價的不斷波動或經(jīng)濟發(fā)展的影響,收費方式和收費標準也有可能在不斷的變化。這時候,采用傳統(tǒng)的基于單片機設計的出租車計費器
26、已不能滿足這些變化的需求,硬件電路復雜功能升級也很繁瑣,在運營過程中很容易產(chǎn)生干擾,影響用戶的使用;而且分立器件較多,將導致電源功耗大,芯片不易散熱,從而影響芯片的使用壽命[]?;贔PGA的出租車計費器,結(jié)合了硬件描述語言(VHDL)和邏輯結(jié)合為基礎的自頂向下的電路設計方法,成本投入較低,可靠性高,通用性也比較強;在不改變硬件電路的情況下,根據(jù)需求在VHDL程序中修改相關參數(shù),既可滿足不同地區(qū)、不同用戶的需求,同時也可以添加其他功能。
27、</p><p> 本課題所設計的出租車計費器采用軟件編程的形式,可以完成多種計費形式,使用的芯片不僅容量大,體積也比較小巧。而隨著電子科技的發(fā)展,可使得保存在芯片中的數(shù)據(jù)長時間不會丟失,因此本課題所設計的計費器不僅在現(xiàn)代有著較強的應用性,同時在未來市場中的也有很大的發(fā)展前景。</p><p> 1.2出租車計費器的發(fā)展現(xiàn)狀</p><p> 我國的第一家生產(chǎn)
28、計價器的企業(yè)是重慶市起重機廠,最早的計價器全部采用機械齒輪結(jié)構(gòu),只能完成簡單的計程功能,可以說早期的計價器就是一個里程表。隨著科學技術(shù)的發(fā)展,產(chǎn)生了第二代計價器。它采用了手搖計算機與機械結(jié)構(gòu)相結(jié)合的方式,實現(xiàn)了半機械半電子化。此時它在計程的同時還可以完成計價的工作。大規(guī)模集成電路的發(fā)展又產(chǎn)生了第三代計價器,也就是全電子化的加強。它的功能也在不斷完善。當單片機出現(xiàn)并應用于計價器后,現(xiàn)代出租車計價器的模型也就基本具備了,它可以完成計程,計價
29、,顯示等基本工作。單片機以及外圍芯片的不斷發(fā)展促進了計價器的發(fā)展[]。</p><p> 隨著數(shù)字系統(tǒng)的快速發(fā)展,F(xiàn)PGA等可編程數(shù)字器件的出現(xiàn),使計費器性能更趨于穩(wěn)定,可以實現(xiàn)更為復雜的功能,實現(xiàn)的功能也也有了多變的選擇,同時提高了計費器的靈活性,改善了其升級的能力。FPGA的多個優(yōu)質(zhì)性能使其成為了最具發(fā)展?jié)撡|(zhì)的數(shù)字器件,結(jié)合硬件描述語言可簡潔直觀的描述復雜的邏輯設計。因此基于FPGA的出租計費器在未來將會成
30、為很實用的計量工具,它的發(fā)展完全可以代替單片機,成為新一代的計費器發(fā)展時代。</p><p> 1.3課題研究的內(nèi)容及方法</p><p> 通過研究分析相關資料,對國內(nèi)外出租車計費器的設計方法有了深入的認識和了解,最終確定本設計方案將采用基于FPGA開發(fā)數(shù)字電路,以縮短開發(fā)周期,提高系統(tǒng)的穩(wěn)定性和可靠性;利用VHDL硬件描述語言編寫程序?qū)ο到y(tǒng)的功能進行設計,從而將產(chǎn)品更新?lián)Q代的能力大
31、大提高。</p><p> 本設計采用計算總行駛路程和累計等待時長的兩種狀態(tài)收費。按照大連市的出租車收費標準進行設定:</p><p> ?。?)出租車起步價設定為10元,當行駛里程小于3km時,只收取起步價;當行駛的里程數(shù)大于3km時,則在起步價的基礎上每公里按2元計費。 </p><p> ?。?)停
32、車等待累計時長超過3min時,超出部分每分鐘按0.3元計費。</p><p> ?。?)行駛里程顯示:顯示的范圍為0~99km。單位為km。分辨率1km</p><p> ?。?)累計等待時間顯示:顯示的范圍為0~59min。單位為min。分辨率1min</p><p> ?。?)總費用顯示:顯示的范圍為0~999.9,單位為元,分辨率0.1元 </p>
33、<p> 測量出租車行駛距離的傳感器電路由實驗箱的開關和時鐘信號代替,輸出信號由數(shù)碼管和指示燈同時顯示。 </p><p><b> 1.4本章小結(jié)</b></p><p> 本章主要介紹了出租車計費器的發(fā)展歷史及意義,對出租車在國內(nèi)的發(fā)展現(xiàn)狀做了一些概述,通過相關的調(diào)研使自己對出租車計費器有了更深刻的認識,并對
34、其未來的的發(fā)展趨勢也有了自己的看法,幫助自己在此次出租車計費器的設計更具實用性和規(guī)范性。</p><p> 第2章 相關設計工具介紹</p><p> 2.1 EDA技術(shù)簡介</p><p> EDA是電子設計自動化(Eeectronic Design Automation)的縮寫。EDA工具是以計算機的硬件和軟件為工作平臺,集數(shù)據(jù)庫、圖形學、圖論與拓撲邏輯、
35、計算數(shù)學、優(yōu)化理論等多學科最新成果研制的計算機輔助設計通用軟件包 。從功能實用性方面EDA主要包含以下幾個部分:用來表示采用EDA技術(shù)進行電子設計的硬件描述語言;使EDA技術(shù)設計電子系統(tǒng)更加自動化、智能化的一些軟件開發(fā)工具;EDA技術(shù)設計過程中的載體大規(guī)??删幊踢壿嬈骷?;以及最終對電子設計進行仿真驗證的下載及硬件驗證工具等。</p><p> 2.1.1 EDA的歷史背景</p><p>
36、; 迄今為止,EDA已經(jīng)歷了30多年的發(fā)展,可將這漫長的歲月大致分為三大階段。第一階段在70年代,這個時期人們開始借助于計算機進行相關設計,例如完成PCB布局布線、IC版圖編輯等,是計算機系輔助設計階段(CAD)。當發(fā)展到80年代時,設計者不但可以利用EDA技術(shù)圖形進行繪制之外,還能用CAD進行電路的功能和結(jié)構(gòu)的設計,結(jié)合電器連接表將兩者結(jié)合在一起,是工程設計得以實現(xiàn),這個階段成為計算機輔助工程階段(CAE);到了90年代,人們對CA
37、E的應用已經(jīng)非常廣泛了,用其是想電路的邏輯仿真,相關原理圖的輸入,對電路進行分析、布局布線,以及對設計的分析驗證等,這個時候EDA的發(fā)展則依然進入了第三個階段電子系統(tǒng)設計自動化極端(EDA)[]。</p><p> 2.1.2 EDA的發(fā)展現(xiàn)狀</p><p> 目前中國的EDA市場中,絕大多數(shù)的設計者面臨的是小型ASIC以及PC主板領域,只有少數(shù)的設計者從事復雜的芯片系統(tǒng)設計工作。為
38、了使我國的EDA技術(shù)更加具有競爭力,設計者們也在不斷的學習和借鑒國外各行業(yè)的頂尖技術(shù)。EDA軟件開發(fā)技術(shù)目前主要以美國為主。韓國和日本雖然都有各自的ASIC設計工具,但是都是不對外開放的。EDA技術(shù)的應用層面也越來越廣泛,已經(jīng)悄然聲息地涉及到我們生活的方方面面。</p><p> 2.1.3 EDA的技術(shù)特點</p><p> 隨著EDA的被大量的應用到日常生活中,對EDA技術(shù)的研究也
39、越來越深入,在實現(xiàn)EDA技術(shù)更深層的應用時,需要對EDA的基本特點有著一定的了解: (1)EDA采用“自頂向下”設計方法。與傳統(tǒng)電子設計所采用的“自底向上”的方法相比,能夠大大降低開發(fā)成本,不易產(chǎn)生新的錯誤,設計的效率也比較高,將功能在結(jié)構(gòu)上完成了模塊化,即可分塊進行反正和結(jié)果驗證。也比較方便設計者對程序設計的香瓜修改。</p><p> ?。?)設計采用硬件描述語言,結(jié)合軟件編程的優(yōu)勢特點,可以將電子
40、系統(tǒng)的邏輯功能與硬件設計電路的結(jié)構(gòu)融合。硬件描述語言也是目前電子行業(yè)的主流,降低制造成本,縮短開發(fā)時長,也比較方便應用于大量產(chǎn)品的生產(chǎn)。因此在研發(fā)和工業(yè)設計中且都有廣泛的應用。</p><p> ?。?)能夠?qū)崿F(xiàn)邏輯綜合和優(yōu)化。通過邏輯在綜合可以將抽象的描述通過比較低級的抽象進行描述。優(yōu)化功能依照布爾方程等效原則,分析器件邏輯綜合結(jié)果,將一些比較復雜的邏輯單元用綜合結(jié)果代替,最終將其映射成新的一組邏輯方程。通過優(yōu)
41、化功能,可以在將資源的消耗率降到最低并將時延縮降到最短。</p><p> (4)具有規(guī)范化的軟件架構(gòu)和開放性。通過軟件架構(gòu)可以為EDA的相關開發(fā)平臺提供開發(fā)環(huán)境,以及各種與數(shù)據(jù)相關的內(nèi)容。通過軟件架構(gòu)可以將不同型號、不同廠商的工具進行整合,集中在一個統(tǒng)一的、便于管理的環(huán)境下,因此更加有利于資源的共享和優(yōu)化配置。</p><p> 2.2 FPGA簡介</p><
42、p> FPGA(Field Programmable Gate Array ,現(xiàn)場可編程門陣列)是在PAL、GAL、CPLD等可編程器件的基礎上進一步發(fā)展起來的高性能可編程邏輯器件。他是做為專用集成電路(ASIC)領域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點。FPGA可以通過Verilog或VHDL硬件描述語言進行電路的設計,然后經(jīng)過綜合與布局,快速地燒錄至FPGA上進行測試。
43、FPGA一般采用SRAM工藝,也有一些采用Flash工藝或反熔絲(Anti-Fuse)工藝等。FPGA集成度很高,其器件密度從數(shù)萬門到上千萬門,可以完成復雜的時序與組合邏輯電路功能,適用于高速、高密度的高端數(shù)字邏輯電路設計領域。FPGA的基本組成部分有可編程輸入/輸出單元、基本可編程單元、嵌入式RAM、豐富的布線資源、底層嵌入功能資源、內(nèi)嵌專用硬核(Hard Core)等[]。</p><p> 2.2.1 F
44、PGA的結(jié)構(gòu)</p><p> 至今為止,制造FPGA芯片的公司主要有Altera、Xilinx、Lattice以及Actel,制造了大量品種不一、型號各異的產(chǎn)品,雖然這些芯片的內(nèi)部結(jié)構(gòu)和技術(shù)指標都不一致,但他們都有一個相同的特點,就是將可配置的邏輯功能塊排成陣列,由互聯(lián)資源(可編程)連接這些邏輯塊,從而可以對其進行不同的設計。存放數(shù)據(jù)的SRAM和三種可編程的電路組成共同構(gòu)成了FPGA,三種電路包括可配置邏輯塊
45、(CLB)、輸入輸出模塊(IOB)、以及互連資(IR)。是實現(xiàn)邏輯功能的基本單元是可配置邏輯模塊,由觸發(fā)器、數(shù)據(jù)選擇器等器件組成。輸入輸出模塊一般位于芯片的四周,主要有輸入/輸出緩存器、輸入/輸出觸發(fā)器等組成。IOB可被設定為雙向I/O功能。要行程多種功能復雜的系統(tǒng),可以通過互聯(lián)資源可將所有的可編程邏輯模塊和輸入/輸出模塊相互連接起來[]。</p><p> FPGA的基本結(jié)構(gòu)圖如圖2.1所示:</p&g
46、t;<p> 圖2.1 FPGA芯片的基本結(jié)構(gòu)</p><p> 2.2.2 FPGA的開發(fā)流程圖</p><p> 基于CPLD/FPGA系統(tǒng)設計的工作流程說明:</p><p> (1)電子設計師按照“(top-down)”的設計方法進行系統(tǒng)劃分。</p><p> ?。?)編寫VHDL源程序。而且,也可以采用原理圖
47、輸入方式。</p><p> ?。?)將以上的設計輸入QuartusⅡ中進行編譯。</p><p> ?。?)進行早期的功能仿真,主要是檢驗系統(tǒng)功能設計是否符合要求。</p><p> ?。?)利用適配器將綜合后的網(wǎng)絡表文件針對某一具體的目標器件進行邏輯映射操作</p><p> ?。?)在適配完成后,便可進行時序仿真,如果仿真結(jié)果不理想,就
48、進行適當修改直至滿足設計要求。</p><p> ?。?)將產(chǎn)生的.sof文件通過JTAP下載電纜載入到目標芯片CPLD/FPGA</p><p> 2.3 VHDL簡介</p><p> VHDL(Very_High_Speed Integrated Circuit Hardware Description Language )是標準硬件描述語言。在未來數(shù)字系
49、統(tǒng)的設計將會全部采用VHDL和VerilogHDL語言??梢詫?shù)字系統(tǒng)的接口、功能、結(jié)構(gòu)等進行描述。包含用于描述硬件結(jié)構(gòu)的語句,相比普通的計算機高級語言語言風格和描述方式也比較類似。使用VHDL的程序的結(jié)構(gòu)特點可以把一個工程設計,或者設計實體(元件、電路模塊或一個完整系統(tǒng))分為可視的外部端口,和不可視的內(nèi)部設計,即完成這項設計的功能實現(xiàn)和基本算法。當一個設計的外部端口被定義且完成了內(nèi)部開發(fā),那么其它的設計也可以去調(diào)用此設計。VHDL系統(tǒng)
50、的基本點就是將一個設計的實體分成內(nèi)部和外部[]。</p><p> 2.3.1 VHDL的發(fā)展歷史</p><p> 在20世紀中期,電子技術(shù)憑借其獨特的優(yōu)勢在美國國防工業(yè)中得到廣泛的認可。隨著電子技術(shù)設計方法和集成工藝的飛速發(fā)展,1981年提出了“超速集成電路硬件描述語言”,簡稱VHDL(VHSIC Hardware Description Language ),一開始只是將其做為電
51、路文本化的一種標準,即讓其他人更容易理解使用文本描述的設計,可以作為模型語言,也可用軟件編譯、仿真[]。</p><p> 1986年,IEEE致力于VHDL語言的標準化工作,為此成立了VHDL語言標準化小組。經(jīng)歷了多次的修改與擴充,直到1987年12月VHDL語言才被接納為IEEE1076標準。1988年,Milstd454規(guī)定所有為美國國防部設計的ASIC產(chǎn)片必須采用VHDL語言來進行描述。1993年,IE
52、EE1076標準被修訂,更新為新的VHDL語言標準IEEE 1164。1996年,IEEE1076.3成為VHDL語言的綜合標準。</p><p> 1995年,我國國家技術(shù)監(jiān)督局制定的《CAD通用技術(shù)規(guī)范》推薦VHDL語言作為我國電子設計自動化硬件描述語言的國家標準。至此,VHDL語言在我國迅速普及,現(xiàn)在這門語言已經(jīng)成為從事硬件電路設計的開發(fā)人員所必須掌握的一項技術(shù)。</p><p>
53、 2.3.2 VHDL的優(yōu)勢特點</p><p> 目前,很多電子設計者經(jīng)常采用VHDL作為標準硬件描述語言,是因為認識到其比較強的通用性,基于其突出的性能優(yōu)勢:</p><p> (1)優(yōu)秀的靈活性和強大的功能性。VHDL語言結(jié)構(gòu)功能強大,可以用簡潔的語言描述復雜的邏輯器件設計。能夠多層次的描述設計功能,還提供創(chuàng)建模塊設計和支持階層設計。</p><p>
54、 (2)程序可以移植。 VHDL語言可以在在不同的模擬工具、工作平臺以及設計工具中進行移植。VHDL語言還可以模擬綜合描述的設計,從而節(jié)省了設計者的時間。</p><p> ?。?)設計獨立于器件。當采用VHDL語言設計硬件電路時,設計者無需在設計之初就選定邏輯器件,在完成設計系統(tǒng)的功能描述后,可以使用不同的邏輯器件來實現(xiàn)其功能。</p><p> ?。?)可以對設計性能進行評估。設計人員
55、可以進行一個完整的VHDL語言描述,并且可以對它進行綜合,生成選定的器件結(jié)構(gòu)和邏輯功能,然后再對設計結(jié)果進行測試、評估,最后選用最適合該設計的邏輯器件。</p><p> (5)語法的規(guī)范性較強,益于共享。IEEE的工業(yè)標準硬件是VHDL,規(guī)范較為統(tǒng)一嚴格,利于共享。</p><p> 2.3.3 VHDL的開發(fā)流程</p><p> 為了能使采用VHDL語言
56、設計的電路有更好的可靠性和準確性,設計人員首先在設計之前應對此次設計的目的及相關要求有著非常清楚的認識,然后選擇合適的設計方法和邏輯器件,最終根據(jù)既定的設計流程完成設計:</p><p> ?。?)根據(jù)硬件電路的要求,設計出總體模型,并根據(jù)硬件內(nèi)外部的連接關系,對各部分進行定義。</p><p> (2)根據(jù)硬件系統(tǒng)的具體功能編寫能夠?qū)崿F(xiàn)相應功能的VHDL語言程序。</p>
57、<p> ?。?)然后可對VHDL語言程序進行編譯,根據(jù)實際情況,對程序進行優(yōu)化和修改。</p><p> ?。?)完成程序的編譯后可生成相應的邏輯器件,布局布線,再次對VHDL程序進行綜合和調(diào)試。</p><p> ?。?)再一次對系統(tǒng)進行編譯,防止由于布局布線或一些其它的操作導致設計功能的異常。</p><p> ?。?)最終將程序下載到目標器件中,
58、即可完成設計。</p><p> 2.4 QuartusII簡介及開發(fā)流程</p><p> QuartersⅡ是全球最大的可編程邏輯器件供應商之一的Altera公司所推出的產(chǎn)品。針對FPGA/CPLD器件,Altera公司生產(chǎn)了相應的軟件設計產(chǎn)品,目前被廣泛應用的則是MAX+plusⅡ和QuarterⅡ。QuarterⅡ是Altera公司推出的第四代也是最新的集成設計環(huán)境,能夠支持目
59、前所有主流FPGA的設計開發(fā)。該設計軟件改進了編程性能、提升了功能性、解決了潛在的設計延遲等潛在問題。同時,在工業(yè)領域也有很強大的優(yōu)勢,很多工業(yè)用的芯片,都是使用Quartus Ⅱ進行開發(fā)設計。QuartersⅡ支持原理圖、VHDL、VerilogHDL等多種不同的設計輸入方式并且具備仿真功能。Quartus II還被指定為唯一一種設計工具,為FPGA和固定功能的HardCopy器件來統(tǒng)一設計流程。同時設計師使用低價位的Quartus
60、II,不僅可以完成FPGA的功能驗證和原型設計,又可以用于批量成品生成。</p><p> QuartersⅡ的運行環(huán)境有關Windows、Linux以及Unix,通過QuartersⅡ可以用腳本文件完成流程的設計,為設計人員提供了功能齊全、操作簡易的圖形操作界面。因此QuartersⅡ具有很快的運行速度,集中的功能操作,統(tǒng)一的界面設計方式,容易快速學習利用等優(yōu)點[]。</p><p>
61、 QuartersⅡ的開發(fā)設計流程如圖2.2所示:</p><p> 圖2.2 QuartersⅡ開發(fā)設計流程圖</p><p><b> 2.5本章小結(jié)</b></p><p> 本章主要介紹了與此次設計相關的一些開發(fā)工具。簡單介紹了EDA技術(shù),并對其發(fā)展歷史和現(xiàn)狀,所使用到的設計方法、設計語言及工具等展開了進一步的說明。同時,還介紹
62、了FPGA的結(jié)構(gòu)特點、應用優(yōu)勢以及開發(fā)流程,概述了VHDL語言,并對其發(fā)展歷史、開發(fā)優(yōu)勢以及設計流程等有了全面的介紹。同時還對此次設計的開發(fā)環(huán)境Quartus II以及做了相應的闡述。對本次設計所涉及的技術(shù)層面的知識有了全面的認識。</p><p> 第3章 課題原理及各模塊的設計說明</p><p><b> 3.1課題設計原理</b></p>&
63、lt;p> 根據(jù)緒論中介紹的出租車計費器的設計要求,設定系統(tǒng)的外部端口信號:</p><p> 輸入信號:時鐘信號clk,開始計費信號start,車輛停止行駛時的等待信號wait1,行駛信號 fin。</p><p> 輸出信號:總計費數(shù)c0~c3,累計公里數(shù)km0~km1,累計等待時長min0~min1。</p><p> 本次設計的出租車計費系統(tǒng)主
64、要分為五大模塊:分頻模塊、計量模塊、計費模塊、計費方式選擇模塊以及顯示模塊,系統(tǒng)結(jié)構(gòu)框圖如圖3.1所示。</p><p> 計量模塊是實現(xiàn)整個系統(tǒng)里程計數(shù)和時間計數(shù)的重要部分;計費方式選擇模塊可以實現(xiàn)不同計費方式的選擇,根據(jù)使能端信號選擇系統(tǒng)是根據(jù)里程計費還是等待時間計費;計費模塊則將根據(jù)計量模塊提供的行駛里程和等待時間以及分頻模塊提供的計費單價將總費用計算出來;最終顯示模塊將所有的統(tǒng)計數(shù)據(jù)包括里程數(shù)、累計等待
65、時長、總費用通過數(shù)碼管直觀地顯示出來。</p><p> 圖3.1系統(tǒng)的結(jié)構(gòu)框圖</p><p> 本次設計需要通過分頻模塊將脈沖輸入信號clk_750分頻為20hz、3hz、1hz。20hz與3hz為計費模塊的驅(qū)動信號,1hz為計量模塊的驅(qū)動信號,即每當計量模塊完成一次計數(shù)時,計費模塊根據(jù)內(nèi)部程序的選擇完成20次或者3次計數(shù)。因此,就可以實現(xiàn)行駛過程中每公里2元或等待過程中每分鐘0.
66、3元的標準計費。</p><p> 在出租車計費器的實際使用中,汽車行駛時的行駛信號 信號可以用光電傳感器、霍爾效應傳感,以及干簧繼電器作為里程傳感器來進行信號采集。在汽車行駛時,每前進1米,安裝在蝸輪變速器上的磁鐵將控制傳感器關閉一次,即輸出一個脈沖,當汽車行駛到1km時,將輸出100個脈沖。</p><p> 本次設計使用實驗箱中的開關和時鐘信號代替?zhèn)鞲衅麟娐?,計費信號start和
67、行駛信號fin為“1”時,當計量模塊的時鐘信號的的上升沿到來時,計程將完成一次計數(shù),100個時鐘信號為1km,本次設計在3km之內(nèi)時只收取起步價,所以當接受到300個行駛信號 后,則每km將增加2元,計價分辨率設定為0.1,所以在20個脈沖系統(tǒng)將增加0.1元。</p><p><b> 本次的設計描述:</b></p><p> start為開始計費信號,當sta
68、rt處于高電平時,說明有乘客上車,則系統(tǒng)開始計費。當出租車在正常行駛計費時,fin信號為“1”,wait1位于低電平,系統(tǒng)進入行駛計費狀態(tài),內(nèi)部程序判斷行駛公里數(shù)是否大于3km,當超過3km時,數(shù)碼管計費部分開始跳動,正常計費;行駛過程中如遇到紅燈或者需停車等待時,則將fin信號置“0”,同時將wait1置于高電平,則進入等待計費模式,內(nèi)部程序判斷等待時長是否超過3min,當超過3min時數(shù)碼管計費部分將按照每分鐘0.3元的標準進行跳動
69、計費。</p><p> 當車子到達目的地時,則將wait1與fin同時置“0”,此時則停止計費,可查看行駛總公里數(shù)、等待累計時長以及計費總額;當乘客下車且不等待時,將start置于低電平,系統(tǒng)停止計費且清零復初值,起步價將重新置于10元。具體設計流程圖如圖3.2所示:</p><p> 圖3.2系統(tǒng)設計流程圖</p><p><b> 3.2分頻模
70、塊</b></p><p> 3.2.1 分頻模塊的功能描述</p><p> 由于本次設計需要用到特定頻率的時鐘脈沖信號,實驗箱提供的時鐘信號不能滿足此要求。因此通過分頻器將較大頻率的時鐘信號通過分頻得出較小的頻率。設計時選用750khz有源晶振,因此近似得到為計費模塊提供驅(qū)動信號的20hz、3hz的方波信號,以及用于計量模塊驅(qū)動信號的占空比為50%的1hz的時鐘脈沖信號
71、,此模塊采用了VHDL語言進行實現(xiàn),將750khz的的時鐘信號分別進行了37500次、25000次以及750000次分頻。</p><p> 3.2.2 分頻模塊的仿真波形圖</p><p> 圖3.3分頻模塊仿真波形圖</p><p> 3.2.3 分頻模塊器件圖</p><p> 圖3.4為分頻模塊所生成的器件圖,其輸入輸出定義如
72、下:</p><p> 圖3.4分頻模塊生成符號</p><p><b> 輸入信號:</b></p><p> clk_750:由系統(tǒng)提供用于分頻時鐘信號;</p><p><b> 輸出信號:</b></p><p> clk_20:實現(xiàn)每公里計費2元的計費驅(qū)動
73、信號,頻率20hz;</p><p> clk_3:實現(xiàn)等待時每分鐘0.3元的計費驅(qū)動信號,頻率3hz;</p><p> clk_1:計量模塊的驅(qū)動信號,頻率1hz;</p><p><b> 3.3計量模塊</b></p><p> 3.3.1計量模塊的功能描述</p><p> 模
74、塊的輸入信號含義:</p><p> ?。?)start為整個系統(tǒng)的開始計費信號,當start為高電平時,則說明此時有乘客上車,系統(tǒng)將開始計費。當start為低電平時,說明客人下車,撥動start系統(tǒng)復位,將記錄的數(shù)據(jù)清零,并重新預置起步價10元。 </p><p> ?。?)wait1為等待計費控制信號。當車子在行駛過程中遇到紅燈或其它
75、情況停止的時候,wait1為高電平時,系統(tǒng)將開始記錄等待時長,當wait1置“0”時,則停止等待;當start置“0”時,將記錄的時長清零。</p><p> ?。?)fin為行駛信號信號。當乘客上車車子開始啟動時,行駛信號為“1”時,則系統(tǒng)開始記錄行駛里程數(shù),當fin置“0”時,則暫停行駛里程數(shù)據(jù)的顯示記錄,start置零“0”是,系統(tǒng)則將記錄的總行駛里程數(shù)清零。</p><p> ?。?/p>
76、4)clk1是由分頻模塊產(chǎn)生的計量模塊的時鐘驅(qū)動信號。當clk1的上升沿到來時,系統(tǒng)將進行一次計時或計程的累加。</p><p> 模塊的輸出信號含義:</p><p> ?。?)en0為輸出到計費選擇模塊的計費方式選擇信號。當車輛行駛超過3km時,en0將變?yōu)椤?”,輸出到計費選擇模塊,將由分頻模塊提供的20hz計費驅(qū)動信號輸出給計費模塊,完成當行駛超過3km時每公里2元的計費功能。&
77、lt;/p><p> (2)en1為輸出到計費選擇模塊的計費方式選擇信號。當車輛行駛超過3min時,en1將變?yōu)椤?”,輸出到計費選擇抹開,將由分頻模塊提供的3hz計費驅(qū)動信號輸出給計費模塊,完成當行駛超過3min時每分鐘0.3元的計費功能。</p><p> ?。?)k1、k0將計量模塊的計程數(shù)據(jù)輸出到數(shù)碼管實時顯示。k0為計程數(shù)據(jù)的個位,k1為十位。</p><p&g
78、t; (4)m1、m0將計量模塊的等待計時數(shù)據(jù)輸出到數(shù)碼管實時顯示。m0位計時數(shù)據(jù)的個位,最高顯示9,m1位計時數(shù)據(jù)的十位,最高顯示為5。</p><p> 本模塊為整個系統(tǒng)的核心模塊,完成正常行駛狀態(tài)下的計程功能和等待狀態(tài)下的計時功能。</p><p> 實現(xiàn)計程功能:當start置“1”時,系統(tǒng)判斷車輛運行狀態(tài)。當?shù)却嬞M信號wait1為“0”、行駛信號fin為“1”時,說明車輛
79、正常行駛,則累計行駛里程數(shù)。計量模塊將行駛總里程數(shù)輸出到數(shù)碼管進行實時顯示。當clk1的上升沿到來時,計程數(shù)據(jù)自動加1,并判斷行駛里程數(shù)是否超過3km,若小于3km,此模塊的計費選擇信號en0為0;當超過3km時,en0將變?yōu)椤?”,en0輸出到計費方式選擇模塊確定不同的計費方式,最后輸出給計費模塊累計行駛里程的費用。計程的最大量程為99km,當超過99km時,計程數(shù)據(jù)將清零,并重新開始累加。</p><p>
80、 實現(xiàn)計時功能:當start置“1”時,系統(tǒng)判斷車輛運行狀態(tài)。若等待計費信號wait1為“1”、行駛信號fin為“0”時,則車輛進入停車等待計費模式,計量模塊將等待計時數(shù)值輸出到數(shù)碼管實時顯示,當clk1的上升沿到來時,則計時數(shù)據(jù)自動加1,同時判斷等待時長是否超過3min,當超過3min時,此模塊的使能信號en1將變?yōu)楦唠娖剑徒o計費方式選擇模塊確定不同的計費方式,而后輸出到計費模塊,實現(xiàn)等待計時計費功能。計時的最大量程為59min,當
81、超過59min時,計時數(shù)據(jù)將清零,并重新開始累加。</p><p> 3.3.2計量模塊的流程圖</p><p> 計量模塊為本系統(tǒng)的核心模塊,通過對設計功能進行分析后得到本模塊的流程設計如圖3.5所示。</p><p> 圖3.5計量模塊流程圖</p><p> 3.3.3計量模塊的模塊生成符號</p><p&g
82、t; 根據(jù)流程圖以及對該模塊的描述,采用VHDL語言編程后得到如圖3.6所示的計量模塊的生成符號,其輸入輸出信號的定義如下:</p><p> 圖3.6計量模塊生成符號</p><p><b> 輸入信號:</b></p><p> start:由撥動開關提供的開始計費信號;</p><p> fin:有撥動開
83、關提供的行駛信號;</p><p> wait1:由撥動開關提供的停車等待計費信號;</p><p> clk1:通過分頻模塊得到的計量模塊的驅(qū)動信號;</p><p><b> 輸出信號:</b></p><p> en0:向計費方式選擇模塊提供啟動按里程計費的使能信號;</p><p>
84、; en1:向計費方式選擇模塊提供啟動按等待時長計費的使能信號;</p><p> k1[3..0]:輸出到數(shù)碼管的總行駛里程數(shù)的高位信號;</p><p> k0[3..0]:輸出到數(shù)碼管的總行駛里程數(shù)的低位信號;</p><p> m1[3..0]:輸出到數(shù)碼管的總等待時長的高位信號;</p><p> m0[3..0]:輸出到
85、數(shù)碼管的總等待時長的低位信號;</p><p> 3.3.4計量模塊的仿真波形圖</p><p> 圖3.7計量模塊仿真波形圖</p><p> 從仿真波形圖3.7中可以看出,start信號時鐘為“1”,系統(tǒng)一直處于計費狀態(tài),當行駛信號fin為“1”時,則k0、k1開始記錄里程,每次當k0滿9時,則自動向k1進1,當k0大于3時en0自動置“1”; wait1
86、置“1”,計費器進入停車等待計費,m0,m1將開始計時,m0滿9時,則自動向m1進1,當m0大于3時en1置“1”。</p><p> 3.4計費方式選擇模塊</p><p> 3.4.1計費方式選擇模塊的功能描述</p><p> 計費方式選擇模塊主要是根據(jù)en0、en1的值選擇輸出頻率分別為20hz和3hz的時鐘脈沖。en0、en1信號由計量模塊提供,不同
87、頻率的時鐘脈沖信號由分頻模塊提供。輸出的時鐘脈沖信號將輸出給計費模塊。</p><p> 當使能信號en0為“1”時,說明車子行駛的路程數(shù)超過了3km’,則計費方式選擇模塊將20hz的行駛計費單價脈沖信號輸出給計費模式,從而在10元底價的基礎上開始計程計費。</p><p> 當?shù)却嫊r的使能信號en1為“1”時,說明出租車停車等待時長超過了3min,系統(tǒng)進入等待計費模式,則計費方式選
88、擇模塊選擇等待計費脈沖3hz提供給計費模塊,從而開始進行等待計時計費。</p><p> 3.4.2計費方式選擇模塊的流程圖</p><p> 通過對計費方式選擇模塊的功能設計進行分析后,得出如圖3.8所示的計費方式選擇模塊的流程設計圖:</p><p> 圖3.8計費方式選擇模塊流程圖</p><p> 3.4.3計費方式選擇模塊的
89、模塊生成符號</p><p> 根據(jù)流程圖以及對該模塊的描述,采用VHDL語言編程后得到如圖3.9所示的計費方式選擇模塊,其輸入輸出信號的定義如下:</p><p> 圖3.9計費方式選擇模塊生成符號</p><p><b> 輸入信號:</b></p><p> ent0:大于3km時開始計費的使能信號,由計量
90、模塊提供;</p><p> ent1:等待時間超過3min開始計費的使能信號,由計量模塊提供;</p><p> clk_in1:分頻后得到的每公里計費單價脈沖信號,由分頻模塊提供;</p><p> clk_in2:分頻后得到的等待時每分鐘單價脈沖信號,由分頻模塊提供;</p><p><b> 輸出信號:</b&
91、gt;</p><p> clk_out:計費方式選擇模塊選擇的計費脈沖驅(qū)動信號,送給計費模塊;</p><p> 3.4.4計費方式選擇模塊的仿真圖形</p><p> 計費方式選擇模塊的仿真圖形如圖3.10所示:</p><p> 圖3.10計費方式選擇模塊仿真波形圖</p><p> 此模塊的仿真輸出部
92、分有延遲。由波形圖可以看出,當使能信號ent0處于高電平時,系統(tǒng)為行駛里程計費狀態(tài),此時計費方式選擇模塊則選擇里程計費頻率clk_in1進行輸出;當使能信號en1處于高電平時,系統(tǒng)進入停止等待計費,系統(tǒng)將選擇等待計費頻率clk_in2進行輸出。因此計費方式選擇模塊就完成了對不同計價方式的選擇。</p><p><b> 3.5 計費模塊</b></p><p>
93、3.5.1計費模塊功能描述</p><p> 分析功能設計可知,當計費信號start為“1”時,計費模塊開始工作。計費方式選擇模塊根據(jù)車輛不同的運行狀態(tài)選擇不同的計費單價脈沖送給計費模塊clk2信號,計費模塊根據(jù)clk2信號完成相應的費用累加。</p><p> 計費模塊的計費過程描述:</p><p> ?。?)當start為高電平時,計費模塊開始工作。行駛里
94、程數(shù)小于3km并且停車等待累計時長不超過3min時,計費模塊只輸出起步價10元,數(shù)碼管的計費區(qū)域?qū)⒉粫a(chǎn)生跳動。</p><p> ?。?)當start為高電平,汽車在行駛過程中,行駛里程數(shù)超過3km時,計費方式選擇模塊將頻率為20hz的脈沖信號送給計費模塊的clk2,計費模塊則在起步價的基礎上,汽車每行駛1公里,累加2元。</p><p> (3)當start為高電平時,在計費狀態(tài)下汽
95、車停車等待,當?shù)却塾嫊r長超過3min時計費方式選擇模塊輸出3hz的計費脈沖信號給計費模塊的clk2信號,則每分鐘將在原費用的基礎上加收0.3元。</p><p> ?。?)當start為高電平且clk2沒有輸入,即行駛信號fin和停車等待計費信wait1號同時為低電平時,則計費數(shù)值不再變化,實際應用為停車結(jié)算功能。</p><p> ?。?)start為低電平,則系統(tǒng)將會復位,把之前記錄
96、的計費數(shù)據(jù)清零后并重新置入起步價10.0元。</p><p> 計費模塊輸出信號: c0、c1、c2、c3為車費的8421BCD碼,分別表示小數(shù)點后一位、個位、十位和百位數(shù)據(jù),即車費最大量程為999.9元,當大于999.9時,系統(tǒng)將自動清零,并重新開始累加。</p><p> 3.5.2計費模塊的流程圖</p><p> 計費模塊是此次設計中實現(xiàn)計費功能的核心
97、模塊,根據(jù)所設功能得出如圖3.11所示的流程圖。</p><p> 圖3.11計費模塊設計流程圖</p><p> 3.5.3計費模塊的模塊生成符號</p><p> 通過分析系統(tǒng)的功能要求和本模塊的設計流程圖,采用VHDL語言編寫程序后得到如圖3.12所示的計費方式選擇模塊,其輸入輸出信號的定義如下:</p><p> 圖3.12計
98、費模塊生成符號</p><p><b> 輸入信號:</b></p><p> clk2:通過計費方式選擇模塊輸入的計費驅(qū)動脈沖信號;</p><p> start:由撥動開關提供的開始計費信號;</p><p><b> 輸出信號:</b></p><p> c0
99、[3..0]:輸出到數(shù)碼管顯示模塊中,顯示車費的小數(shù)點后一位;</p><p> c1[3..0]:輸出到數(shù)碼管顯示模塊中,顯示車費的個位;</p><p> c2[3..0]:輸出到數(shù)碼管顯示模塊中,顯示車費的十位;</p><p> c3[3..0]:輸出到數(shù)碼管顯示模塊中,顯示車費的百位;</p><p> 3.5.4計費模塊的
100、仿真圖形</p><p> 計費模塊的仿真圖形如圖3.13所示:</p><p> 圖3.13計費模塊仿真波形圖</p><p> 有仿真波形可以看出start始終處于高電平,計費模塊則處于計費狀態(tài),起步價設定為10元開始計費,c0自動累加,當c0滿9時,則自動向c1進位,c1滿9時,向c2進位,c2滿9時,自動向c3進位,因此可完成計費功能。</p&g
101、t;<p><b> 3.6顯示模塊</b></p><p> 本模塊中的顯示部分主要包括數(shù)碼管顯示電路和LED指示燈。</p><p> 本次設計通過8個數(shù)碼管完成行程里數(shù)、等待時長、車費計數(shù)的實時顯示。經(jīng)內(nèi)部程序的設定,相關記錄的數(shù)據(jù)經(jīng)過譯碼管的編譯之后,最終將在相應的數(shù)碼管上顯示出來。</p><p> 在本次設計中
102、,用到了3個LED指示燈,分別表示:系統(tǒng)開始計費/復位、是否有行駛信號 信號、是否停車等待。</p><p> 3.6.1數(shù)碼管顯示電路</p><p> LED數(shù)碼管也稱為半導體數(shù)碼管,是目前數(shù)字電路中最常用的顯示器件之一,它以發(fā)光二極管作為筆畫,分為共陽和共陰兩種,其差別在于共陰數(shù)碼管的八位發(fā)光二極管的陰極連接在一起,而陽極各分段控制,而共陽數(shù)碼管恰恰相反。本次設計采取的是共陰數(shù)碼
103、管[]。其結(jié)構(gòu)設計如圖3.14所示。</p><p> 圖3.14數(shù)碼管的設計結(jié)構(gòu)圖</p><p> 在進行本次設計時,由于小數(shù)位數(shù)據(jù)的運算,所以用到圖中所示的a—g7個發(fā)光二極管之外,還包括了小數(shù)點信號dp。使用時,數(shù)碼管的公共端接地,其余各段為高電平時候點亮數(shù)碼管,數(shù)碼的編碼參見表3.1。</p><p> 表3.1 數(shù)碼管顯示與譯碼的關系表</p
104、><p> 數(shù)碼管有靜態(tài)顯示和動態(tài)顯示兩種顯示方式,由于本設計中使用了8個數(shù)碼管,而ZY11EDA13BE實驗箱硬件模塊:數(shù)碼管顯示電路中,8個數(shù)碼管的abcdefg端分別連接在一起,公共端由一個74138譯碼器輸出控制,由74138譯碼器地址的輸入端,決定哪個數(shù)碼管顯示輸出。所以必須采用動態(tài)顯示的設計方法。</p><p> 動態(tài)顯示就是將所有顯示數(shù)據(jù)的BCD碼按照一定的順序和變化頻率送
105、到公用數(shù)據(jù)總線上,再通過一個公用的顯示譯碼器譯碼后,接到數(shù)碼管的驅(qū)動端,同時利用一個與數(shù)據(jù)總線變化頻率相同的選通信號來確定單個數(shù)碼管的顯示,即選通信號決定是哪個數(shù)碼管顯示,則該時刻公用數(shù)據(jù)總線上的數(shù)據(jù)決定這個數(shù)碼管顯示的內(nèi)容。</p><p> 本文所使用的數(shù)碼管顯示電路中,三位數(shù)碼管的掃描信號送至74138譯碼器的地址輸入端,確定最終數(shù)值將有哪個數(shù)碼管輸出顯示。運行時,當數(shù)碼管的掃描信號接收到的掃描信號(se
106、l)為000時,則將數(shù)據(jù)輸送到1號數(shù)碼管輸出顯示,其它的數(shù)碼管則處于等待運行狀態(tài),當掃描信號為001時,則轉(zhuǎn)換為由2號數(shù)碼管顯示相應的數(shù)據(jù)。因此實際上各位數(shù)碼管不是同時點亮的,由于掃描的速度足夠快,利用發(fā)光二極管的余暉和人眼的視覺暫留作用,可使人感覺各位數(shù)碼管同時在顯示。</p><p> 3.6.2動態(tài)掃描的功能描述</p><p> 通過動態(tài)掃描模塊將系統(tǒng)運行所產(chǎn)生的計時、計費、計
107、程的數(shù)據(jù)值,通過譯碼后,在數(shù)碼管上從左至右依次顯單位為1min的計時數(shù)值,單位為1km的計程數(shù)值以及單位為0.1元的計費數(shù)值。</p><p> 根據(jù)掃描顯示模塊的工作原理,得出掃描模塊流程圖,如圖3.15所示。</p><p> 圖3.15掃描模塊流程圖</p><p> 3.6.3動態(tài)掃描的模塊符號</p><p> 生成的掃描模
108、塊符號如圖3.16所示:</p><p> 圖3.16動態(tài)掃描模塊生成符號</p><p><b> 輸入信號:</b></p><p> cp:時鐘信號動態(tài)掃描復位信號;</p><p> cntsl[3..0]:小數(shù)點后一位計費數(shù)值數(shù)碼管顯示信號;</p><p> cntmh[3.
109、.0]:計費數(shù)值個位數(shù)碼管顯示信號;</p><p> cntsh[3..0]:計費數(shù)值十位數(shù)碼管顯示信號;</p><p> cntml[3..0]:計費數(shù)值百位數(shù)碼管顯示信號;</p><p> cnthh[3..0]:計程數(shù)值個位數(shù)碼管顯示信號;</p><p> cnthl[3..0]:計程數(shù)值十位數(shù)碼管顯示信號;</p
110、><p> cntnm[3..0]:計時數(shù)值個位數(shù)碼管顯示信號;</p><p> cntnn[3..0]:計時數(shù)值十數(shù)碼管顯示信號;</p><p><b> 輸出信號:</b></p><p> SEGOUT[0..7]:數(shù)碼管顯示的8位輸出信號;</p><p> sel[2..0]:
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 出租車計費器設計畢業(yè)論文
- 基于fpga的出租車計費器設計
- 2017畢業(yè)論文-基于fpga的出租車計費器系統(tǒng)的設計
- 基于fpga的出租車計費器系統(tǒng)設計
- 基于fpga的出租車計費器說明書
- 單片機出租車計費器畢業(yè)論文
- 基于vhdl的出租車計費器設計
- 基于fpga的出租車計費器課程設計程序
- eda出租車計費器
- 基于vhdl語言的出租車計費器設計
- 基于verilog語言的出租車計費器
- 畢業(yè)設計----基于pld設計的出租車計費器系統(tǒng)
- 基于單片機出租車計費器的設計
- 基于cpld出租車計費器的課程設計
- 出租車計費器設計-電子信息工程本科畢業(yè)論文
- 基于單片機的出租車計費器的畢業(yè)設計
- 基于eda技術(shù)出租車計費器設計樣本
- eda課程設計出租車計費器
- eda課程設計--出租車計費器
- 基于單片機的出租車計費器的畢業(yè)設計
評論
0/150
提交評論