畢業(yè)論文--基于eda技術(shù)的交通燈設計_第1頁
已閱讀1頁,還剩42頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  1 EDA技術(shù)及VHDL語言介紹</p><p><b>  1.1 概述</b></p><p>  EDA是電子設計自動化(Electronic Design Automation)縮寫,是90年代初從CAD(計算機輔助設計)、CAM(計算機輔助制造)、CAT(計算機輔助測試)和CAE(計算機輔助工程)的概念發(fā)展而來的。EDA技術(shù)是以計算機為

2、工具,根據(jù)硬件描述語言HDL( Hardware Description language)完成的設計文件,自動地完成邏輯編譯、化簡、分割、綜合及優(yōu)化、布局布線、仿真以及對于特定目標芯片的適配編譯和編程下載等工作。典型的EDA工具中必須包含兩個特殊的軟件包,即綜合器和適配器。綜合器的功能就是將設計者在EDA平臺上完成的針對某個系統(tǒng)項目的HDL、原理圖或狀態(tài)圖形描述,針對給定的硬件系統(tǒng)組件,進行編譯、優(yōu)化、轉(zhuǎn)換和綜合,最終獲得我們欲實現(xiàn)功

3、能的描述文件。綜合器在工作前,必須給定所要實現(xiàn)的硬件結(jié)構(gòu)參數(shù),它的功能就是將軟件描述與給定的硬件結(jié)構(gòu)用一定的方式聯(lián)系起來。也就是說,綜合器是軟件描述與硬件實現(xiàn)的一座橋梁。綜合過程就是將電路的高級語言描述轉(zhuǎn)換低級的、可與目標器件FPGA/CPLD相映射的網(wǎng)表文件。 適配器的功能是將由綜合器產(chǎn)生的王表文件配置與</p><p><b>  1.2 EDA技術(shù)</b></p>

4、<p>  1.2.1 EDA技術(shù)的發(fā)展與應用</p><p>  電子設計技術(shù)的核心就是EDA技術(shù),EDA是指以計算機為工作平臺,融合應用電子技術(shù)、計算機技術(shù)、智能化技術(shù)最新成果而研制成的電子CAD通用軟件包,主要能輔助進行三方面的設計工作,即IC設計、電子電路設計和PCB設計。EDA技術(shù)已有30年的發(fā)展歷程,大致可分為三個階段。70年代為計算機輔助設計(CAD)階段,人們開始用計算機輔助進行IC版

5、圖編輯、PCB布局布線,取代了手工操作。80年代為計算機輔助工程(CAE)階段。與CAD相比,CAE除了有純粹的圖形繪制功能外,又增加了電路功能設計和結(jié)構(gòu)設計,并且通過電氣連接網(wǎng)絡表將兩者結(jié)合在一起,實現(xiàn)了工程設計。CAE的主要功能是:原理圖輸入,邏輯仿真,電路分析,自動布局布線,PCB后分析。90年代為電子系統(tǒng)設計自動化(EDA)階段。</p><p>  1.2.2 EDA技術(shù)的基本特征</p>

6、<p>  EDA代表了當今電子設計技術(shù)的最新發(fā)展方向,它的基本特征是:設計人員按照“自頂向下”的設計方法,對整個系統(tǒng)進行方案設計和功能劃分,系統(tǒng)的關(guān)鍵電路用一片或幾片專用集成電路(ASIC)實現(xiàn),然后采用硬件描述語言(HDL)完成系統(tǒng)行為級設計,最后通過綜合器和適配器生成最終的目標器件,這樣的設計方法被稱為高層次的電子設計方法。下面介紹與EDA基本特征有關(guān)的幾個概念?! 〉谝唬白皂斚蛳隆钡脑O計方法10年前,電子設計的基

7、本思路還是選用標準集成電路“自底向上”地構(gòu)造出一個新的系統(tǒng),這樣的設計方法就如同一磚一瓦建造金字塔,不僅效率低、成本高而且容易出錯?! 「邔哟卧O計是一種“自頂向下”的全新設計方法,這種設計方法首先從系統(tǒng)設計入手,在頂層進行功能方框圖的劃分和結(jié)構(gòu)設計。在方框圖一級進行仿真、糾錯,并用硬件描述語言對高層次的系統(tǒng)行為進行描述,在系統(tǒng)一級進行驗證。然后,用綜合優(yōu)化工具生成具體門電路的網(wǎng)絡表,其對應的物理實現(xiàn)級可以是印刷電路板或?qū)S眉呻娐?。?/p>

8、于設計的主要仿真和調(diào)試過程是在高層次上完成的,這既有利于早期發(fā)現(xiàn)結(jié)構(gòu)設計上的錯誤,避免設計工作的浪費,又減少了邏輯功能仿真的工作量,提高了設計的</p><p>  1.2.3 EDA技術(shù)的基本設計方法</p><p>  EDA技術(shù)的每一次進步,都引起了設計層次上的一次飛躍,物理級設計主要指IC版圖設計,一般由半導體廠家完成,對電子工程師沒有太大的意義,因此本文重點介紹電路級設計和系統(tǒng)級

9、設計。</p><p>  第一,電路級設計電路級設計工作流程:電子工程師接受系統(tǒng)設計任務,首先確定設計方案,并選擇能實現(xiàn)該方案的合適元器件,然后根據(jù)具體的元器件設計電路原理圖。接著進行第一次仿真,其中包括數(shù)字電路的邏輯模擬、故障分析,模擬電路的交直流分析、瞬態(tài)分析。在進行系統(tǒng)仿真時,必須要有元件模型庫的支持,計算機上模擬的輸入輸出波形代替了實際電路調(diào)試中的信號源和示波器。這一次仿真主要是檢驗設計方案在功能方面的

10、正確性。仿真通過后,根據(jù)原理圖產(chǎn)生的電氣連接網(wǎng)絡表進行PCB板的自動布局布線。在制作PCB板之前還可以進行PCB后分析,其中包括熱分析、噪聲及竄擾分析、電磁兼容分析、可靠性分析等,并可將分析后的結(jié)果參數(shù)反標回電路圖,進行第二次仿真,也稱為后仿真。后仿真主要是檢驗PCB板在實際工作環(huán)境中的可行性?! ∮纱丝梢?,電路級的EDA技術(shù)使電子工程師在實際的電子系統(tǒng)產(chǎn)生前,就可以全面地了解系統(tǒng)的功能特性和物理特性,從而將開發(fā)風險消滅在設計階段,縮

