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

下載本文檔

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

文檔簡(jiǎn)介

1、<p>  學(xué)生畢業(yè)設(shè)計(jì)(論文)報(bào)告</p><p>  系 別: 電子與電氣工程學(xué)院 </p><p>  專 業(yè): </p><p>  班 號(hào): </p><p>  學(xué) 生 姓 名: 甘秋南 &l

2、t;/p><p>  學(xué) 生 學(xué) 號(hào): </p><p>  設(shè)計(jì)(論文)題目: 基于EDA技術(shù)的交通燈設(shè)計(jì)</p><p>  指 導(dǎo) 教 師: </p><p>  設(shè) 計(jì) 地 點(diǎn): </p><p>  起

3、迄 日 期: </p><p>  畢業(yè)設(shè)計(jì)(論文)任務(wù)書</p><p>  專業(yè) 班級(jí) 姓名 </p><p>  一、課題名稱: 基于EDA技術(shù)的交通燈設(shè)計(jì) </p><p&

4、gt;<b>  二、主要技術(shù)指標(biāo):</b></p><p>  1、運(yùn)用數(shù)字電路理論知識(shí)自行設(shè)計(jì)一個(gè)較為完整的小型數(shù)字系統(tǒng)。 </p><p>  2、實(shí)現(xiàn)簡(jiǎn)單的交通燈控制的要求。 </p><p>  三、工作內(nèi)容和要求:</p><p>  1、交通燈從綠變

5、紅時(shí),有5秒黃燈亮的間隔時(shí)間;</p><p>  2、交通燈紅變綠是直接進(jìn)行的,沒有間隔時(shí)間;</p><p>  3、綠燈時(shí)間為25秒,紅燈時(shí)間為15秒;</p><p>  4、采用VHDL語言編寫程序,并在QUARTUSII工具平臺(tái)中進(jìn)行仿真,下載到EDA實(shí)驗(yàn)箱進(jìn)行驗(yàn)證。</p><p>  5、編寫設(shè)計(jì)報(bào)告,要求包括方案選擇、程序清

6、單、調(diào)試過程、測(cè)試結(jié)果及心得體會(huì)。</p><p><b>  四、主要參考文獻(xiàn):</b></p><p>  [1] 周偉 《交通信號(hào)燈的設(shè)計(jì)原理》 上海光源研究所 </p><p>  [2] 王軍華 《LED道路交通信號(hào)燈測(cè)試研究》 交通管理學(xué)院研究所. </p><p>

7、  [3] 雷伏容 《VHDL電路設(shè)計(jì)》 清華大學(xué)出版社 </p><p>  [4] 甘歷 《VHDL應(yīng)用與開發(fā)實(shí)踐》 科學(xué)出版社

8、 </p><p>  學(xué) 生(簽名) 2011年9月 7日 </p><p>  指 導(dǎo) 教師(簽名) 2011年9月10日 </p><p>  教研室主任(簽名) 2011年9月10日</p><p>  系

9、 主 任(簽名) 2011年9月12日</p><p>  畢業(yè)設(shè)計(jì)(論文)開題報(bào)告</p><p>  基于EDA技術(shù)的交通燈設(shè)計(jì)</p><p><b>  目錄</b></p><p><b>  摘要</b></p><p><

10、b>  Abstract</b></p><p>  第一章 前言............................................................1</p><p>  EDA技術(shù)及其發(fā)展.................................................1

11、 </p><p>  選擇VHDL硬件描述語言設(shè)計(jì)的優(yōu)勢(shì)..................................2 </p><p>  第二章 基于EDA技術(shù)的交通燈任務(wù)設(shè)計(jì)................................3</p><p> 

12、 2.1 任務(wù)要求................................................3 </p><p>  2.2 設(shè)計(jì)設(shè)計(jì)....................................................3

13、 </p><p>  2.3 方案論證與對(duì)比..............................................3 </p><p>  第三章 基于EDA技術(shù)的交通燈設(shè)計(jì)描述...................................4</p>&

14、lt;p>  3.1 交通系統(tǒng)的發(fā)展趨勢(shì)...........................................4 </p><p>  3.2紅綠燈交通信號(hào)系統(tǒng)功能描述....................................4

15、 </p><p>  第四章 交通燈系統(tǒng)的設(shè)計(jì)的相關(guān)模塊設(shè)計(jì)..................................7</p><p>  4.1時(shí)鐘脈沖發(fā)生模塊.............................................7</p><p

16、>  4.2計(jì)數(shù)秒數(shù)選擇模塊.............................................8</p><p>  4.3倒計(jì)時(shí)控制模塊..............................................11</p><p>  4.4紅綠燈信號(hào)控制模塊.........................................

17、.14</p><p>  4.5交通燈系統(tǒng)總述及仿真........................................16</p><p>  結(jié)束語.................................................................17 </p

18、><p>  參考文獻(xiàn)...............................................................18 </p><p>  答謝詞..................................................................1

19、9</p><p>  附錄:程序..............................................................20</p><p><b>  摘 要</b></p><p>  隨著大規(guī)模集成電路及計(jì)算機(jī)技術(shù)的迅速發(fā)展,以及人工智能在控制技術(shù)方面的廣泛運(yùn)用,智能設(shè)備有了很大的發(fā)展,是現(xiàn)代科技發(fā)

20、展的主流方向。本文介紹了一個(gè)交通燈系統(tǒng)的設(shè)計(jì)。</p><p>  傳統(tǒng)的交通燈控制系統(tǒng)多數(shù)由單片機(jī)或PLC實(shí)現(xiàn),本文介紹的是基于EDA技術(shù)設(shè)計(jì)交通燈系統(tǒng)的一種方案。EDA技術(shù)的一個(gè)重要特征就是使用硬件描述語言來完成系統(tǒng)的設(shè)計(jì)文件,應(yīng)用VHDL的數(shù)字電路實(shí)驗(yàn)降低了數(shù)字系統(tǒng)的設(shè)計(jì)難度,這在電子設(shè)計(jì)領(lǐng)域已得到設(shè)計(jì)者的廣泛采用。本設(shè)計(jì)就是針對(duì)交通信號(hào)燈控制器的設(shè)計(jì)問題,提出了基于VHDL語言的交通信號(hào)燈系統(tǒng)的硬件實(shí)現(xiàn)方

21、法。</p><p>  通過對(duì)系統(tǒng)進(jìn)行結(jié)構(gòu)分析,采用了層次化的設(shè)計(jì)方法,給出了各個(gè)模塊的VHDL程序,并且利用Max PlusⅡ?qū)?yīng)用程序進(jìn)行了仿真,并給出了相應(yīng)的仿真結(jié)果。在用VHDL語言進(jìn)行電路設(shè)計(jì)時(shí),應(yīng)充分認(rèn)識(shí)到VHDL語言的特點(diǎn),從設(shè)計(jì)思想、語句運(yùn)用及描述方法上等多方面對(duì)電路進(jìn)行優(yōu)化設(shè)計(jì)。通過電路優(yōu)化設(shè)計(jì),可以使用規(guī)模更小的可編程邏輯芯片,從而降低系統(tǒng)成本。</p><p>  

22、關(guān)鍵詞:交通信號(hào)燈,VHDL,仿真</p><p><b>  Abstract</b></p><p>  With the rapid development of large scale integrated circuits and computer technology and the extensive use of intelligent devices

23、 in the control of artificial intelligence technology, intelligent devices have gotten great progress and become the mainstream of the development of modern science . This paper describes the system design of traffic lig

24、hts . Traditional traffic light control system is mostly achieved by a single chip or PLC, this paper introduces a scheme of the design of traffi</p><p>  Keywords: traffic light ,VHDL ,simulation</

25、p><p><b>  第一章 前言</b></p><p>  不同的城市存在著不同的城市問題,但其中有一個(gè)共同的問題就是城市交通。在交叉路口如何解決混合交通流中的相互影響,就是解決問題的關(guān)鍵所在!隨著我國(guó)經(jīng)濟(jì)的穩(wěn)步發(fā)展,人民生活水平的日漸提高,越來越多的汽車進(jìn)入尋常百姓的家庭,再加上政府大力地發(fā)展公交、出租車行業(yè),道路上的車輛越來越多,使得城市的交通成為了一個(gè)主要的問

26、題。嚴(yán)重的擁堵現(xiàn)象,逐漸惡化的城市環(huán)境,都給廣大市民帶來了許多困擾。要解決這些問題不僅要求道路越來越寬闊,而且更需要有新的交通管理模式出臺(tái)。舊有的交通控制系統(tǒng)的弊病和人們?cè)絹碓礁叩囊蠹せ嗣?,使原來不太突出的交通問題被提上了日程?,F(xiàn)在有關(guān)部門愈來愈多的注重在交通管理中引進(jìn)自動(dòng)化、智能化技術(shù),比如“電子警察”、自適應(yīng)交通信號(hào)燈,以及耗資巨大的交通指揮控制系統(tǒng)等。經(jīng)濟(jì)的發(fā)展和社會(huì)的進(jìn)步,使道路交通成為社會(huì)活動(dòng)的重要組成部分。對(duì)交通的管控

27、能力,也就從側(cè)面體現(xiàn)了這個(gè)國(guó)家對(duì)整個(gè)社會(huì)的管理控制能力,因此我們國(guó)家越來越重視運(yùn)用各種高科技手段來加強(qiáng)對(duì)交通的管控能力,這不僅是衡量城市交通管理水平的標(biāo)志,更是城市交通發(fā)展的重要目標(biāo)。</p><p><b>  EDA技術(shù)及其發(fā)展</b></p><p>  現(xiàn)代電子設(shè)計(jì)技術(shù)的核心是EDA技術(shù)。EDA技術(shù)就是依賴功能強(qiáng)大的計(jì)算機(jī),在EDA工具軟件平臺(tái)上,對(duì)以硬件描述

28、語言HDL 為系統(tǒng)邏輯描述手段完成的設(shè)計(jì)文件,它能自動(dòng)地完成邏輯編譯、邏輯化簡(jiǎn)、邏輯分割、邏輯綜合、結(jié)構(gòu)綜合(布局布線),以及邏輯優(yōu)化和仿真測(cè)試,直至實(shí)現(xiàn)既定的電子線路系統(tǒng)功能。EDA技術(shù)在進(jìn)入21世紀(jì)后,得到了更大的發(fā)展。在仿真和設(shè)計(jì)兩方面支持標(biāo)準(zhǔn)硬件描述語言的功能越來越強(qiáng)大,軟硬件技術(shù)也進(jìn)一步得到了融合,在電子行業(yè)的產(chǎn)業(yè)領(lǐng)域、技術(shù)領(lǐng)域和設(shè)計(jì)應(yīng)用領(lǐng)域得到了進(jìn)一步的肯定,使得復(fù)雜電子系統(tǒng)的設(shè)計(jì)和驗(yàn)證趨于簡(jiǎn)單化。即使是普通的電子產(chǎn)品的開發(fā)

29、,EDA技術(shù)常常使一些原來的技術(shù)瓶頸得以輕松突破,從而使產(chǎn)品的開發(fā)周期大為縮短、性能價(jià)格比大幅提高[2]。不言而喻,EDA技術(shù)將迅速成為電子設(shè)計(jì)領(lǐng)域中的極其重要的組成部分。</p><p>  EDA技術(shù)是20世紀(jì)90年代初從CAD(計(jì)算機(jī)輔助設(shè)計(jì))、CAM(計(jì)算機(jī)輔助制造),CAT(計(jì)算機(jī)輔助測(cè)試)和CAE(計(jì)算機(jī)輔助工程)的概念發(fā)展而來的?,F(xiàn)代EDA技術(shù)就是以讓算機(jī)為工具,在EDA軟件平臺(tái)上,根據(jù)硬件描述語言

30、HDL完成的設(shè)計(jì)文件,能自動(dòng)地完成用軟件方式描述的電子系統(tǒng)到硬件系統(tǒng)的邏輯編譯、邏輯化簡(jiǎn)、邏輯分割、邏輯綜合及優(yōu)化、布局布線、邏輯仿真,直至完成對(duì)于特定目標(biāo)芯片的適配編譯、邏輯映射和編程下載等工作。設(shè)計(jì)者的工作僅限于利用軟件的方式來完成對(duì)系統(tǒng)硬件功能的描述,在EDA工具的幫助下和應(yīng)用相應(yīng)的FPGA/CPLD器件,就可以得到最后的設(shè)計(jì)結(jié)果。盡管目標(biāo)系統(tǒng)是硬件,但整個(gè)設(shè)計(jì)和修改過程如同完成軟件設(shè)計(jì)一樣方便和高效</p><

31、;p>  選擇VHDL硬件描述語言設(shè)計(jì)的優(yōu)勢(shì)</p><p>  首先,簡(jiǎn)單地介紹一下什么是VHDL硬件描述語言。它是EDA設(shè)計(jì)中使用最多的語言之一,它具有很強(qiáng)的電路描述和建模能力,能從多個(gè)層次對(duì)數(shù)字系統(tǒng)進(jìn)行建模和描述,從而大大地簡(jiǎn)化了硬件設(shè)計(jì)任務(wù),提高了設(shè)計(jì)效率和可靠性。</p><p>  其次,這次設(shè)計(jì)選用VHDL硬件描述語言的優(yōu)勢(shì)就在于傳統(tǒng)的用原理圖設(shè)計(jì)電路的方法具有直觀形象