11、短了開發(fā)時間,降低了開發(fā)成本?! 〉诙?,系統(tǒng)級設計進入90年代以來,電子信息類產(chǎn)品的開發(fā)明顯呈現(xiàn)兩個特點:一是產(chǎn)品復雜程度提高;二是產(chǎn)品上市時限緊迫。然而,電路級設計本質(zhì)</p><p>  首先,工程師按照“自頂向下”的設計方法進行系統(tǒng)劃分。</p><p>  其次,輸入VHDL代碼,這是高層次設計中最為普遍的輸入方式。此外,還可以采用圖形輸入方式(框圖,狀態(tài)圖等),這種輸入方式具有

12、直觀、容易理解的優(yōu)點。</p><p>  第三步是,將以上的設計輸入編譯成標準的VHDL文件。</p><p>  第四步是進行代碼級的功能仿真,主要是檢驗系統(tǒng)功能設計的正確性。這一步驟適用大型設計,因為對于大型設計來說,在綜合前對源代碼仿真,就可以大大減少設計重復的次數(shù)和時間。一般情況下,這一仿真步驟可略去。</p><p>  第五步是,利用綜合器對VHDL源

13、代碼進行綜合優(yōu)化處理,生成門級描述的網(wǎng)絡表文件,這是將高層次描述轉(zhuǎn)化為硬件電路的關(guān)鍵步驟。綜合優(yōu)化是針對ASIC芯片供應商的某一產(chǎn)品系列進行的,所以綜合的過程要在相應的廠家綜合庫支持下才能完成。</p><p>  第六步是,利用產(chǎn)生的網(wǎng)絡表文件進行適配前的時序仿真,仿真過程不涉及具體器件的硬件特性,是較為粗略的。一般的設計,也可略去這一仿真步驟。</p><p>  第七步是利用適配器將

14、綜合后的網(wǎng)絡表文件針對某一具體的目標器件進行邏輯映射操作,包括底層器件配置、邏輯分割、邏輯優(yōu)化、布局布線。</p><p>  第八步是在適配完成后,產(chǎn)生多項設計結(jié)果:(1)適配報告,包括芯片內(nèi)部資源利用情況,設計的布爾方程描述情況等;(2)適配后的仿真模型;(3)器件編程文件。根據(jù)適配后的仿真模型,可以進行適配后的時序仿真,因為已經(jīng)得到器件的實際硬件特性(如時延特性),所以仿真結(jié)果能比較精確地預期未來芯片的實際

15、性能。如果仿真結(jié)果達不到設計要求,就需要修改VHDL源代碼或選擇不同速度和品質(zhì)的器件,直至滿足設計要求;最后一步是將適配器產(chǎn)生的器件編程文件通過編程器或下載電纜載入到目標芯片F(xiàn)PGA或CPLD中。如果是大批量產(chǎn)品開發(fā),則通過更換相應的廠家綜合庫,輕易地轉(zhuǎn)由ASIC形式實現(xiàn)。</p><p>  綜上所述,EDA技術(shù)是電子設計領(lǐng)域的一場革命,目前正處于高速發(fā)展階段,每年都有新的EDA工具問世。廣大電子工程人員掌握這

16、一先進技術(shù),這不僅是提高設計效率的需要,更是我國電子工業(yè)在世界市場上生存、競爭與否的關(guān)鍵。[2]</p><p>  1.2.4 EDA的發(fā)展趨勢</p><p>  第一,.從目前的EDA技術(shù)來看,其發(fā)展趨勢是政府重視、使用普及、應用廣泛、工具多樣、軟件功能強大。</p><p>  中國EDA市場已漸趨成熟,不過大部分設計工程師面向的是PCB制板和小型ASIC領(lǐng)

17、域,僅有小部分(約11%)的設計人員開發(fā)復雜的片上系統(tǒng)器件。為了與臺灣和美國的設計工程師形成更有力的競爭,中國的設計隊伍有必要引進和學習一些最新的EDA技術(shù)。 在信息通信領(lǐng)域,要優(yōu)先發(fā)展高速寬帶信息網(wǎng)、深亞微米集成電路、新型元器件、計算機及軟件技術(shù)、第三代移動通信技術(shù)、信息管理、信息安全技術(shù),積極開拓以數(shù)字技術(shù)、網(wǎng)絡技術(shù)為基礎的新一代信息產(chǎn)品,發(fā)展新興產(chǎn)業(yè),培育新的經(jīng)濟增長點。要大力推進制造業(yè)信息化,積極開展計算機輔助設計(C

18、AD)、計算機輔助工程(CAE)、計算機輔助工藝(CAPP)、計算機機輔助制造(CAM)、產(chǎn)品數(shù)據(jù)管理(PDM)、制造資源計劃(MRPII)及企業(yè)資源管理(ERP)等。有條件的企業(yè)可開展“網(wǎng)絡制造”,便于合作設計、合作制造,參與國內(nèi)和國際競爭。開展“數(shù)控化”工程和“數(shù)字化”工程。自動化儀表的技術(shù)發(fā)展趨勢的測試技術(shù)、控制技術(shù)與計算機技術(shù)、通信技術(shù)進一步融合,形成測量、控制、通信與計算機(M3C)結(jié)構(gòu)。在ASIC和PLD設計方面,向超高速、

19、高密度、低功耗、低電壓方面發(fā)展。 </p><p>  第二,外設技術(shù)與EDA工程相結(jié)合的市場前景看好,如組合超大屏幕的相關(guān)連接,多屏幕技術(shù)也有所發(fā)展。</p><p>  中國自1995年以來加速開發(fā)半導體產(chǎn)業(yè),先后建立了幾所設計中心,推動系列設計活動以應對亞太地區(qū)其它EDA市場的競爭。在EDA軟件開發(fā)方面,目前主要集中在美國。但各國也正在努力開發(fā)相應的工具。日本、韓國都有ASIC設計工

20、具,但不對外開放。中國華大集成電路設計中心,也提供IC設計軟件,但性能不是很強。相信在不久的將來會有更多更好的設計工具在各地開花并結(jié)果。據(jù)最新統(tǒng)計顯示,中國和印度正在成為電子設計自動化領(lǐng)域發(fā)展最快的兩個市場,年夏合增長率分別達到了50%和30%。[3] EDA技術(shù)發(fā)展迅猛,完全可以用日新月異來描述。EDA技術(shù)的應用廣泛,現(xiàn)在已涉及到各行各業(yè)。EDA水平不斷提高,設計工具趨于完美的地步。EDA市場日趨成熟,但我國的研發(fā)水平仍很有

21、限,尚需迎頭趕上。</p><p>  1.3 硬件描述語言 VHDL</p><p>  1.3.1 VHDL的簡介</p><p>  硬件描述語言(HDL)是一種用于設計硬件電子系統(tǒng)的計算機語言,它用軟件編程的方式來描述電子系統(tǒng)的邏輯功能、電路結(jié)構(gòu)和連接形式,與傳統(tǒng)的門級描述方式相比,它更適合大規(guī)模系統(tǒng)的設計。例如一個32位的加法器,利用圖形輸入軟件需要輸人5

22、00至1000個門,而利用VHDL語言只需要書寫一行“A=B+C”即可。而且 VHDL語言可讀性強,易于修改和發(fā)現(xiàn)錯誤。早期的硬件描述語言,如ABEL、HDL、AHDL,由不同的EDA廠商開發(fā),互不兼容,而且不支持多層次設計,層次間翻譯工作要由人工完成。為了克服以上不足,1985年美國國防部正式推出了高速集成電路硬件描述語言VHDL,1987年IEEE采納VHDL為硬件描述語言標準(IEEE STD-1076)。 VHDL是一

23、種全方位的硬件描述語言,包括系統(tǒng)行為級。寄存器傳輸級和邏輯門級多個設計層次,支持結(jié)構(gòu)、數(shù)據(jù)流和行為三種描述形式的混合描述,因此VHDL幾乎覆蓋了以往各種硬件俄語言的功能,整個自頂向下或由底向上的電路設計過程都可以用VHDL來完成。VHDL還具有以下優(yōu)點:</p><p> ?。?)VHDL的寬范圍描述能力使它成為高層進設計的核心,將設計人員的工作重心提高到了系統(tǒng)功能的實現(xiàn)與調(diào)試,而花較少的精力于物理實現(xiàn)。<

24、/p><p> ?。?)VHDL可以用簡潔明確的代碼描述來進行復雜控制邏輯艄設計,靈活且方便,而且也便于設計結(jié)果的交流、保存和重用。</p><p>  (3)VHDL的設計不依賴于特定的器件,方便了工藝的轉(zhuǎn)換。</p><p>  (4)VHDL是一個標準語言,為眾多的EDA廠商支持,因此移植性好。</p><p>  用VHDL語言編程實現(xiàn)數(shù)

25、字電子系統(tǒng)硬件設計容易做到技術(shù)共享。他人用VHDL語言實現(xiàn)了IP模塊和軟核(soft core),程序包(package)和設計庫(library)很容易移植到自己的系統(tǒng)設計中。許多設計不用從頭開始,少花錢辦快事,縮短產(chǎn)品設計周期,加速產(chǎn)品更新,提高設計效益,這也是VHDL語言得到廣泛應用的重要原因。</p><p>  值得指出的是:Verilog-HDL等硬件描述語言獲得較為廣泛的應用。但最適合于用CPLD&

26、VHDL等器件實現(xiàn)數(shù)字電子系統(tǒng)設計的硬件描述語言當屬于VHDL。</p><p>  1.3.2 VHDL的設計方法</p><p>  傳統(tǒng)的硬件電路設計方法是采用自下而上的設計方法,即根據(jù)系統(tǒng)對硬件的要求,詳細編制技術(shù)規(guī)格書,并畫出系統(tǒng)控制流圖;然后根據(jù)技術(shù)規(guī)格書和系統(tǒng)控制流圖,對系統(tǒng)的功能進行細化,合理地劃分功能模塊,并畫出系統(tǒng)的功能框圖;接著就進行各功能模塊的細化和電路設計;各功能

27、模塊電路設計、調(diào)試完成后,將各功能模塊的硬件電路連接起來再進行系統(tǒng)的調(diào)試,最后完成整個系統(tǒng)的硬件設計。采用傳統(tǒng)方法設計數(shù)字系統(tǒng),特別是當電路系統(tǒng)非常龐大時,設計者必須具備較好的設計經(jīng)驗,而且繁雜多樣的原理圖的閱讀和修改也給設計者帶來諸多的不便。</p><p>  當電路系統(tǒng)采用VHDL語言設計其硬件時,與傳統(tǒng)的電路設計方法相比較,具有如下的特點:</p><p>  第一,采用自上而下的

28、設計方法。</p><p>  即從系統(tǒng)總體要求出發(fā),自上而下地逐步將設計的內(nèi)容細化,最后完成系統(tǒng)硬件的整體設計。在設計的過程中,對系統(tǒng)自上而下分成三個層次進行設計:</p><p>  第一層次是行為描述。所謂行為描述,實質(zhì)上就是對整個系統(tǒng)的數(shù)學模型的描述。一般來說,對系統(tǒng)進行行為描述的目的是試圖在系統(tǒng)設計的初始階段,通過對系統(tǒng)行為描述的仿真來發(fā)現(xiàn)設計中存在的問題。在行為描述階段,并不真

29、正考慮其實際的操作和算法用何種方法來實現(xiàn),而是考慮系統(tǒng)的結(jié)構(gòu)及其工作的過程是否能到達系統(tǒng)設計的要求。</p><p>  第二層次是RTL方式描述。這一層次稱為寄存器傳輸描述(又稱數(shù)據(jù)流描述)。如前所述,用行為方式描述的系統(tǒng)結(jié)構(gòu)的程序,其抽象程度高,是很難直接映射到具體邏輯元件結(jié)構(gòu)的。要想得到硬件的具體實現(xiàn),必須將行為方式描述的VHDL語言程序改寫為RTL方式描述的VHDL語言程序。也就是說,系統(tǒng)采用RTL方式描

30、述,才能導出系統(tǒng)的邏輯表達式,才能進行邏輯綜合。</p><p>  第三層次是邏輯綜合。即利用邏輯綜合工具,將RTL方式描述的程序轉(zhuǎn)換成用基本邏輯元件表示的文件(門級網(wǎng)絡表)。此時,如果需要,可將邏輯綜合的結(jié)果以邏輯原理圖的方式輸出。此后可對綜合的結(jié)果在門電路級上進行仿真,并檢查其時序關(guān)系。</p><p>  第二,應用邏輯綜合工具產(chǎn)生的門級網(wǎng)絡表,將其轉(zhuǎn)換成PLD的編程碼點,即可利用