32、的優(yōu)點(diǎn),但如果所設(shè)計(jì)系統(tǒng)的規(guī)模比較大,或者設(shè)計(jì)軟件不能提供設(shè)計(jì)者所需的庫單元時(shí),這種方法就顯得很受限制了。而且用原理圖表示的設(shè)計(jì),通用性、可移植性也比較弱,所以在現(xiàn)代的設(shè)計(jì)中,越來越多地采用了基于硬件描述語言的設(shè)計(jì)方式。利用硬件描述語言來設(shè)計(jì)電路,使探測(cè)各種設(shè)計(jì)方案變成一件很容易的事,因?yàn)橹恍枰獙?duì)描述語言進(jìn)行修改,這比更改電路原理圖要容易實(shí)現(xiàn)得多。</p><p>  VHDL 語言能夠成為標(biāo)準(zhǔn)化的硬件描述語言并

33、獲得廣泛應(yīng)用 , 它自身必然具有很多其他硬件描述語言所不具備的優(yōu)點(diǎn)。歸納起來 ,VHDL 語言主要具有以下優(yōu)點(diǎn):</p><p>  (1) VHDL 語言功能強(qiáng)大 , 設(shè)計(jì)方式多樣</p><p>  (2) VHDL 語言具有強(qiáng)大的硬件描述能力</p><p>  (3) VHDL 語言具有很強(qiáng)的移植能力</p><p>  (4) VH

34、DL 語言的設(shè)計(jì)描述與器件無關(guān)</p><p>  (5) VHDL 語言程序易于共享和復(fù)用</p><p>  第二章 基于EDA技術(shù)的交通燈任務(wù)設(shè)計(jì)</p><p><b>  2.1設(shè)計(jì)要求:</b></p><p>  模擬十字路口交通信號(hào)燈的工作過程,利用實(shí)驗(yàn)板上的兩組紅、 黃、綠LED作為交通信號(hào)燈,設(shè)

35、計(jì)一個(gè)交通信號(hào)燈控制器。</p><p>  交通燈從綠變紅時(shí),有5秒黃燈亮的間隔時(shí)間;</p><p>  交通燈紅變綠是直接進(jìn)行的,沒有間隔時(shí)間;</p><p>  綠燈時(shí)間為25秒,紅燈時(shí)間為15秒;</p><p>  在任意時(shí)間,顯示每個(gè)狀態(tài)到該狀態(tài)結(jié)束所需的時(shí)間。</p><p><b>  2

36、.2設(shè)計(jì)要求:</b></p><p>  采用VHDL語言編寫程序,并在QUARTUSII工具平臺(tái)中進(jìn)行仿真,下載到EDA實(shí)驗(yàn)箱進(jìn)行驗(yàn)證。</p><p>  編寫設(shè)計(jì)報(bào)告,要求包括方案選擇、程序、測(cè)試結(jié)果及心得體會(huì)。</p><p>  2.3方案論證與對(duì)比</p><p><b>  方案一</b>&l

37、t;/p><p>  采用VHDL語言直接編寫,實(shí)現(xiàn)交通燈指揮功能。但此方案編寫復(fù)雜且困難,開發(fā)時(shí)間較長(zhǎng)。編譯后,不便讀懂,找出錯(cuò)誤很困難。</p><p><b>  方案二</b></p><p>  采用模塊層次化設(shè)計(jì),將此設(shè)計(jì)分為四個(gè)模塊:計(jì)時(shí)模塊,狀態(tài)控制模塊,信號(hào)燈顯示模塊,數(shù)碼掃描顯示模塊。將四個(gè)模塊再分別用VHDL語言編寫成,做成原

38、理圖模塊,用原理圖輸入法做整個(gè)設(shè)計(jì)的頂層文件。此方案設(shè)計(jì)方便、簡(jiǎn)單,方法易懂、易操作,也易于尋找程序中的錯(cuò)誤,故我們采用此方案。</p><p>  第三章 基于EDA技術(shù)的交通燈設(shè)計(jì)方案描述</p><p>  3.1 交通系統(tǒng)的發(fā)展趨勢(shì)</p><p>  交通系統(tǒng)未來的發(fā)展趨勢(shì)就是要提高通行能力,加強(qiáng)環(huán)境保護(hù),開展智能化運(yùn)輸和環(huán)保專項(xiàng)技術(shù)的研究,并且要做到以人

39、為本,重點(diǎn)開展交通安全技術(shù)的研究,在這個(gè)過程中要確定經(jīng)濟(jì)合理的目標(biāo),促進(jìn)新材料的廣泛應(yīng)用和開發(fā)。智能交通系統(tǒng)是將先進(jìn)的信息技術(shù)、數(shù)據(jù)通訊傳輸技術(shù)、電子傳感技術(shù)及計(jì)算機(jī)處理技術(shù)等有效的集成運(yùn)用于整個(gè)地面交通管理系統(tǒng)而建立的一種在大范圍內(nèi)、全方位發(fā)揮作用的,實(shí)時(shí)、準(zhǔn)確、高效的綜合交通運(yùn)輸管理系統(tǒng)。 </p><p>  隨著交通狀況的日益惡化,西方發(fā)達(dá)國(guó)家普遍開展了關(guān)于智能交通系統(tǒng)共用信息平臺(tái)的研究、建設(shè)。一方面,西

40、方發(fā)達(dá)國(guó)家開展了許多關(guān)于部門間信息共享、以及公有-私有關(guān)系的專項(xiàng)研究,從法規(guī)、政策、機(jī)制等方面對(duì)部門間信息共享給予了一定的保障;另一方面,西方發(fā)達(dá)國(guó)家的ITS建設(shè)已經(jīng)發(fā)展到一定程度,普遍開展了較高層次的交通信息服務(wù)。然而,在提供良好的交通信息服務(wù)的背后,必定要有功能強(qiáng)大、信息資源豐富的ITS共用信息平臺(tái)作為支撐。 在我國(guó),城市智能交通已逐步得到社會(huì)各界的廣泛關(guān)注,并已成為交通領(lǐng)域的研究熱點(diǎn),社會(huì)各界對(duì)通過智能交通系統(tǒng)建設(shè)、緩解日益嚴(yán)重的