31、PLD實現(xiàn)硬件電路的設計。</p><p>  由自上而下的設計過程可知,從總體行為設計開始到最終的邏輯綜合,每一步都要進行仿真檢查,這樣有利于盡早發(fā)現(xiàn)設計中存在的問題,從而可以大大縮短系統(tǒng)的設計周期。</p><p>  第三,系統(tǒng)可大量采用PLD芯片。</p><p>  由于目前眾多制造PLD芯片的廠家,其工具軟件均支持VHDL語言的編程。所以利用VHDL語言

32、設計數(shù)字系統(tǒng)時,可以根據(jù)硬件電路的設計需要,自行利用PLD設計自用的ASIC芯片,而無須受通用元器件的限制。</p><p>  第四,采用系統(tǒng)早期仿真。</p><p>  從自上而下的設計過程中可以看到,在系統(tǒng)設計過程中要進行三級仿真,即行為層次仿真、RTL層次仿真和門級層次仿真。這三級仿真貫穿系統(tǒng)設計的全過程,從而可以在系統(tǒng)設計的早期發(fā)現(xiàn)設計中存在的問題,大大縮短系統(tǒng)設計的周期,節(jié)約

33、大量的人力和物力。自頂而下的設計方法使系統(tǒng)被分解為各個模塊的集合之后,可以對設計的每個獨立模塊指派不同的工作小組,這些工作小組可以工作在不同地點,甚至可以分屬于不同的單位,最后將不同的模塊集成為最終的系統(tǒng)模型,并對其進行綜合測試和評價。[4]其自頂而下的設計流程如圖1-1所示:</p><p>  圖1-1 自頂而下的設計流程</p><p>  1.4 Max+Pull II開發(fā)平臺系統(tǒng)

34、</p><p>  1.4.1 MaxPull II簡介</p><p>  MaxPull II的全稱是Multiple Array and Programmable Logic Use System2(多陣列矩陣及可編程邏輯用戶系統(tǒng)2),是Altera公司的全集成化可編程邏輯設計環(huán)境。從最初的第一代A+PLUS,第二代MAX+PLUS,發(fā)展到第三代MAX+PLUS II,Altera

35、公司的開發(fā)工具軟件在發(fā)展中不斷完善。MAX+PLUS II的版本不升級,功能也越來越強大,目前發(fā)行的MAX+PLUS II已經(jīng)到了10。1版。</p><p>  MaxPull II的界面友好,在線幫助完備,初學者也可以很快學習掌握。完成高性能的設計。其次,在進行原理圖輸入時,可以直接放置74系列邏輯芯片,所以對于普通愛好者來說,即使不使用Altera的可編程器件,也可以把MAX+PLUS II作為邏輯仿真工具

36、,另外,不用搭建硬件電路,即可對自己的設計進行調(diào)試,支持Altera公司不同結(jié)構(gòu)的可編程邏輯器件,能滿足用戶各種各樣的設計需要。MAX+plus II具有突出的靈活性與高效性,為設計者提供了多種可自由選擇的設計方法和工具。</p><p>  1.4.2 MaxPull II的特點</p><p>  1.MAX+PLUS II的編譯核心支持Altera的FLEX 10K、FLEX 8K、

37、MAX9000、MAX7000、FLASHlogic、MAX5000、Classic系列可編程邏輯器件; </p><p>  2.MAX+PLUS II的設計輸入、處理與校驗功能一起提供了全集成化的一套可編程邏輯開發(fā)工具,可加快動態(tài)調(diào)試,縮短開發(fā)周期; </p><p>  3.MAX+PLUS II支持各種HDL設計輸入,包括VHDL、Verilog和Altera的AHDL; <

38、/p><p>  4.MAX+PLUS II可與其他工業(yè)標準設計輸入、綜合與校驗工具鏈接。與CAE工具的接口符合EDIF200和209、參數(shù)化模塊庫(LPM)、Verilog、VHDL及其它標準。設計者可使用Altera或標準CAE設計輸入工具去建立邏輯設計,使用MAX+PLUS II編譯器對Altera器件設計進行編譯,并使用Altera或其它CAE校驗工具進行器件或板級仿真。MAX+PLUS II支持與Synop

39、sys、Viewlogic、Mentor Graphics、Cadence、Exemplar、Data I/O、Intergraph、Minc、OrCAD等公司提供的工具接口。 利用MAX+PLUSII軟件平臺進行設統(tǒng)設計。[5]具體的設計流程圖如圖1-2所示:</p><p>  圖1-2 MAX+PLUSII軟件的設計流程圖</p><p><b>  2 交通燈系統(tǒng)設計&l

40、t;/b></p><p>  2.1 交通燈設計背景及方案</p><p>  隨著城市汽車保有量的越來越多,城市的交通擁擠問題正逐漸引起人們的注意。交通燈是交管部門管理城市交通的重要工具。提高十字路口的通行效率,對緩解交通阻塞具有十分重要的現(xiàn)實意義。實現(xiàn)路口交通燈系統(tǒng)控制的方法很多,可以用標準邏輯器件、可編程序控制器PLC、單片機等方案來實現(xiàn)。但是這些控制方法的功能修改及調(diào)試都需

41、要硬件電路的支持,在一定程度上增加了設計難度。采用EDA技術(shù)。應用VHDL硬件電路描述語言實現(xiàn)變通燈系統(tǒng)控制器的設計,利用MAX+PLUSⅡ集成開發(fā)環(huán)境進行綜合、仿真,并下載到CPLD可編程邏輯器件中,完成系統(tǒng)的控制作用。該燈控制邏輯可實現(xiàn)3種顏色燈的交替點亮、時間的倒計時、轉(zhuǎn)向問題,指揮車輛和行人安全通行。</p><p>  2.2 交通燈設計要求</p><p>  按照路口交通運行

42、的實際情況,在本系統(tǒng)中,設定系統(tǒng)的工作情況如下: A 方向和B 方向各設紅(R) 、黃( Y) 、綠( G) 和左拐(L) 四盞燈按合理的順序亮滅,并能將燈亮的時間以倒計時的形式顯示出來。兩個方向各種燈亮的時間應該能夠非常方便地進行設計和修改,此外假設A 方向是主干道,車流量大,因此A方向通行的時間應比B 方向長一些。其示意圖如圖2-1所示。 </p><p>  圖2-1 交通路口指示燈示意圖</p>

43、;<p>  交通燈控制器的狀態(tài)轉(zhuǎn)換如表1 所示。表中1 表示燈亮,0 表示燈滅。A 方向和B 方向的紅、黃、綠和左拐燈分別用R1 、Y1、G1 、L1 和R2 、Y2 、G2 、L2 來表示。</p><p>  從狀態(tài)轉(zhuǎn)換表中可以看出,每個方向四種燈依次按如下綠燈→黃燈→左拐燈→黃燈→紅燈。并且每個方向紅燈亮的時間應該與另一方向綠、拐、黃燈亮的時間相等。黃燈所起的作用是用來在綠燈和左拐燈后進行緩