41、交通問題寄予了厚望。 </p><p>  鑒于城市智能交通系統(tǒng)建設(shè)涉及到城市管理多個(gè)部門職能,因此,只有各相關(guān)部門協(xié)調(diào)配合、共同行動(dòng)起來,在必要的機(jī)制和技術(shù)手段下充分實(shí)現(xiàn)部門間的信息共享,城市智能交通才可能順利建設(shè)和發(fā)展。 </p><p>  為此,國(guó)家科技部提出了建設(shè)城市交通ITS共用信息平臺(tái)的構(gòu)想,在此基礎(chǔ)上廣泛開展關(guān)于交通綜合信息的研究和應(yīng)用。智能交通各界通過多年的研究和工程實(shí)踐

42、,普遍認(rèn)為信息平臺(tái)的建設(shè)應(yīng)實(shí)現(xiàn)信息共享樞紐、綜合交通信息服務(wù)、交通輔助決策、重大事件管理等功能目標(biāo)。目前,已有的交通信息采集系統(tǒng)還處于各自分立的狀態(tài)。要實(shí)現(xiàn)上述功能,還需面對(duì)諸多必須解決的問題。多學(xué)科綜合集成ITS共用信息平臺(tái)。 </p><p>  3.2 紅綠燈交通信號(hào)系統(tǒng)功能描述</p><p>  在交通信號(hào)燈的設(shè)計(jì)中,外部硬件電路方面主要包括:兩組紅綠燈、兩組LED顯示器(見圖1

43、,說明:圖1中只畫出了東西、南北方向的紅綠燈及南北方向的LED顯示器,東西方向的LED顯示器與南北方向的相同)。軟件方面包括:(1)電路合成模塊的概念:將交通燈信號(hào)系統(tǒng)劃分成若干個(gè)小電路,編寫每一個(gè)模塊的VHDL程序代碼,并將各個(gè)小電路相連接。這樣可以增加程序的調(diào)試速度,同時(shí)也能夠?qū)⒐ぷ骷?xì)分,以提高編程速度(見圖2、圖3)。(2)參數(shù)化的概念:針對(duì)不同時(shí)段的交通流量,可以調(diào)整紅綠燈電路(增加或者減少電路的計(jì)數(shù)時(shí)間),以增加程序的靈活性。

44、</p><p>  圖2 交通信號(hào)燈系統(tǒng)結(jié)構(gòu)圖</p><p>  由交通信號(hào)燈系統(tǒng)結(jié)構(gòu)圖(見圖2)可知,該系統(tǒng)由4個(gè)子電路組成。其中包括:</p><p><b>  時(shí)鐘發(fā)生電路;</b></p><p><b>  計(jì)數(shù)秒數(shù)選擇電路;</b></p><p><

45、;b>  倒計(jì)時(shí)控制電路;</b></p><p>  紅綠燈信號(hào)控制電路。</p><p>  圖3 交通信號(hào)燈系統(tǒng)模塊圖</p><p>  由圖3可以看出系統(tǒng)大體的工作程序是:首先由時(shí)鐘發(fā)生電路產(chǎn)生穩(wěn)定的時(shí)鐘信號(hào),為下面三個(gè)子電路提供同步工作信號(hào)。接收到時(shí)鐘信號(hào)的紅綠燈信號(hào)控制電路開始工作,并將產(chǎn)生的重新計(jì)數(shù)的輸出使能控制信號(hào)發(fā)送給計(jì)數(shù)秒數(shù)

46、選擇電路和倒計(jì)時(shí)控制電路,同時(shí)還會(huì)將目前電路產(chǎn)生的狀態(tài)信號(hào)發(fā)送給前者。接收到重新計(jì)數(shù)的信號(hào)后計(jì)數(shù)秒數(shù)選擇電路就會(huì)負(fù)責(zé)產(chǎn)生計(jì)數(shù)器所需要的計(jì)數(shù)值,并將這一數(shù)值發(fā)送給倒計(jì)時(shí)控制電路,由它利用發(fā)光二極管顯示倒計(jì)時(shí)的狀態(tài)。當(dāng)計(jì)數(shù)器計(jì)時(shí)完畢,倒計(jì)時(shí)控制器就會(huì)負(fù)責(zé)產(chǎn)生一個(gè)脈沖信號(hào)發(fā)送給紅綠燈信號(hào)控制電路進(jìn)入下一個(gè)狀態(tài),之后循環(huán)這一過程。</p><p>  第四章 交通燈系統(tǒng)的設(shè)計(jì)</p><p>  

47、4.1 時(shí)鐘脈沖發(fā)生模塊</p><p>  在紅綠燈交通信號(hào)系統(tǒng)中,大多數(shù)的情況是通過自動(dòng)控制的方式指揮交通的。因此,為了避免意外事件的發(fā)生,電路必須給出一個(gè)穩(wěn)定的時(shí)鐘(clock)才能讓系統(tǒng)正常的工作。因此,hld1時(shí)鐘發(fā)生電路(見圖4)最主要的功能就是產(chǎn)生一些穩(wěn)定的輸出信號(hào),并將其用做后面幾個(gè)電路的使能控制與同步信號(hào)。</p><p>  圖4 時(shí)鐘發(fā)生電路模塊圖</p>

48、;<p><b>  系統(tǒng)輸入信號(hào):</b></p><p>  clk:由外部信號(hào)發(fā)生器提供1kHZ的時(shí)鐘信號(hào);</p><p>  reset:系統(tǒng)內(nèi)部自復(fù)位信號(hào)。</p><p><b>  系統(tǒng)輸出信號(hào):</b></p><p>  ena_scan:將外部的時(shí)鐘信號(hào)進(jìn)行分頻處

49、理;</p><p>  ena_1hz:產(chǎn)生每秒一個(gè)的脈沖信號(hào);</p><p>  flash_1hz:產(chǎn)生每秒一個(gè)脈沖的時(shí)鐘信號(hào)。</p><p>  經(jīng)仿真后得到的時(shí)序圖(見圖5、圖6):</p><p>  圖5 將clk經(jīng)分頻處理后得到的ena_scan信號(hào)</p><p>  圖6 時(shí)鐘發(fā)生電路時(shí)序圖&

50、lt;/p><p>  從圖5中可以看出,當(dāng)外部信號(hào)發(fā)生器提供了1kHZ的時(shí)鐘信號(hào)后,系統(tǒng)輸出信號(hào)ena_scan就將時(shí)鐘信號(hào)進(jìn)行了4分頻。從圖6又可以看出,當(dāng)加入1kHZ的時(shí)鐘信號(hào)后,ena_1hz產(chǎn)生了周期為一秒的脈沖信號(hào),flash_1hz產(chǎn)生了周期為一秒的脈沖時(shí)鐘信號(hào)。</p><p>  在這段程序的設(shè)計(jì)過程中最大的特點(diǎn)就是引用了參數(shù)化的概念,即使用了常數(shù)(constant)。常數(shù)的