44、沖,以提醒行人該方向馬上要禁行了。例如A 方向的控制程序描述如表2-1所示:</p><p>  表2-1 交通燈控制器狀態(tài)轉(zhuǎn)換</p><p>  2.3 交通燈控制器的VHDL設計</p><p>  使用MAX+PLUS II進行設計包括四個階段:設計輸入、設計處理、設計驗證和器件編程。根據(jù)程序要求完成VHDL語言設計后,可形成頂層文件。在MAX+PLUSⅡ環(huán)

45、境下進行編譯與仿真,直至各個模塊全部完成仿真,實現(xiàn)各自的功能。在本設計中交通燈控制器由七個模塊構(gòu)成:消振模塊,分頻器模塊、交通燈控制器模塊、計數(shù)器塊、計數(shù)器控制模塊、閃爍模塊、譯碼器模塊。 </p><p>  用VHDL語言對各個模塊進行編程,最后形成頂層文件,在MAX+PLUSⅡ環(huán)境下進行編譯與仿真,檢查所編程序是否運行正確。如果出現(xiàn)錯誤,需要進行修改,直到完全通過為止。需要說明的是,在進行程序編譯時,要先從

46、底層程序開始,所有底層程序都正確后,才能開始頂層程序的編譯。這是因為頂層程序是對底層程序的概括,它是把底層程序各個模塊連接起來,相當于把每個模塊的功能匯聚到一起,實現(xiàn)整個系統(tǒng)的控制功能,所以底層程序的正確與否關(guān)系到頂層程序的運行。[6]</p><p>  2.3.1 分頻器模塊</p><p>  2.3.1.1 原理及功能</p><p>  分頻器通常用來對某

47、個給定的頻率進行分頻,以得到需要的頻率。整數(shù)分頻器非常簡單,可采用標準的計數(shù)器,也可采用可編程邏輯器件設計實現(xiàn)。分頻器可為后續(xù)模塊提供低頻的時鐘信號,分頻器采用上升沿計數(shù)來實現(xiàn)分頻。當輸入端采集到了高頻的時鐘信號的上升沿時,計數(shù)加一,當?shù)竭_設定值時,分頻器輸出一個脈沖。</p><p>  本設計中用到的就是簡單的分頻器,即計數(shù)器,計算器控制器,交通燈控制器提供時鐘信號,并且為閃爍模塊提供閃爍時鐘信號。該功能模塊

48、有兩個輸入,兩個輸出:reset是內(nèi)部初始化信號輸入端,clk1k是高頻的時鐘信號,clk是整個系統(tǒng)的時鐘信號,clk_flash是閃爍模塊閃爍時鐘信號。</p><p>  2.3.1.2 時序仿真</p><p>  圖2-2 分頻器模塊的時序仿真波形</p><p><b>  時序仿真說明:</b></p><p&g

49、t;  (1).reset=1,則clk_cnt1、clk_cnt2、clk_s1、clk_s2、clk_f清零。</p><p>  2. reset=0,clk_1k為上升沿觸發(fā)時,如果clk_cnt1大于或等于5時,清零clk_cnt1,并且clk_s1輸出1。否則clk_cnt1加一,clk_s1等于0。</p><p>  3.reset=0,clk_1k為上升沿觸發(fā)并且clk

50、_s1=1時,如果clk_cnt2大于或等于200時,clk_cnt2清零,輸出clk_s2=1,取反clk_f。否則clk_cnt2加一,clk_s2,clk_f保持不變。</p><p>  其中clk-flash是clk頻率的1/2倍,它是通過內(nèi)部信號與運算的得來,即</p><p>  clk_flash<=clk_s1 and clk_s2 and clk_f;</p

51、><p>  2.3.2 計數(shù)器模塊 </p><p>  2.3.2.1 原理及功能</p><p>  計數(shù)器是對一個輸入脈沖進行計數(shù),如果輸入脈沖的頻率一定,則記錄一定個數(shù)的脈沖,其所需的時間是一定的。計數(shù)器可分為加法和減法計數(shù)器兩種,所以計數(shù)器可實現(xiàn)倒記時,因此可用在交通燈時間的控制。正常情況時,計數(shù)器采集到交通燈控制器的信號recount,輸出倒計時間;緊急情

52、況時,計數(shù)器采集到禁止信號,時鐘停止計數(shù),時間不再倒記時,只有采集到計數(shù)器控制器的下一個狀態(tài)的計數(shù)值,計數(shù)器才會進行正常的減計數(shù),并輸出給譯碼器,顯示在顯示屏上。當計數(shù)器計數(shù)到3時,還要產(chǎn)生一個閃爍信號給閃爍模塊,控制其交通指示燈閃爍,告訴給行人時間到了需要減速停止。當計數(shù)器計數(shù)到零時,會反饋給交通燈控制器一個計數(shù)到零的信號next_state,告訴交通燈控制器需要進入下一個狀態(tài)。</p><p><b&g

53、t;  本設計中主要程序段</b></p><p>  elsif clk'event and clk='1' then ――時鐘信號</p><p>  if hold='1' then --禁止信號</p><p>  cnt1<=cnt1;&l

54、t;/p><p>  cnt2<=cnt2;</p><p>  elsif recount='1' then ――采集到的交通燈控制信號,采集下</p><p>  cnt1<=din1; 一個計數(shù)值。</p><

55、p>  cnt2<=din2;</p><p><b>  else </b></p><p>  cnt1<=cnt1-1; ――減計數(shù)</p><p>  cnt2<=cnt2-1;</p><p><b>  end if;</b&g

56、t;</p><p>  2.3.2.2 時序仿真</p><p>  圖2-3 計數(shù)器模塊的時序仿真波形</p><p><b>  時序仿真說明:</b></p><p>  1.reset=1,清零cnt1、 cnt2、next_s、last_f。</p><p>  2.reset=0,

57、clk為上升沿觸發(fā)時,如果hold=1時,計數(shù)器處于禁止狀態(tài),cnt1,cnt2保持不變,輸出不變。</p><p>  3.reset=0, clk為上升沿觸發(fā)時,且hold=0,那么如果recount=1時,則采集下一個計數(shù)數(shù)值。</p><p>  4.reset=0, clk為上升沿觸發(fā)時,且hold=0,recount=0時,cnt1,cnt2進行減一運算,并dout=cnt輸出