51、定義和設(shè)置主要是為了使程序更容易閱讀和修改,只要改變了常量的數(shù)值,使用到該常數(shù)的地方都會(huì)隨著更新而使用新的常數(shù)值。這就使設(shè)計(jì)的靈活性增強(qiáng)了。例如程序中用到的:constant scan_bit:positive:=2;</p><p>  signal clk_scan_ff:std_logic_vector(scan_bit-1 downto 0);第一句就是將scan_bit設(shè)為常數(shù)‘2’,這個(gè)數(shù)值是可以根據(jù)

52、設(shè)計(jì)的需要任意設(shè)定的。第二句是定義一個(gè)信號(hào),它的位數(shù)就是(scan_bit-1),因?yàn)橹皊can_bit設(shè)定的值為2,所以信號(hào)的位數(shù)就是2位。如果想增減信號(hào)的位數(shù),只需要改動(dòng)常數(shù)的賦值就可以了。</p><p>  4.2 計(jì)數(shù)秒數(shù)選擇模塊</p><p>  當(dāng)通過交通路口時(shí),如果能在一個(gè)方向增添一個(gè)倒計(jì)時(shí)顯示器對(duì)車輛、行人加以提示,可能會(huì)有更好的效果。因此,hld2計(jì)數(shù)秒數(shù)選擇電路(

53、見圖7)最主要的功能就是負(fù)責(zé)輸出顯示器需要的數(shù)值(即倒數(shù)的秒數(shù)值),作為倒計(jì)時(shí)顯示器電路的計(jì)數(shù)秒數(shù)。</p><p>  圖7 計(jì)數(shù)秒數(shù)選擇電路模塊圖</p><p><b>  系統(tǒng)輸入信號(hào):</b></p><p>  clk:由外部信號(hào)發(fā)生器提供1kHZ的時(shí)鐘信號(hào);</p><p>  reset:系統(tǒng)內(nèi)部自復(fù)位

54、信號(hào);</p><p>  ena_scan:接收由時(shí)鐘發(fā)生電路提供的250Hz的時(shí)鐘脈沖信號(hào);</p><p>  recount:接收由交通燈信號(hào)控制電路產(chǎn)生的重新計(jì)數(shù)的使能控制信號(hào);</p><p>  sign_state:接收由交通燈信號(hào)控制電路產(chǎn)生的狀態(tài)信號(hào)。</p><p><b>  系統(tǒng)輸出信號(hào):</b>

55、;</p><p>  load:負(fù)責(zé)產(chǎn)生計(jì)數(shù)器所需要的計(jì)數(shù)數(shù)值。</p><p>  經(jīng)仿真后得到的時(shí)序圖(見圖8):</p><p>  圖8 計(jì)數(shù)秒數(shù)選擇電路時(shí)序圖</p><p>  由計(jì)數(shù)描述選擇電路的時(shí)序圖(見圖8)可以看出這段程序中定義了在正常車流量情況下,東西及南北方向紅燈、黃燈和綠燈需要維持的秒數(shù)分別是15s、5s和25s

56、。</p><p>  architecture bhv of hld2 is</p><p>  constant redew_time:integer:=15;---東西方向紅燈設(shè)定為15s。</p><p>  constant yellowew_time:integer:=5;--東西方向黃燈設(shè)定為5s。</p><p>  cons

57、tant greenew_time:integer:=25;--東西方向綠燈設(shè)定為25s。</p><p>  constant redsn_time:integer:=15;--南北方向紅燈設(shè)定為15s。</p><p>  constant yellowsn_time:integer:=5;--南北方向黃燈設(shè)定為5s。</p><p>  constant gr

58、eensn_time:integer:=25;--南北方向綠燈設(shè)定為25s。</p><p><b>  begin</b></p><p>  process(reset,clk)</p><p><b>  begin</b></p><p>  if reset='1' the

59、n</p><p>  load<="00000000";</p><p>  elsif (clk'event and clk='1') then</p><p>  if (ena_scan='1' and recount='1') then</p><p>

60、;  case sign_state is</p><p>  when "000"=>load<=conv_std_logic_vector(greensn_time,8);</p><p>  --sign_state=“000”時(shí),南北方向綠燈亮25s。</p><p>  when "001"=>lo

61、ad<=conv_std_logic_vector(yellowsn_time,8);</p><p>  --sign_state=“001”時(shí),南北方向黃燈亮5s。</p><p>  when "010"=>load<=conv_std_logic_vector(redsn_time,8);</p><p>  --sig

62、n_state=“010”時(shí),南北方向紅燈亮15s。</p><p>  when "011"=>load<=conv_std_logic_vector(redew_time,8);</p><p>  --sign_state=“011”時(shí),東西方向紅燈亮15s。</p><p>  when "100"=>

63、;load<=conv_std_logic_vector(yellowew_time,8);</p><p>  --sign_state=“100”時(shí),東西方向黃燈亮5s。</p><p>  when "101"=>load<=conv_std_logic_vector(greenew_time,8);</p><p>  

64、--sign_state=“101”時(shí),東西方向綠燈亮25s。</p><p>  when others=>load<=conv_std_logic_vector(yellowsn_time,8);</p><p><b>  end case;</b></p><p>  當(dāng)外部信號(hào)發(fā)生器提供了1kHZ的時(shí)鐘信號(hào),并且重新計(jì)數(shù)信

65、號(hào)(recount)為“1”時(shí),load信號(hào)就會(huì)按照預(yù)先設(shè)置的數(shù)值逐1遞減,直至減到零為止,當(dāng)下一個(gè)重新計(jì)數(shù)信號(hào)(recount)再次為“1”時(shí),會(huì)重復(fù)此過程。</p><p>  在這段程序的設(shè)計(jì)中用到了conv_std_logic_vector(value,n)語句,它的用法就是將已經(jīng)定義的數(shù)值 (value)轉(zhuǎn)換成n位(bit)的表示方法。例如程序中:when "000"=>loa

66、d<=conv_std_logic_vector(greenew_time,8);就是將十進(jìn)制的25轉(zhuǎn)換成二進(jìn)制的19,這就使設(shè)計(jì)減少了很多不必要的麻煩。</p><p>  4.3 倒計(jì)時(shí)控制模塊</p><p>  通過日常生活中的觀察,我發(fā)現(xiàn)在一些交通路口已經(jīng)開始使用倒計(jì)時(shí)顯示器,它們的作用就是用來提示車輛行人目前還有多長(zhǎng)時(shí)間信號(hào)燈會(huì)發(fā)生變化,這樣車輛行人就可以提前判斷是否有足

67、夠的時(shí)間通過路口,進(jìn)而就可以避免很多意外事故的發(fā)生。例如:南北方向綠燈,車輛處于正常行駛中,東西方向紅燈,車輛處于等待中,若南北方向行駛的車輛看到倒計(jì)時(shí)顯示器上可以通行的時(shí)間很短,可能就會(huì)放慢速度等待下一次通行,這樣在東西方向綠燈時(shí),車輛就能夠正常行駛,不會(huì)為等待南北方向強(qiáng)行的車輛而耽誤更多的時(shí)間。如此循環(huán)下去,道路就會(huì)暢通無阻了??紤]到有些路口的交通擁堵現(xiàn)象較為嚴(yán)重,車輛會(huì)在道路上排成很長(zhǎng)的一隊(duì),這樣排在較遠(yuǎn)距離的司機(jī)就很難看清楚倒計(jì)