58、。</p><p>  5.當cnt1=0或cnt2=0時,則next_sa<='1'。否則next_sa<='0。</p><p>  6.當cnt1=3或cnt2=3時,則last_f<='1'。否則last_f<='0'。</p><p>  2.3.3 計數(shù)器控制器模塊</

59、p><p>  2.3.3.1 原理及功能</p><p>  計數(shù)器控制器通過給計數(shù)器賦值,控制計數(shù)器實現(xiàn)減計數(shù),從而達到倒記時的目的,同時和計數(shù)器配合控制閃爍模塊。計數(shù)器控制器是通過硬件描述語言case語句來實現(xiàn)不同狀態(tài)的選擇控制。</p><p>  計數(shù)器控制器模塊有三個輸入,端子recount是交通燈控制器控制計數(shù)器控制器是否進行計數(shù)狀態(tài)轉(zhuǎn)換的信號,reset

60、是內(nèi)部復位信號,用來復位內(nèi)部信號。sign_s是狀態(tài)選擇控制端。輸出端Load賦值給計數(shù)器計數(shù)值。flash_addr和計數(shù)器的flash共同作用控制閃爍模塊的閃爍功能。[7]</p><p>  2.3.3.2 時序仿真</p><p>  圖2-4 計數(shù)器控制器模塊時序仿真波形</p><p><b>  時序仿真說明:</b></p

61、><p>  1.reset=1,則load1、load2清零。</p><p>  2.reset=0, clk為上升沿觸發(fā),且 recount=1時:</p><p> ?。?) 若sign_s=110000001001,則load1<=conv_std_logic_vector(27,8);</p><p>  load2<=c

62、onv_std_logic_vector(27,8);flash_addr<="00";</p><p> ?。?) 若sign_s=001110000001,則load1<=conv_std_logic_vector(23,8)</p><p>  load2<=conv_std_logic_vector(23,8);flash_addr<=&

63、quot;00";</p><p> ?。?) 若sign_s=001001110000 ,則load1<=conv_std_logic_vector(18,8);</p><p>  load2<=conv_std_logic_vector(18,8);flash_addr<="00";</p><p>  (4)

64、若sign_s=000001001110,則load1<=conv_std_logic_vector(35,8);</p><p>  load2<=conv_std_logic_vector(35,8)flash_addr<="00";</p><p>  2.3.4 交通燈控制器的設計</p><p>  2.3.4.1 原

65、理及功能</p><p>  交通燈控制器控制過程分為八個階段,對應的有四個狀態(tài),分別用a、b、c、d表示。</p><p>  a狀態(tài):A方向的綠燈亮,左轉(zhuǎn)燈,紅燈,黃燈都滅,B方向的紅燈亮,綠</p><p>  燈,黃燈,左轉(zhuǎn)燈都滅。此時,A方向上的車輛可直行或者各自右轉(zhuǎn),行人可以橫穿B路口,B方向上車和行人禁止通行。直到計數(shù)器計數(shù)時間到,由a狀態(tài)轉(zhuǎn)到b狀態(tài)。

66、</p><p>  b狀態(tài):A方向的黃燈亮,綠燈,左轉(zhuǎn)燈,紅燈滅,B方向的交通燈保持原狀態(tài)。此時,A方向上的車輛要開始停止通行,行人可繼續(xù)穿行,B方向的車輛行人保持原狀態(tài)。直到計數(shù)器計時時間到,由b狀態(tài)轉(zhuǎn)到c狀態(tài)。</p><p>  c態(tài):A方向的左轉(zhuǎn)燈亮,綠燈,黃燈,紅燈滅,B方向的交通燈保持原狀態(tài)。此時,A方向上的車輛各自左轉(zhuǎn),直行和右轉(zhuǎn)車輛禁止通行,行人可繼續(xù)穿行,B方向的車輛和

67、行人保持原狀態(tài)。直到計數(shù)器計時時間到,由c狀態(tài)轉(zhuǎn)到d狀態(tài)。</p><p>  d狀態(tài):A方向上的黃燈亮,綠燈,左轉(zhuǎn)燈,紅燈滅,B方向的交通燈保持</p><p>  原狀態(tài)。此時,A方向上的車輛和行人要開始停止通行,B方向的車輛行人保持原狀態(tài)。直到計數(shù)器計時時間到,由d態(tài)轉(zhuǎn)到下個狀態(tài)。到此,B方向上的交通燈開始變化,依次重復A方向上a、b、c、d四個狀態(tài)的轉(zhuǎn)換。當B方向上的四個狀態(tài)循環(huán)完

68、成后,A方向再次重復A方向上a、b、c、d四個狀態(tài)的轉(zhuǎn)換。</p><p>  交通燈主要控制程序為:</p><p>  when a=> if a_m='1' then ――交通燈處于自動狀態(tài)時</p><p>  if next_state='1' then ――采集到計

69、數(shù)器計數(shù)到零時反饋信號</p><p>  recount<='1';</p><p><b>  state<=b;</b></p><p>  sign_state<="100101101101";</p><p>  else recount<='

70、0';</p><p><b>  state<=a;</b></p><p><b>  end if;</b></p><p>  elsif a_m='0' then ――交通燈處于手動狀態(tài)時</p><p>  if h_bu

71、tt='1' then ――手動狀態(tài)轉(zhuǎn)換控制信號</p><p>  recount<='1';</p><p><b>  state<=b;</b></p><p>  sign_state<="100101101101";</p&g

72、t;<p>  else recount<='0';</p><p><b>  state<=a;</b></p><p><b>  end if;</b></p><p><b>  end if;</b></p><p>  2

73、.3.4.2 時序仿真</p><p>  圖2-5 交通燈控制器模塊時序仿真波形</p><p><b>  時序仿真說明</b></p><p>  1.Reset=1,則state<=a;sign_state<="010101010101";recount<='1';</p>

74、;<p>  2.Reset=0,clk為上升沿觸發(fā),如果hold=1,則交通燈控制器出與禁止狀態(tài),此時所有路口的紅綠燈都為紅燈。否則,交通燈處于正常的顯示狀態(tài)。</p><p>  3.Reset=0,clk為上升沿觸發(fā),且hold=0,如果state為a狀態(tài)時,如果a_m=1且next_state='1'則recount=1,state<=b;sign_state<=

75、"100101101101";否則recount<='0';state<=a;如果為手動狀態(tài)a_m=0且h_butt='1則recount<='1';state<=b; sign_state<="100101101101";否則recount<='0', state<=a;</p>&l

76、t;p>  4.Reset=0,clk為上升沿觸發(fā),且hold=0,如果state為b狀態(tài)時,如果a_m=1且next_state='1'則recount=1,state<=c;sign_state<="100101100110";否則recount<='0';state<=b;如果為手動狀態(tài)a_m=0且h_butt='1則recount<=

77、'1';state<=c; sign_state<="100101100110";否則recount<='0', state<=b</p><p>  5.Reset=0,clk為上升沿觸發(fā),且hold=0,如果state為c狀態(tài)時,如果a_m=1且next_state='1'則recount=1,state<=d;

78、sign_state<="101001100101";否則recount<='0';state<=c;如果為手動狀態(tài)a_m=0且h_butt='1則recount<='1';state<=d; sign_state<="101001100101";否則recount<='0', state<=c

79、</p><p>  6.Reset=0,clk為上升沿觸發(fā),且hold=0,如果state為d狀態(tài)時,如果a_m=1且next_state='1'則recount=1,state<=e;sign_state<="101101100101";否則recount<='0';state<=d;如果為手動狀態(tài)a_m=0且h_butt='

80、1則recount<='1';state<=d; sign_state<="101101100101";否則recount<='0', state<=d</p><p>  7.Reset=0,clk為上升沿觸發(fā),且hold=0,如果state為e狀態(tài)時,如果a_m=1且next_state='1'則recount=

81、1,state<=e;sign_state<="100110100101";否則recount<='0';state<=d;如果為手動狀態(tài)a_m=0且h_butt='1則recount<='1';state<=f sign_state<="100110100101";否則recount<='0'

82、, state<=e</p><p>  8.Reset=0,clk為上升沿觸發(fā),且hold=0,如果state為f狀態(tài)時,如果a_m=1且next_state='1'則recount=1,state<=a;sign_state<="100101101001";否則recount<='0';state<=f;如果為手動狀態(tài)a_m=0

83、且h_butt='1則recount<='1';state<=a sign_state<="100101101001";否則recount<='0', state<=f。</p><p>  2.3.5 閃爍電路模塊的設計</p><p>  2.3.5.1 原理及功能</p><

84、p>  閃爍模塊一般用來提醒或者引起致意,有時又希望能關(guān)斷某一路的顯示。本設計中采用關(guān)斷某個一個LED 的方法,利用一個低頻(2Hz左右)的時鐘與全部的輸入信號都做與運算,然后在送到LED的輸入端口,這樣就會實現(xiàn)該低頻時鐘的頻率閃爍功能。</p><p>  閃爍模塊控制交通燈閃爍通過與運算其實現(xiàn)功能主要程序為:</p><p>  elsif clk_flash='1

85、9; then ――閃爍模塊閃爍時鐘</p><p>  if flash_addr="01"and flash='1'then ――控制交通指示燈</p><p>  cnt<="011010011010"; </p><p>  cnt_flash&l

86、t;=dins xor cnt; ――異或運算</p><p>  else cnt_flash<=dins;</p><p><b>  end if;</b></p><p>  elsif flash_addr="11" and flash ='1' then </p

87、><p>  cnt<="011010100101"; </p><p>  cnt_flash<=dins xor cnt;</p><p>  else cnt_flash<=dins;</p><p><b>  end if;</b></p><

88、;p>  其中clk_flash(2hz)是低頻閃爍信號,clk是系統(tǒng)時鐘信號,clk_flash是低頻閃爍時鐘信號, flash, flash_addr是交通燈控制器和計數(shù)器控制器產(chǎn)生的控制信號,它們共同作用判別是否關(guān)斷、關(guān)開LED交通燈。</p><p>  2.3.5.2 時序仿真</p><p>  圖2-6 閃爍電路模塊時序仿真波形</p><p>

89、<b>  時序仿真說明:</b></p><p>  1.reset=1,則cnt_flash清零。</p><p>  2.reset=0,clk為上升沿觸發(fā),如果hold=1時,cnt_flash=dins,即保持不變,輸入等于輸出。</p><p>  3. reset=0,clk為上升沿觸發(fā),且hold=0,如果clk_flash=&

90、#39;1' 且flash_addr="01"and flash='1'則cnt=011010011010,cnt_flash<=dins xor cnt;。否則cnt_flash<=dins;</p><p>  4.reset=0,clk為上升沿觸發(fā),且hold=0,如果clk_flash='1且,flash_addr="11"

91、; and flash ='1'則cnt<="011010100101"; cnt_flash<=dins xor cnt。否則cnt_flash<=dins;</p><p>  2.3.6 消振模塊設計</p><p>  2.3.6.1 原理及功能</p><p>  交通燈出現(xiàn)緊急情況或需要交通人員進行手

92、動控制時,需要手動操作按鍵,由于按鍵被按下和按鍵彈起時都有抖動,造成控制器采集到多個信號信息,使得計數(shù)器產(chǎn)生一些誤操作,控制器誤判概率增加。</p><p>  消振功能模塊通過采用延時響應原理來消除抖動和誤操作,模塊利用方波上升延采集信號,當采集到信號時,進行計數(shù),計數(shù)直到設定值時,系統(tǒng)才認為此信號為有用信息,進行響應輸出控制信號。否則,屏蔽掉此信號,不響應執(zhí)行輸出。[8]</p><p&g

93、t;  在本模塊中有五個輸入端,resetr是內(nèi)部初始化信號,當模塊采集到初始化信號時,置零內(nèi)部信號,clkr是模塊時鐘信號,其它三個是手動按鍵輸入端,手動轉(zhuǎn)化控制按鈕a_mr,手動轉(zhuǎn)換按鈕h_buttonr,緊急情況禁止按鈕holdr。模塊采用clkr1KHZ的方波作為時鐘信號,模塊每1um采集一次信息,當采集到十個上升延時響應操作,輸出一個1um的控制信號。</p><p><b>  主要程序如下

94、:</b></p><p>  。elsif clkr'event and clkr='1' then ――1khz的時鐘信號</p><p>  if holdr='1' then --采集到手動信息</p><p>  if cnt2>="0111&qu

95、ot; then ――計數(shù)判斷</p><p>  cnt2<="0000";</p><p><b>  hoq<='1';</b></p><p>  else cnt2<=cnt2+1; ――加計數(shù)</p>&

96、lt;p><b>  hoq<='0';</b></p><p><b>  end if;</b></p><p><b>  end if;</b></p><p>  2.3.6.2 時序仿真</p><p>  圖2-7 消震模塊時序仿真波形