68、時(shí)顯示器上變化的數(shù)字,有可能會(huì)影響到車輛之間的正常行駛。因此,如果采用發(fā)光二極管作為倒計(jì)時(shí)的顯示裝置就會(huì)使司機(jī)和行人一目了然,同樣也能夠起到很好的提示作用。所以,hld3倒計(jì)時(shí)控制電路(見圖9)最主要的功能就是負(fù)責(zé)接收hld2電路輸出的值,然后將其轉(zhuǎn)換成BCD碼,并利用發(fā)光二極管顯示出來,讓車輛行人能夠清楚地知道再過多久信號(hào)燈就會(huì)發(fā)生變化。</p><p>  圖9 倒計(jì)時(shí)控制電路</p><

69、;p><b>  系統(tǒng)輸入信號(hào):</b></p><p>  clk:由外部信號(hào)發(fā)生器提供1kHz的時(shí)鐘信號(hào);</p><p>  reset:系統(tǒng)內(nèi)部自復(fù)位信號(hào);</p><p>  ena_1hz:接收由時(shí)鐘發(fā)生電路提供的1Hz的脈沖信號(hào);</p><p>  recount:重新計(jì)數(shù)的使能控制信號(hào);</

70、p><p>  load:負(fù)責(zé)接收計(jì)數(shù)器所需要的計(jì)數(shù)數(shù)值。</p><p><b>  系統(tǒng)輸出信號(hào):</b></p><p>  led:負(fù)責(zé)將計(jì)數(shù)數(shù)值轉(zhuǎn)換成BCD碼,并利用發(fā)光二極管顯示倒計(jì)時(shí)狀態(tài);</p><p>  next_state:當(dāng)計(jì)數(shù)器計(jì)時(shí)完畢后,負(fù)責(zé)產(chǎn)生一個(gè)脈沖信號(hào),作為下一個(gè)狀態(tài)的觸發(fā)信號(hào)。</p

71、><p>  經(jīng)仿真后得到的時(shí)序圖(見圖10):</p><p>  圖10 倒計(jì)時(shí)控制電路時(shí)序圖</p><p>  由倒計(jì)時(shí)控制電路的時(shí)序圖(見圖10)可以看出,當(dāng)clk時(shí)鐘信號(hào)來臨后,在ena_1hz脈沖信號(hào)的同時(shí)激勵(lì)下,led會(huì)按照預(yù)先設(shè)置好的時(shí)間開始逐1遞減,進(jìn)行倒計(jì)時(shí)顯示。</p><p>  process(clk,reset)&

72、lt;/p><p><b>  begin</b></p><p>  if (reset='1') then </p><p>  cnt_ff<="00000000";</p><p>  led<="0000000000000000000000000"