97、</p><p><b>  時序仿真說明:</b></p><p>  1.resetr=1,則 cnt1,cnt2,cnt3清零。</p><p>  2.resetr=0,clk為上升沿觸發(fā),當holdr=1時,cnt1的值大于等于10時,則清零cnt1,令hoq=1,否則cnt1加一,hoq=0不變。</p><p&

98、gt;  3.resetr=0,clk為上升沿觸發(fā),當a_mr=1時,cnt2的值大于等于10時,則清零cnt2,令aq=1,否則cnt2加一,aq=0不變。</p><p>  4.resetr=0,clk為上升沿觸發(fā),當h_buttonr=1時,cnt3的值大于等于10時,則清零cnt3,令hq=1,否則cnt2加一,hq=0不變。</p><p>  2.3.7 譯碼器設計 <

99、;/p><p>  2.2.3.7.1 原理及功能</p><p>  用來實現(xiàn)將二進制碼或二——十進制碼,譯成一組與輸入代碼一一對應的高、低電平信號的電路就是譯碼器。它是一個多輸入、多輸出電路,它的輸入是二進制代碼或二——十進制代碼,輸出是代碼所代表的字符。本設計中采用七段顯示譯碼器來顯示交通燈上的倒記時。</p><p>  2.3.7.2 時序仿真</p&g

100、t;<p>  圖2-8 譯碼器模塊時序仿真波形</p><p>  2.3.8 總體電路設計</p><p>  電路由從總體上是由各個功能的電路模塊組成。通過元件例化語句調(diào)用低層次的當前設計實體。(程序見附錄P9)</p><p>  圖2-9 總體電路的時序仿真波形</p><p>  2.4 實驗平臺的引腳配置及下載測試

101、</p><p>  2.4.1 實驗平臺介紹</p><p>  2.4.1.1 實驗系統(tǒng)主板提供的基本功能說明:</p><p>  15個按鍵:即九個琴鍵按鍵(按住琴鍵,對應輸出指示的紅色二極管亮,</p><p>  表示輸出高電平,松開琴鍵,對應輸出指示的紅色二極管滅,表示輸出為低電平)。五個電平按鍵(按下鍵,對應輸出指示的紅色二極

102、管亮,表示輸出高電平,再按下鍵,對應輸出指示的紅色二極管滅,表示輸出為低電平)。一個脈沖模式按鍵:當按下此按鍵,對應輸出 20ms 的脈沖電平。各按鍵均已用軟件消抖。</p><p>  8個共陰數(shù)碼管,其中 7 個作為數(shù)碼顯示用(顯示采用掃描和自動滅零技</p><p>  術(shù),當輸入的四位二進制數(shù)大于 1001 時,滅燈),通過跳線選擇供 CPLD/FPGA 或單片機使用。</p

103、><p>  6個共陰數(shù)碼管,其中 6 個作為數(shù)碼顯示用(自動滅零技術(shù),當輸入的四</p><p>  位二進制數(shù)大于 1001 時,滅燈),直接與 CPLD/FPGA 連接。用戶直接提供 6 個數(shù)碼管的 4 位 BCD 碼輸入,共 24 位。8個發(fā)光二極管(輸入高電平時,二極管發(fā)亮)。4組時鐘輸入(時鐘頻率從 50MHz 到 2Hz )即 CLK1 , CLK2 , CLK3,CLK4 。其

104、中任何一組只能用一個跳線帽接通時鐘信號,結(jié)對不能在一組上插兩個或兩個以上的跳線帽接通兩個以上的時鐘。一個蜂鳴器和一個喇叭(由跳線 K1 接通);一個串行通信接口,通過跳線選擇供 CPLD/FPGA 或單片機使用。</p><p>  電源輸入電壓:交流 220V+-10V。</p><p>  電源輸出電壓:+5V(2A)和+-12V(0.5A)。+5V的地和12V地。</p>

105、<p>  2.4.1.2 跳線說明</p><p><b>  Jump1:</b></p><p> ?。?,2)對XILINX的CPLD/FPGA進行配置。 </p><p> ?。?,4)對LATTICE的 CPLD進行 配置。

106、 </p><p> ?。?,6)對ALTERA的 CPLD/FPGA進行配置。 </p><p> ?。?,8)對89S5X進行配置。</p><p>  表2-2 Jump1端口配置</p><p><b>  Jump2:</b>&

107、lt;/p><p>  (2,4)(5,7)單片機串口與RS232的 端口相連。 </p><p> ?。?,3)(6,8)CPLD/FPGA串行信號與RS232端口相連。 </p><p>  (1,2)(7,8)單片機與CPLD/FPGA的串口對連。</p&

108、gt;<p>  表2-3 Jump2端口配置</p><p><b>  Jump3:</b></p><p>  (1,2)提供USB外設的電源 </p><p>  表2-4 Jump3端口配置</p><p><b>  Jump4:</b></p><

109、p> ?。?,2)選通AS0809 </p><p> ?。?,3)停用0809 </p><p>  表2-5 Jump4端口配置</p>&l

110、t;p><b>  Jump5:</b></p><p> ?。?,2)選通AD0832 </p><p> ?。?,4)停用0832

111、 </p><p>  表2-6 Jump5端口配置</p><p><b>  MCU JP1:</b></p><p>  全接左:由CPLD/FPGA控制掃描數(shù)碼管顯示</p><p>  全接右:由單片機控制掃描數(shù)碼管顯示</p><p><b>  MCU JP2:&

112、lt;/b></p><p>  按下:單片機下載狀態(tài)</p><p>  彈上:單片機運行狀態(tài)</p><p><b>  MCU JP3:</b></p><p>  全接左:使用IIC端口連接</p><p>  全接右:使用掃描鍵盤</p><p><b

113、>  MCU JP4:</b></p><p>  全接左:由CPLD/FPGA控制步進電機驅(qū)動信號</p><p>  全接右:由單片機控制步進電機驅(qū)動信號</p><p>  ALTERA公司的 EP1K30芯片的 下載實驗板的引腳分配</p><p>  表2-2 下載實驗板1K30的 引腳與實驗系統(tǒng)的連接關(guān)系[9]

114、</p><p>  2.4.2 引腳配置及下載測試</p><p>  按表2-2可對管腳重新分配和定位進行硬件測試,為后面的器件下載和硬件實現(xiàn)提供保障。管腳配置定位如圖2-10所示:</p><p>  圖2-10 管腳的配置定位</p><p>  3 交通燈的硬件實現(xiàn)</p><p><b>  3.

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論