73、;--當(dāng)reset=1,則將cnt_ff與led清零。</p><p>  elsif (clk'event and clk='1') then</p><p>  if ena_1hz='1' then </p><p>  if (recount='1') then</p><

74、p>  cnt_ff<=load-1;--當(dāng)reset=0,clk為上升沿觸發(fā),且ena_1hz與recount為1時(shí),load將減1的數(shù)值賦給cnt_ff。</p><p>  else cnt_ff<=cnt_ff-1;-- 當(dāng)reset=0,clk為上升沿觸發(fā),且ena_1hz為1時(shí),recount為0時(shí),cnt_ff減1。</p><p><b>  e

75、nd if;</b></p><p><b>  end if;</b></p><p>  case conv_integer(cnt_ff) is</p><p>  when 0=>led(24 downto 0)<="1000000000000000000000000";</p>

76、<p>  when 1=>led(24 downto 0)<="1100000000000000000000000";</p><p>  when 2=>led(24 downto 0)<="1110000000000000000000000";</p><p>  when 3=>led(24 down

77、to 0)<="1111000000000000000000000";</p><p><b>  ……</b></p><p>  when 23=>led(24 downto 0)<="1111111111111111111111110";</p><p>  when 24=>

78、;led(24 downto 0)<="1111111111111111111111111";</p><p>  when others=>led(24 downto 0)<="0000000000000000000000000";</p><p><b>  end case;</b></p>

79、<p>  這段程序是采用的就是查表的方法并且利用發(fā)光二極管進(jìn)行倒計(jì)時(shí)顯示,如圖10所示:當(dāng)綠燈點(diǎn)亮開始計(jì)數(shù)后,load就會(huì)將減1后的值賦給cnt_ff,之后cnt_ff又會(huì)從case語句中查找到相對(duì)應(yīng)的值再賦給led顯示所剩余的時(shí)間。在程序編寫過程中運(yùn)用到了conv_integer()語句,它可以將cnt_ff所賦的值轉(zhuǎn)換成整數(shù)。由圖可知led是25位的系統(tǒng)輸出信號(hào),負(fù)責(zé)控制發(fā)光二極管的輸出,所以25位的輸出信號(hào)可以分成七

80、組控制發(fā)光二極管的顯示,其中“1”為點(diǎn)亮,“0”為熄滅。其對(duì)應(yīng)方式如下表所示:</p><p>  表1:LED25位系統(tǒng)輸出信號(hào)</p><p>  4.4 紅綠燈信號(hào)控制模塊</p><p>  在紅綠燈交通信號(hào)系統(tǒng)中,大多數(shù)的情況是通過自動(dòng)控制的方式指揮交通。但為了配合高峰時(shí)段,防止交通擁擠,有時(shí)還必須使用手動(dòng)控制,即讓交通警察自行指揮交通。因此,hld4紅綠

81、燈信號(hào)控制電路(見圖11)除了負(fù)責(zé)監(jiān)控路口紅綠燈之外,最主要的功能就是能夠利用開關(guān)來切換手動(dòng)與自動(dòng)的模式,讓交通警察能夠通過外部輸入的方式來控制紅綠燈交通信號(hào)系統(tǒng)的運(yùn)做。 </p><p>  圖11 紅綠燈信號(hào)控制電路</

82、p><p><b>  系統(tǒng)輸入信號(hào):</b></p><p>  clk:由外部信號(hào)發(fā)生器提供1kHZ的時(shí)鐘信號(hào);</p><p>  reset:系統(tǒng)內(nèi)部自復(fù)位信號(hào);</p><p>  ena_scan:接收由時(shí)鐘發(fā)生電路提供的250Hz的時(shí)鐘脈沖信號(hào);</p><p>  ena_1hz:接收

83、由時(shí)鐘發(fā)生電路提供的1Hz的脈沖信號(hào);</p><p>  flash_1hz:接收由時(shí)鐘發(fā)生電路提供的1Hz的脈沖時(shí)鐘信號(hào);</p><p>  a_m:手動(dòng)、自動(dòng)切換按鈕(1:自動(dòng)、0:手動(dòng));</p><p>  st_butt: 紅綠燈狀態(tài)切換按鈕(在手動(dòng)操作下,每按一次按鈕就變換一個(gè)狀態(tài));</p><p>  next_state

84、:接收由倒計(jì)時(shí)控制電路提供的下一個(gè)狀態(tài)的觸發(fā)信號(hào)。</p><p>  系統(tǒng)輸出信號(hào): recount:產(chǎn)生重新計(jì)數(shù)的輸出使能控制信號(hào);</p><p>  sign_state:產(chǎn)生輸出狀態(tài)信號(hào);</p><p>  red:負(fù)責(zé)紅色信號(hào)燈的顯示;</p><p>  green:負(fù)責(zé)綠色信號(hào)燈的顯示;</p><

85、;p>  yellow:負(fù)責(zé)黃色信號(hào)燈的顯示。</p><p>  經(jīng)仿真后得到的時(shí)序圖(見圖12):</p><p>  圖12 紅綠燈信號(hào)控制電路時(shí)序圖</p><p>  圖12顯示的是第三種狀態(tài)時(shí)東西方向紅燈亮、南北方向綠燈亮。紅綠燈信號(hào)控制電路的作用就是產(chǎn)生的一系列的控制信號(hào)去完成之前幾個(gè)模塊設(shè)定好的功能。</p><p>

86、  4.5 交通燈系統(tǒng)總述及仿真</p><p>  在程序設(shè)計(jì)語言中,程序的開始總會(huì)調(diào)用庫(library)來提供設(shè)計(jì)程序時(shí)所需要的基本命令。但是,如果要進(jìn)一步設(shè)計(jì)較為復(fù)雜的程序時(shí),庫中的命令可能就無法支持了。因此,可以設(shè)計(jì)一個(gè)子程序來滿足程序設(shè)計(jì)的需求。</p><p>  上述問題在硬件描述語言的設(shè)計(jì)中也存在,在VHDL程序中的第一行(library ieee;)就是要使用IEEE設(shè)

87、計(jì)好的庫文件,但如果需要使用的元器件并不在庫中時(shí),就只能自己定義了。</p><p>  一個(gè)程序包中至少應(yīng)該包含以下結(jié)構(gòu)中的一種:</p><p>  常數(shù)說明:如定義系統(tǒng)數(shù)據(jù)總線通道的寬度。</p><p>  VHDL數(shù)據(jù)類型說明:主要用于在整個(gè)設(shè)計(jì)中通用的數(shù)據(jù)類型。</p><p>  元件定義:元件定義主要規(guī)定在VHDL設(shè)計(jì)中參與文

88、件例化的文件接</p><p><b>  口界面。</b></p><p>  子程序:并入程序包的子程序有利于在設(shè)計(jì)中任一處進(jìn)行方便地調(diào)</p><p><b>  用。</b></p><p>  經(jīng)仿真后得到的時(shí)序圖(見圖13):</p><p>  圖13 連接各

89、個(gè)模塊后的時(shí)序圖</p><p>  連接各個(gè)模塊后的時(shí)序圖(見圖13)是綜合了上述4個(gè)模塊后仿真出來的波形。圖13顯示的也是狀態(tài)三時(shí)東西方向紅燈亮、南北方向綠燈亮,這與之前紅綠燈信號(hào)控制電路仿真出來的波形結(jié)果是相同的。</p><p><b>  結(jié)束語</b></p><p>  通過這次課程設(shè)計(jì),我進(jìn)一步加深了對(duì)電子設(shè)計(jì)自動(dòng)化的了解。并進(jìn)

90、一步熟練了對(duì)QuartusII軟件的操作。在編寫程序的過程中,遇到了很多問題,使我發(fā)現(xiàn)自己以前學(xué)習(xí)上存在的不足。通過與同學(xué)探討和請(qǐng)教老師,終于把問題都解決了,并加深了對(duì)交通燈原理和設(shè)計(jì)思路的了解。同時(shí)也掌握了做課程設(shè)計(jì)的一般流程,為以后的設(shè)計(jì)積累了一定的經(jīng)驗(yàn)。做課程設(shè)計(jì)時(shí),先查閱相關(guān)知識(shí),把原理吃透,確定一個(gè)大的設(shè)計(jì)方向,在按照這個(gè)方向分模塊的把要實(shí)現(xiàn)的功能用流程圖的形式展示。最后參照每個(gè)模塊把輸入和輸出引腳設(shè)定,運(yùn)用我們所學(xué)的VHDL

91、語言進(jìn)行編程??傊ㄟ^這次的設(shè)計(jì),進(jìn)一步了解了EDA技術(shù),收獲很大,對(duì)軟件編程、排錯(cuò)調(diào)試、相關(guān)儀器設(shè)備的使用技能等方面得到較全面的鍛煉和提高。</p><p><b>  參考文獻(xiàn):</b></p><p>  [1] 周偉 《交通信號(hào)燈的設(shè)計(jì)原理》 上海光源研究所 </p><p>  [2] 王軍華 《LED道路交通信號(hào)燈測(cè)試研究》 交通

92、管理學(xué)院研究所. [3] 雷伏容 《VHDL電路設(shè)計(jì)》 清華大學(xué)出版社 </p><p>  [4] 甘歷 《VHDL應(yīng)用與開發(fā)實(shí)踐》 科學(xué)出版社</p><p><b>  答謝

93、詞</b></p><p>  在指導(dǎo)老師安新艷老師精心指導(dǎo)和嚴(yán)格要求下,經(jīng)過我自己的努力,終于完成了這次課程設(shè)計(jì)。同時(shí)獲得了豐富的理論知識(shí),極大地提高了實(shí)踐能力,對(duì)EDA技術(shù)方面有了更深的了解,這對(duì)我們今后進(jìn)一步學(xué)習(xí)有極大的幫助。通過大量閱讀資料,我拓寬了自己的知識(shí)面,并懂得將所學(xué)知識(shí)融會(huì)貫通到實(shí)踐中去。在獲得知識(shí)的同時(shí),我也認(rèn)識(shí)到了自己還需要學(xué)習(xí)的東西很多,理論需要很好的結(jié)合實(shí)踐,全面分析并解決問

94、題的能力有待提高。</p><p>  另外,此次課程設(shè)計(jì)還獲得了我們的同學(xué)大力支持,在我們對(duì)有些知識(shí)掌握不夠時(shí),是我們的同學(xué)及時(shí)伸出幫助之手使我們的課程設(shè)計(jì)能夠及時(shí)的完成。在此,我們衷心感謝各位同學(xué)的幫助。在未來的工作和學(xué)習(xí)中,我也將以更好的成績(jī)來回報(bào)老師,謝謝你們!</p><p><b>  附錄:程序</b></p><p>  時(shí)鐘脈

95、沖發(fā)生模塊程序:</p><p>  library ieee;</p><p>  use ieee.std_logic_1164.all;</p><p>  use ieee.std_logic_arith.all;</p><p>  use ieee.std_logic_unsigned.all;</p><p&

96、gt;  entity hld1 is</p><p>  port(reset:in std_logic;</p><p>  clk:in std_logic;</p><p>  ena_scan:out std_logic;</p><p>  ena_1hz:out std_logic;</p><p>  

97、flash_1hz:out std_logic);</p><p><b>  end;</b></p><p>  architecture bhv of hld1 is</p><p>  constant scan_bit:positive:=2;</p><p>  constant scan_val:posit

98、ive:=4;</p><p>  constant two_hz_bit:positive:=7;</p><p>  constant two_hz_val:positive:=125;</p><p>  signal clk_scan_ff:std_logic_vector(scan_bit-1 downto 0);</p><p>

99、  signal clk_2hz_ff:std_logic_vector(two_hz_bit-1 downto 0);</p><p>  signal ena_s:std_logic;</p><p>  signal ena_one:std_logic;</p><p>  signal ena_two:std_logic;</p><p&

100、gt;<b>  begin</b></p><p>  process(reset,clk)</p><p><b>  begin</b></p><p>  if reset='1' then</p><p>  clk_scan_ff<="00";&

101、lt;/p><p>  ena_s<='0';</p><p>  elsif (clk'event and clk='1') then</p><p>  if clk_scan_ff>=scan_val-1 then</p><p>  clk_scan_ff<="00&qu

102、ot;;</p><p>  ena_s<='1';</p><p><b>  else</b></p><p>  clk_scan_ff<=clk_scan_ff+1;</p><p>  ena_s<='0';</p><p><b&

103、gt;  end if;</b></p><p><b>  end if;</b></p><p>  end process;</p><p>  ena_scan<=ena_s;</p><p>  process(reset,clk,ena_s)</p><p><

104、b>  begin</b></p><p>  if reset='1' then</p><p>  ena_one<='0';</p><p>  ena_two<='0';</p><p>  clk_2hz_ff<="0000000"

105、;;</p><p>  elsif (clk'event and clk='1') then</p><p>  if ena_s='1' then</p><p>  if clk_2hz_ff>=two_hz_val-1 then</p><p>  clk_2hz_ff<="

106、;0000000";</p><p>  ena_two<='1';</p><p>  ena_one<=not ena_one;</p><p><b>  else</b></p><p>  clk_2hz_ff<=clk_2hz_ff+1;</p>&l

107、t;p>  ena_two<='0';</p><p>  ena_one<=ena_one;</p><p><b>  end if;</b></p><p><b>  end if;</b></p><p><b>  end if;</b&

108、gt;</p><p>  end process;</p><p>  ena_1hz<=ena_one and ena_two and ena_s;</p><p>  flash_1hz<=ena_one;</p><p><b>  end;</b></p><p>  計(jì)數(shù)秒

109、數(shù)選擇電路程序代碼</p><p>  library ieee;</p><p>  use ieee.std_logic_unsigned.all;</p><p>  use ieee.std_logic_arith.all;</p><p>  entity hld2 is</p><p>  port(res

110、et:in std_logic;</p><p>  clk:in std_logic;</p><p>  ena_scan:in std_logic;</p><p>  recount:in std_logic;</p><p>  sign_state:in std_logic_vector(2 downto 0);</p>

111、;<p>  load:out std_logic_vector(7 downto 0));</p><p><b>  end;</b></p><p>  architecture bhv of hld2 is</p><p>  constant redew_time:integer:=15;</p><

112、p>  constant yellowew_time:integer:=5;</p><p>  constant greenew_time:integer:=25;</p><p>  constant redsn_time:integer:=15;</p><p>  constant yellowsn_time:integer:=5;</p>

113、<p>  constant greensn_time:integer:=25;</p><p><b>  begin</b></p><p>  process(reset,clk)</p><p><b>  begin</b></p><p>  if reset='1

114、' then</p><p>  load<="00000000";</p><p>  elsif (clk'event and clk='1') then</p><p>  if (ena_scan='1' and recount='1') then</p>

115、<p>  case sign_state is</p><p>  when "000"=>load<=conv_std_logic_vector(greensn_time,8);</p><p>  when "001"=>load<=conv_std_logic_vector(yellowsn_time,8)

116、;</p><p>  when "010"=>load<=conv_std_logic_vector(redsn_time,8);</p><p>  when "011"=>load<=conv_std_logic_vector(redew_time,8);</p><p>  when "

117、;100"=>load<=conv_std_logic_vector(yellowew_time,8);</p><p>  when "101"=>load<=conv_std_logic_vector(greenew_time,8);</p><p>  when others=>load<=conv_std_logic

118、_vector(yellowsn_time,8);</p><p><b>  end case;</b></p><p><b>  end if;</b></p><p><b>  end if;</b></p><p>  end process;</p>

119、<p><b>  end;</b></p><p>  倒計(jì)時(shí)控制電路程序代碼</p><p>  library ieee;</p><p>  use ieee.std_logic_1164.all;</p><p>  use ieee.std_logic_arith.all;</p>

溫馨提示

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

評(píng)論

0/150

提交評(píng)論