2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩37頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p><b>  目 錄</b></p><p><b>  第一章 緒論3</b></p><p>  1.1 交通燈的介紹3</p><p>  1.2  基于CPLD的交通燈的優(yōu)點(diǎn)3</p><p>  1.3 EDA簡介4</p><p

2、>  1.4 QuartusⅡ簡介5</p><p>  2.1 設(shè)計(jì)內(nèi)容要求5</p><p>  2.2 設(shè)計(jì)初步構(gòu)思6</p><p>  2.3 設(shè)計(jì)總框圖7</p><p>  第三章 各模塊設(shè)計(jì)原理及其仿真8</p><p>  3.1 5秒倒計(jì)時計(jì)數(shù)器8</p><p

3、>  3.1.1 源代碼8</p><p>  3.1.2 元件圖9</p><p>  3.1.3 仿真圖9</p><p>  3.1.4 電路圖9</p><p>  3.1.5流程圖10</p><p>  3.2 25秒倒計(jì)時計(jì)數(shù)器11</p><p>  3.2.

4、1 源代碼11</p><p>  3.2.2 元件圖13</p><p>  3.2.3 仿真圖13</p><p>  3.2.4 電路圖13</p><p>  3.3 20秒倒計(jì)時計(jì)數(shù)器14</p><p>  3.3.1源代碼14</p><p>  3.3.2 元件圖1

5、5</p><p>  3.3.3仿真圖16</p><p>  3.4 30秒倒計(jì)時計(jì)數(shù)器16</p><p>  3.4.1 源代碼16</p><p>  3.4.2 元件圖18</p><p>  3.4.3 仿真圖18</p><p>  3.4.4電路圖19</p&

6、gt;<p>  3.5 15秒倒計(jì)時計(jì)數(shù)器19</p><p>  3.5.1 源代碼19</p><p>  3.5.2 元件圖21</p><p>  3.5.3 仿真圖21</p><p>  3.5.4電路圖22</p><p>  3.6 控制模塊22</p><

7、;p>  3.6.1 源代碼A22</p><p>  3.6.2 元件圖24</p><p>  3.6.3 仿真圖24</p><p>  3.6.4 電路圖25</p><p>  3.6.5 源代碼B25</p><p>  3.6.6 元件圖27</p><p>  

8、3.6.7 仿真圖27</p><p>  3.6.8 電路圖28</p><p>  3.6.9 流程圖29</p><p>  3.7 顯示模塊30</p><p>  3.7.1 源代碼30</p><p>  3.7.2 元件圖32</p><p>  3.7.3 電路圖3

9、3</p><p>  3.7.4 流程圖34</p><p>  3.8.設(shè)計(jì)總圖35</p><p>  3.8.1 總電路圖35</p><p>  3.8.2 總仿真圖36</p><p><b>  第四章 調(diào)試36</b></p><p>  第五章

10、實(shí)驗(yàn)現(xiàn)象37</p><p><b>  第六章 總結(jié)38</b></p><p><b>  第一章 緒論</b></p><p>  1.1 交通燈的介紹</p><p>  1918年誕生的第一盞交通燈只有紅綠兩色,它是圓形四面投影器,被安裝在紐約市五號街的一座高塔上,它的誕生,使城市交通

11、大為改善。</p><p>  1925年,留學(xué)美國的中國電機(jī)專家胡汝鼎提出在綠燈之后加個黃燈的設(shè)想被采納,于是誕生了真正意義上的三色交通燈。</p><p>  傳統(tǒng)的交通燈主要由單片機(jī)來控制,它主要由紅黃綠三色燈組成。工作原理是設(shè)置好南北向和東西向的各色燈的亮滅順序和持續(xù)時間來指揮車輛通行。</p><p>  交通燈的發(fā)明和使用極大地保障了人民的生命安全,但因

12、此引起的交通事故卻還是時有發(fā)生。究其原因有以下兩點(diǎn):</p><p> ?。?)單片機(jī)穩(wěn)定性不夠高,長年累月的運(yùn)行容易引起故障,使得交通信號混亂;</p><p>  (2)單片機(jī)控制的交通燈不利于擴(kuò)展,當(dāng)交通燈功能擴(kuò)充或更改的時候只能全部更換,不但浪費(fèi)了資源,而帶來了不便。</p><p>  因此,傳統(tǒng)的交通燈能基本滿足一般交通狀況的需求。然而,對于交通繁忙、路

13、況復(fù)雜的大都市來說就顯得力不從心了。</p><p>  1.2  基于CPLD的交通燈的優(yōu)點(diǎn)</p><p>  基于CPLD的交通燈改變了基于單片機(jī)的傳統(tǒng)交通燈不穩(wěn)定和不利于擴(kuò)展的缺點(diǎn)。</p><p>  本文設(shè)計(jì)的基于CPLD的交通信號控制電路,突破了單片機(jī)的種種限制,對傳統(tǒng)的交通燈做了如下改進(jìn):</p><p> ?。?)

14、用三色箭頭指示燈來替代傳統(tǒng)的紅黃綠三色燈,分別指示左轉(zhuǎn)、直行和右轉(zhuǎn),改變了傳統(tǒng)交通燈一燈三向的狀態(tài),使交通更趨規(guī)則。</p><p> ?。?)增加了左彎待轉(zhuǎn)指示燈,緩解了轉(zhuǎn)彎時的擁堵狀況。</p><p> ?。?)增加了直行綠燈倒計(jì)時功能,以便讓司機(jī)控制過十字路口的車速,使交通更加安全有序。</p><p> ?。?)增加了全紅燈的緊急狀態(tài)。盡管警車、救護(hù)車等公

15、務(wù)車可以在綠燈的狀態(tài)下任意前行,可繁忙的交通還是使得公務(wù)車“有路難行”。緊急狀態(tài)徹底改變了這一狀況,讓十字路口各方向的車都讓路給公務(wù)車,真正做到暢通無阻。</p><p>  本文設(shè)計(jì)的交通信號控制電路更趨于理性化和智能化,交通部門可以依據(jù)各路段各個時間點(diǎn)交通的繁忙狀態(tài)和路況的復(fù)雜程度,利用CPLD的可擦除性,根據(jù)時段或路段進(jìn)行不同的設(shè)置,避免了資源浪費(fèi)。而且,CPLD的可擴(kuò)展性也有利于交通部門在新的交通功能發(fā)明

16、之后,在原有交通燈的基礎(chǔ)上進(jìn)行擴(kuò)展,而不必重新設(shè)計(jì),全部更換。</p><p><b>  1.3 EDA簡介</b></p><p>  EDA技術(shù)是指以計(jì)算機(jī)為工作平臺,融合應(yīng)用電子技術(shù)、計(jì)算機(jī)技術(shù)、信息處理及智能化技術(shù)的最新成果,進(jìn)行電子產(chǎn)品的自動設(shè)計(jì)。 </p><p>  利用EDA工具,電子設(shè)計(jì)師可以從概念、算法、協(xié)議等開始設(shè)計(jì)電子

17、系統(tǒng),大量工作可以通過計(jì)算機(jī)完成,并可以將電子產(chǎn)品從電路設(shè)計(jì)、性能分析到設(shè)計(jì)出IC版圖或PCB版圖的整個過程的計(jì)算機(jī)上自動處理完成。 </p><p>  現(xiàn)在對EDA的概念或范疇用得很寬。包括在機(jī)械、電子、通信、航空航天、化工、礦產(chǎn)、生物、醫(yī)學(xué)、軍事等各個領(lǐng)域,都有EDA的應(yīng)用。目前EDA技術(shù)已在各大公司、企事業(yè)單位和科研教學(xué)部門廣泛使用。例如在飛機(jī)制造過程中,從設(shè)計(jì)、性能測試及特性分析直到飛行模擬,都可能涉及

18、到EDA技術(shù)。本文所指的EDA技術(shù),主要針對電子電路設(shè)計(jì)、PCB設(shè)計(jì)和IC設(shè)計(jì)。 </p><p>  EDA設(shè)計(jì)可分為系統(tǒng)級、電路級和物理實(shí)現(xiàn)級。</p><p>  1.4 QuartusⅡ簡介</p><p>  Quartus II 是Altera公司的綜合性PLD開發(fā)軟件,支持原理圖、VHDL、VerilogHDL以及AHDL(Altera Hardwar

19、e Description Language)等多種設(shè)計(jì)輸入形式,內(nèi)嵌自有的綜合器以及仿真器,可以完成從設(shè)計(jì)輸入到硬件配置的完整PLD設(shè)計(jì)流程。   Quartus II可以在XP、Linux以及Unix上使用,除了可以使用Tcl腳本完成設(shè)計(jì)流程外,提供了完善的用戶圖形界面設(shè)計(jì)方式。具有運(yùn)行速度快,界面統(tǒng)一,功能集中,易學(xué)易用等特點(diǎn)。   Quartus II支持Altera的IP核,包含了LPM/MegaFunction宏功能模塊庫,

20、使用戶可以充分利用成熟的模塊,簡化了設(shè)計(jì)的復(fù)雜性、加快了設(shè)計(jì)速度。對第三方EDA工具的良好支持也使用戶可以在設(shè)計(jì)流程的各個階段使用熟悉的第三方EDA工具。   此外,Quartus II 通過和DSP Builder工具與Matlab/Simulink相結(jié)合,可以方便地實(shí)現(xiàn)各種DSP應(yīng)用系統(tǒng);支持Altera的片上可編程系統(tǒng)(SOPC)開發(fā),集系統(tǒng)級設(shè)計(jì)、嵌入式軟件開發(fā)、可編程邏輯設(shè)計(jì)于一體,是一種綜合性的開</p>&l

21、t;p>  第二章 設(shè)計(jì)電路 </p><p>  2.1 設(shè)計(jì)內(nèi)容要求</p><p>  2.1.1 設(shè)計(jì)制作一塊十字路口的交通燈信號燈的控制電路的專用芯片。</p><p>  2.1.1 A 方向和B方向各設(shè)置紅(R)、黃(Y)、綠(G)三盞燈,三盞燈按合理的順序亮滅,并能將燈亮的時間以倒計(jì)時的方式

22、顯示出來。</p><p>  2.1.3、 兩個方向各燈的時間可方便地進(jìn)行設(shè)置和修改。假設(shè)A方向?yàn)橹鞲傻?,車流量大,A方向通行時間比B方向長。設(shè)A方向每次至多通行t1秒,B方向每次至多通行t2秒,黃燈亮t秒。</p><p>  2.2 設(shè)計(jì)初步構(gòu)思 </p><p><b>  (各交通燈狀態(tài)表)</b></p><p&

23、gt;  如圖所示,G1、Y1、R1、G2、Y2、R2分別代表A、B方向的綠、黃、紅燈。顯然,交通量較大的A方向綠燈亮25秒,黃燈紅燈一次亮5秒和20秒,而交通量較小的B方向綠、黃、紅燈分別亮15秒、5秒、30秒。同時圖中1表示該交通燈處于點(diǎn)亮狀態(tài)。</p><p><b>  2.3 設(shè)計(jì)總框圖</b></p><p>  如圖所示,其中分別用兩個控制模塊對各倒計(jì)時

24、計(jì)數(shù)器進(jìn)行控制,從而達(dá)到設(shè)計(jì)要求,顯示模塊用來顯示時間,二極管代表交通燈。</p><p>  第三章 各模塊設(shè)計(jì)原理及其仿真</p><p>  3.1 5秒倒計(jì)時計(jì)數(shù)器</p><p><b>  3.1.1 源代碼</b></p><p>  LIBRARY IEEE;</p><p>  

25、USE IEEE.STD_LOGIC_1164.ALL;</p><p>  USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p>  ENTITY djs5 IS</p><p><b>  PORT</b></p><p>  (clk:IN STD_LOGIC;</p>&

26、lt;p>  cr:IN STD_LOGIC;</p><p>  EN2:IN STD_LOGIC;</p><p>  J2:OUT STD_LOGIC;</p><p>  q1:OUT STD_LOGIC_VECTOR(3 DOWNTO 0));</p><p><b>  END djs5;</b><

27、;/p><p>  ARCHITECTURE a OF djs5 IS</p><p>  SIGNAL bcd1n:STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p><b>  BEGIN</b></p><p>  PROCESS(clk,cr)</p><p><

28、b>  BEGIN</b></p><p>  IF(cr='0') THEN</p><p>  bcd1n<="0101";</p><p>  ELSIF(EN2='1')THEN</p><p>  IF (CLK'EVENT AND CLK='

29、;1')THEN</p><p>  IF(bcd1n=0)THEN</p><p>  bcd1n<="0000";</p><p><b>  ELSE</b></p><p>  bcd1n<=bcd1n-1;</p><p><b>  E

30、ND IF;</b></p><p><b>  END IF;</b></p><p><b>  END IF;</b></p><p>  END PROCESS;</p><p>  q1<=bcd1n;</p><p>  PROCESS(bcd1

31、n)</p><p><b>  BEGIN</b></p><p><b>  J2<='0';</b></p><p>  IF(bcd1n=0)THEN</p><p><b>  J2<='1';</b></p>

32、<p><b>  END IF;</b></p><p>  END PROCESS;</p><p><b>  END;</b></p><p><b>  3.1.2 元件圖</b></p><p>  (5秒倒計(jì)時計(jì)數(shù)器元件圖)</p>&l

33、t;p><b>  3.1.3 仿真圖</b></p><p> ?。?秒倒計(jì)時計(jì)數(shù)器仿真圖)</p><p><b>  3.1.4 電路圖</b></p><p>  (5秒倒計(jì)時計(jì)數(shù)器RTL電路圖)</p><p><b>  3.1.5流程圖</b></p&

34、gt;<p> ?。?秒倒計(jì)時計(jì)數(shù)器的流程圖)</p><p>  3.2 25秒倒計(jì)時計(jì)數(shù)器</p><p><b>  3.2.1 源代碼</b></p><p>  LIBRARY IEEE;</p><p>  USE IEEE.STD_LOGIC_1164.ALL;</p><

35、p>  USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p>  ENTITY djs25 IS</p><p><b>  PORT</b></p><p>  (clk:IN STD_LOGIC;</p><p>  cr:IN STD_LOGIC;</p><p

36、>  EN1:IN STD_LOGIC;</p><p>  J1:OUT STD_LOGIC;</p><p>  q1:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p>  y10:OUT STD_LOGIC_VECTOR(3 DOWNTO 0));</p><p>  END djs25;<

37、/p><p>  ARCHITECTURE a OF djs25 IS</p><p>  SIGNAL bcd1n: STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p>  SIGNAL vcd10n:STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p><b>  BEGIN</b

38、></p><p>  PROCESS(clk,cr)</p><p><b>  BEGIN</b></p><p>  IF(cr='0')THEN</p><p>  bcd1n<="0101";</p><p>  ELSIF(EN1=

39、9;1')THEN</p><p>  IF(CLK'EVENT AND CLK='1')THEN</p><p>  IF(bcd1n=0 and vcd10n/=0)THEN</p><p>  bcd1n<="1001";</p><p>  ELSIF(bcd1n=0 and

40、vcd10n=0)THEN</p><p>  bcd1n<="0000";</p><p><b>  ELSE</b></p><p>  bcd1n<=bcd1n-1;</p><p><b>  END IF;</b></p><p>

41、<b>  END IF;</b></p><p><b>  END IF;</b></p><p>  END PROCESS;</p><p>  q1<=bcd1n;</p><p>  y10<=vcd10n;</p><p>  PROCESS (cl

42、k,cr)</p><p><b>  BEGIN</b></p><p>  IF(cr='0')THEN</p><p>  vcd10n<="0010";</p><p>  ELSIF (EN1='1')THEN</p><p> 

43、 IF(CLK'EVENT AND CLK='1')THEN</p><p>  IF(bcd1n=0)THEN</p><p>  IF(vcd10n=0)THEN</p><p>  vcd10n<="0000";</p><p><b>  ELSE</b><

44、/p><p>  vcd10n<=vcd10n-1;</p><p><b>  END IF;</b></p><p><b>  END IF;</b></p><p><b>  END IF;</b></p><p><b>  EN

45、D IF;</b></p><p>  END PROCESS;</p><p>  PROCESS(bcd1n,vcd10n)</p><p><b>  BEGIN</b></p><p><b>  J1<='0';</b></p><p&

46、gt;  IF(bcd1n=0 and vcd10n=0)THEN</p><p><b>  J1<='1';</b></p><p><b>  END IF;</b></p><p>  END PROCESS;</p><p><b>  END;</b

47、></p><p><b>  3.2.2 元件圖</b></p><p>  (25秒倒計(jì)時計(jì)數(shù)器元件圖)</p><p><b>  3.2.3 仿真圖</b></p><p> ?。?5秒倒計(jì)時計(jì)數(shù)器仿真圖)</p><p><b>  3.2.4 電路

48、圖</b></p><p>  (25秒倒計(jì)時計(jì)數(shù)器RTL電路圖)</p><p>  3.3 20秒倒計(jì)時計(jì)數(shù)器</p><p><b>  3.3.1源代碼</b></p><p>  LIBRARY IEEE;</p><p>  USE IEEE.STD_LOGIC_1164.

49、ALL;</p><p>  USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p>  ENTITY djs20 IS</p><p><b>  PORT</b></p><p>  (clk:IN STD_LOGIC;</p><p>  cr: IN STD_LO

50、GIC;</p><p>  EN3:IN STD_LOGIC;</p><p>  J3:OUT STD_LOGIC;</p><p>  q1:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p>  y10:OUT STD_LOGIC_VECTOR(3 DOWNTO 0));</p><

51、p>  END djs20; </p><p>  ARCHITECTURE a OF djs20 IS </p><p>  SIGNAL bcd1n:STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p>  SIGNAL vcd10n:STD_LOGIC_VECTOR(3 DOWNTO 0); </p><

52、p><b>  BEGIN</b></p><p>  PROCESS(clk,cr)</p><p><b>  BEGIN</b></p><p>  IF(cr='0')THEN</p><p>  bcd1n<="0000";--J1<=

53、'1';</p><p>  ELSIF(EN3='1')THEN</p><p>  IF(CLK'EVENT AND CLK='1')THEN</p><p>  IF(bcd1n=0 and vcd10n/=0)THEN</p><p>  bcd1n<="1001

54、";</p><p>  ELSIF(bcd1n=0 and vcd10n=0)THEN</p><p>  bcd1n<="0000";</p><p><b>  ELSE</b></p><p>  bcd1n<=bcd1n-1;</p><p>&

55、lt;b>  END IF;</b></p><p><b>  END IF;</b></p><p><b>  END IF;</b></p><p>  END PROCESS;</p><p>  q1<=bcd1n;</p><p>  y

56、10<=vcd10n;</p><p>  PROCESS(clk,cr)</p><p><b>  BEGIN</b></p><p>  IF(cr='0')THEN</p><p>  vcd10n<="0010";</p><p>  EL

57、SIF (EN3='1')THEN</p><p>  IF(CLK'EVENT AND CLK='1')THEN</p><p>  IF(bcd1n=0)THEN</p><p>  IF(vcd10n=0)THEN</p><p>  vcd10n<="0000";<

58、;/p><p><b>  ELSE</b></p><p>  vcd10n<=vcd10n-1;</p><p><b>  END IF;</b></p><p><b>  END IF;</b></p><p><b>  END

59、IF;</b></p><p><b>  END IF;</b></p><p>  END PROCESS;</p><p>  PROCESS(bcd1n,vcd10n)</p><p><b>  BEGIN</b></p><p><b>  

60、J3<='0';</b></p><p>  IF(bcd1n=0 and vcd10n=0)THEN</p><p><b>  J3<='1';</b></p><p><b>  END IF;</b></p><p>  END PRO

61、CESS;</p><p><b>  END;</b></p><p><b>  3.3.2 元件圖</b></p><p>  (20秒倒計(jì)時計(jì)數(shù)器元件圖)</p><p><b>  3.3.3仿真圖</b></p><p> ?。?0s倒計(jì)時計(jì)

62、數(shù)器仿真圖)</p><p><b>  3.3.4 電路圖</b></p><p> ?。?0秒倒計(jì)時計(jì)數(shù)器RTL電路圖)</p><p>  3.4 30秒倒計(jì)時計(jì)數(shù)器</p><p><b>  3.4.1 源代碼</b></p><p>  LIBRARY IEEE;

63、</p><p>  USE IEEE.STD_LOGIC_1164.ALL;</p><p>  USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p>  ENTITY djs30 IS</p><p><b>  PORT</b></p><p>  (clk: I

64、N STD_LOGIC;</p><p>  cr:IN STD_LOGIC;</p><p>  EN4: IN STD_LOGIC;</p><p>  J4:OUT STD_LOGIC;</p><p>  q1:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p>  y10:OU

65、T STD_LOGIC_VECTOR(3 DOWNTO 0));</p><p>  END djs30;</p><p>  ARCHITECTURE a OF djs30 IS</p><p>  SIGNAL bcd1n:STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p>  SIGNAL vcd10n:STD_

66、LOGIC_VECTOR(3 DOWNTO 0);</p><p><b>  BEGIN</b></p><p>  PROCESS(clk,cr) </p><p><b>  BEGIN </b></p><p>  IF(cr='0')THEN</p><

67、;p>  bcd1n<="0000";--J1<='1';</p><p>  ELSIF(EN4='1')THEN</p><p>  IF(CLK'EVENT AND CLK='1')THEN</p><p>  IF(bcd1n=0 and vcd10n/=0)THE

68、N</p><p>  bcd1n<="1001";</p><p>  ELSIF(bcd1n=0 and vcd10n=0)THEN</p><p>  bcd1n<="0000";</p><p><b>  ELSE</b></p><p&g

69、t;  bcd1n<=bcd1n-1;</p><p><b>  END IF;</b></p><p><b>  END IF;</b></p><p><b>  END IF;</b></p><p>  END PROCESS;</p><

70、p>  q1<=bcd1n;</p><p>  y10<=vcd10n;</p><p>  PROCESS(clk,cr)</p><p><b>  BEGIN</b></p><p>  IF(cr='0')THEN</p><p>  vcd10n<

71、;="0011";--J1<='1';</p><p>  ELSIF(EN4='1')THEN</p><p>  IF(CLK'EVENT AND CLK='1')THEN</p><p>  IF(bcd1n=0)THEN</p><p>  IF(vcd

72、10n=0)THEN</p><p>  vcd10n<="0000";</p><p><b>  ELSE</b></p><p>  vcd10n<=vcd10n-1;</p><p><b>  END IF;</b></p><p>

73、<b>  END IF;</b></p><p><b>  END IF;</b></p><p><b>  END IF;</b></p><p>  END PROCESS;</p><p>  PROCESS(bcd1n,vcd10n)</p><

74、;p><b>  BEGIN</b></p><p><b>  J4<='0';</b></p><p>  IF(bcd1n=0 and vcd10n=0)THEN</p><p><b>  J4<='1';</b></p><

75、;p><b>  END IF;</b></p><p>  END PROCESS;</p><p><b>  END ;</b></p><p><b>  3.4.2 元件圖</b></p><p> ?。?0秒倒計(jì)時計(jì)數(shù)器元件圖)</p><

76、p><b>  3.4.3 仿真圖</b></p><p> ?。?0秒倒計(jì)時計(jì)數(shù)器仿真圖)</p><p><b>  3.4.4電路圖</b></p><p> ?。?0秒倒計(jì)時計(jì)數(shù)器RTL電路圖)</p><p>  3.5 15秒倒計(jì)時計(jì)數(shù)器</p><p>&

77、lt;b>  3.5.1 源代碼</b></p><p>  LIBRARY IEEE;</p><p>  USE IEEE.STD_LOGIC_1164.ALL;</p><p>  USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p>  ENTITY djs15 IS</p>

78、<p><b>  PORT</b></p><p>  (clk:IN STD_LOGIC;</p><p>  cr:IN STD_LOGIC;</p><p>  EN5:IN STD_LOGIC;</p><p>  J5:OUT STD_LOGIC;</p><p>  q1

79、:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p>  y10:OUT STD_LOGIC_VECTOR(3 DOWNTO 0));</p><p>  END djs15;</p><p>  ARCHITECTURE a OF djs15 IS</p><p>  SIGNAL bcd1n:STD_LOG

80、IC_VECTOR(3 DOWNTO 0);</p><p>  SIGNAL vcd10n:STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p><b>  BEGIN</b></p><p>  PROCESS(clk,cr)</p><p><b>  BEGIN</b>

81、</p><p>  IF(cr='0')THEN</p><p>  bcd1n<="0101" ;--J1<='1';</p><p>  ELSIF(EN5='1')THEN</p><p>  IF(CLK'EVENT AND CLK='1

82、')THEN</p><p>  IF(bcd1n=0 and vcd10n/=0)THEN</p><p>  bcd1n<="1001";</p><p>  ELSIF(bcd1n=0 and vcd10n=0)THEN</p><p>  bcd1n<="0000";<

83、/p><p><b>  ELSE</b></p><p>  bcd1n<=bcd1n-1;</p><p><b>  END IF;</b></p><p><b>  END IF;</b></p><p><b>  END IF;

84、 </b></p><p>  END PROCESS;</p><p>  q1<=bcd1n;</p><p>  y10<=vcd10n;</p><p>  PROCESS (clk,cr)</p><p><b>  BEGIN</b></p>&

85、lt;p>  IF(cr='0')THEN</p><p>  vcd10n<="0001";</p><p>  ELSIF(EN5='1')THEN</p><p>  IF(CLK'EVENT AND CLK='1')THEN</p><p>  I

86、F(bcd1n=0)THEN</p><p>  IF(vcd10n=0)THEN</p><p>  vcd10n<="0000";</p><p><b>  ELSE</b></p><p>  vcd10n<=vcd10n-1;</p><p><b&

87、gt;  END IF;</b></p><p><b>  END IF;</b></p><p><b>  END IF;</b></p><p>  END IF; </p><p>  END PROCESS;</p><p>  PROCESS(b

88、cd1n,vcd10n)</p><p><b>  BEGIN</b></p><p><b>  J5<='0';</b></p><p>  IF(bcd1n=0 and vcd10n=0)THEN</p><p><b>  J5<='1'

89、;;</b></p><p><b>  END IF;</b></p><p>  END PROCESS;</p><p><b>  END;</b></p><p><b>  3.5.2 元件圖</b></p><p> ?。?5秒

90、倒計(jì)時計(jì)數(shù)器元件圖)</p><p><b>  3.5.3 仿真圖</b></p><p>  (15秒倒計(jì)時計(jì)數(shù)器仿真圖)</p><p><b>  3.5.4電路圖</b></p><p> ?。?5秒倒計(jì)時計(jì)數(shù)器RTL電路圖)</p><p><b>  

91、3.6 控制模塊</b></p><p>  3.6.1 源代碼A</p><p>  LIBRARY IEEE;</p><p>  USE IEEE.STD_LOGIC_1164.ALL;</p><p>  USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p>  USE

92、IEEE.STD_LOGIC_ARITH.ALL;</p><p>  ENTITY KONGZHI1 IS</p><p><b>  PORT</b></p><p>  (clk:IN STD_LOGIC;</p><p>  state_inputs: IN STD_LOGIC_VECTOR(0 TO 1);&l

93、t;/p><p>  c1,c2,c3,b1,b2,b3:OUT STD_LOGIC;</p><p>  w0,w1,w2:IN STD_LOGIC;</p><p>  r1:OUT STD_LOGIC;</p><p>  y1:OUT STD_LOGIC;</p><p>  g1:OUT STD_LOGIC;&l

94、t;/p><p>  reset:IN STD_LOGIC);</p><p>  END KONGZHI1;</p><p>  ARCHITECTURE a OF KONGZHI1 IS</p><p>  TYPE STATE_SPACE IS(s0,s1,s2);</p><p>  SIGNAL current_

95、state,next_state:STATE_SPACE;</p><p><b>  BEGIN</b></p><p>  PROCESS(clk)</p><p><b>  BEGIN</b></p><p>  IF reset='1'THEN</p><

96、;p>  current_state<=s0;</p><p>  ELSIF(CLK'EVENT AND CLK='1')THEN</p><p>  CASE next_state is</p><p>  WHEN s0=>g1<='0';y1<='1';r1<=

97、9;1';</p><p>  IF w0='1'THEN next_state<=s1;--25s;</p><p><b>  END IF;</b></p><p><b>  b1<='0';</b></p><p>  IF(w0=

98、9;0') THEN b1<='1';</p><p><b>  END IF;</b></p><p>  WHEN s1=>g1<='1';y1<='0';r1<='1';</p><p>  IF w1='1' THEN

99、 next_state<=s2;--5s</p><p><b>  END IF;</b></p><p><b>  b2<='0';</b></p><p>  IF(w1='0')THEN b2<='1';</p><p>&

100、lt;b>  END IF;</b></p><p>  WHEN s2=>g1<='1';y1<='1';r1<='0';</p><p>  IF w2='1'THEN</p><p>  next_state<=s0;--20s</p>

101、<p><b>  END IF;</b></p><p><b>  b3<='0';</b></p><p>  IF(w2='0') THEN b3<='1';</p><p><b>  END IF;</b></p

102、><p><b>  END CASE;</b></p><p><b>  END IF;</b></p><p>  END PROCESS;</p><p>  c1<='1' WHEN next_state=s0 ELSE '0';</p>&

103、lt;p>  c2<='1' WHEN next_state=s1 ELSE '0';</p><p>  c3<='1' WHEN next_state=s2 ELSE '0';</p><p><b>  END;</b></p><p><b> 

104、 3.6.2 元件圖</b></p><p>  (控制模塊1的元件圖)</p><p><b>  3.6.3 仿真圖</b></p><p> ?。刂颇K1的仿真圖)</p><p><b>  3.6.4 電路圖</b></p><p>  3.6.5 源

105、代碼B</p><p>  LIBRARY IEEE;</p><p>  USE IEEE.STD_LOGIC_1164.ALL;</p><p>  USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p>  USE IEEE.STD_LOGIC_ARITH.ALL;</p><p>  

106、ENTITY KONGZHI2 IS</p><p><b>  PORT</b></p><p>  (state_inputs: IN STD_LOGIC_VECTOR(0 TO 1);</p><p>  clk:IN STD_LOGIC;</p><p>  c1,c2,c3,b1,b2,b3:OUT STD_L

107、OGIC;</p><p>  w0,w1,w2:IN STD_LOGIC;</p><p>  r2:OUT STD_LOGIC;</p><p>  y2:OUT STD_LOGIC;</p><p>  g2:OUT STD_LOGIC;</p><p>  reset:IN STD_LOGIC);</p&

108、gt;<p>  END KONGZHI2;</p><p>  ARCHITECTURE a OF KONGZHI2 IS</p><p>  TYPE STATE_SPACE IS(s0,s1,s2);</p><p>  SIGNAL current_state,next_state:STATE_SPACE;</p><p&g

109、t;<b>  BEGIN</b></p><p>  PROCESS(clk)</p><p><b>  BEGIN</b></p><p>  IF reset='1'THEN</p><p>  current_state<=s0;</p><p&g

110、t;  ELSIF(CLK'EVENT AND CLK='1')THEN</p><p>  CASE next_state IS</p><p>  WHEN s0=>g2<='1';y2<='1';r2<='0';</p><p>  IF w0='1'

111、;THEN next_state<=s1;--30s</p><p><b>  END IF;</b></p><p><b>  b1<='0';</b></p><p>  IF(w0='0')THEN b1<='1';</p><

112、p><b>  END IF;</b></p><p>  WHEN s1=>g2<='0';y2<='1';r2<='1';</p><p>  IF w1='1'THEN next_state<=s2;--15s</p><p><b&

113、gt;  END IF;</b></p><p><b>  b2<='0';</b></p><p>  IF(w1='0')THEN b2<='1';</p><p><b>  END IF;</b></p><p>  

114、WHEN s2=> g2<='1';y2<='0';r2<='1';</p><p>  IF w2='1'THEN</p><p>  next_state<=s0;--5s</p><p><b>  END IF;</b></p>

115、<p><b>  b3<='0';</b></p><p>  IF(w2='0')THEN b3<='1';</p><p><b>  END IF;</b></p><p><b>  END CASE;</b></p

116、><p><b>  END IF;</b></p><p>  END PROCESS;</p><p>  c1<='1'WHEN next_state=s0 else '0';</p><p>  c2<='1'WHEN next_state=s1 else&

117、#39;0';</p><p>  c3<='1'WHEN next_state=s2 else'0';</p><p><b>  END;</b></p><p><b>  3.6.6 元件圖</b></p><p> ?。刂颇K2的元件圖)&l

118、t;/p><p><b>  3.6.7 仿真圖</b></p><p> ?。刂颇K2的仿真圖)</p><p><b>  3.6.8 電路圖</b></p><p>  (控制模塊2的RTL電路圖)</p><p><b>  3.6.9 流程圖</b&g

119、t;</p><p><b>  (控制模塊流程圖)</b></p><p><b>  3.7 顯示模塊</b></p><p><b>  3.7.1 源代碼</b></p><p>  LIBRARY IEEE;</p><p>  USE IEE

120、E.STD_LOGIC_1164.ALL;</p><p>  USE IEEE.STD_LOGIC_UNSIGNED.ALL;</p><p>  ENTITY XIANSHI IS</p><p><b>  PORT(</b></p><p>  b1,b2,b3,b4,b5,b6:IN STD_LOGIC;<

121、;/p><p>  Q0:IN STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p>  Q1:IN STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p>  Q2:IN STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p>  Q3:IN STD_LOGIC_VECTOR(3 D

122、OWNTO 0);</p><p>  Q4:IN STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p>  Q5:IN STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p>  Q6:IN STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p>  Q7:IN STD_LOGI

123、C_VECTOR(3 DOWNTO 0);</p><p>  Q8:IN STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p>  Q9:IN STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p>  CLK:IN STD_LOGIC;</p><p>  SG:OUT STD_LOGIC_VEC

124、TOR(6 DOWNTO 0);</p><p>  BT:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));</p><p><b>  END;</b></p><p>  ARCHITECTURE one OF XIANSHI IS</p><p>  SIGNAL CN:INTEGER RANG

125、E 0 to 2;</p><p>  SIGNAL CN1:INTEGER RANGE 0 to 2;</p><p>  SIGNAL CNT2:STD_LOGIC_VECTOR(1 DOWNTO 0);</p><p>  SIGNAL A:STD_LOGIC_VECTOR(3 DOWNTO 0);</p><p><b> 

126、 BEGIN</b></p><p>  P1:PROCESS(CN)</p><p><b>  BEGIN</b></p><p>  IF(b1='1')THEN CN<=0;END IF;</p><p>  IF(b2='1')THEN CN<=1;END

127、 IF;</p><p>  IF(b3='1')THEN CN<=2;END IF;</p><p>  IF(b4='1')THEN CN1<=0;END IF;</p><p>  IF(b5='1')THEN CN1<=1;END IF;</p><p>  IF(b6

128、='1')THEN CN1<=2;END IF;</p><p>  CASE CN IS</p><p><b>  WHEN 0=></b></p><p>  CASE CNT2 IS</p><p>  WHEN "00"=>BT<="0000

129、0001";A<=Q0;</p><p>  WHEN "01"=>BT<="00000010";A<=Q1;</p><p>  WHEN OTHERS=>NULL;</p><p><b>  END CASE;</b></p><p>

130、  WHEN 1=>BT<="00000001";A<=Q2;</p><p><b>  WHEN 2=></b></p><p>  CASE CNT2 IS</p><p>  WHEN "00"=>BT<="00000001";A<=Q

131、3;</p><p>  WHEN "01"=>BT<="00000010";A<=Q4;</p><p>  WHEN OTHERS=>NULL;</p><p><b>  END CASE;</b></p><p>  WHEN OTHERS =>

132、;NULL;</p><p>  END CASE; </p><p>  CASE CN1 IS</p><p><b>  WHEN 0=></b></p><p>  CASE CNT2 IS</p><p>  WHEN "00"=>BT<=&quo

133、t;00000100";A<=Q5;</p><p>  WHEN "01"=>BT<="00001000";A<=Q6;</p><p>  WHEN OTHERS=>NULL;</p><p><b>  END CASE;</b></p><

134、;p><b>  WHEN 1=> </b></p><p>  CASE CNT2 IS</p><p>  WHEN "00"=>BT<="00000100";A<=Q7;</p><p>  WHEN "01"=>BT<="00

135、001000";A<=Q8;</p><p>  WHEN OTHERS=>NULL;</p><p><b>  END CASE;</b></p><p>  WHEN 2=>BT<="00000100";A<=Q9;</p><p>  WHEN OTHE

136、RS=>NULL;</p><p><b>  END CASE;</b></p><p>  END PROCESS P1;</p><p>  P2:PROCESS(A)</p><p><b>  BEGIN</b></p><p><b>  CASE

137、 A IS</b></p><p>  WHEN "0000"=>SG<="0111111";WHEN"0001"=>SG<="0000110";</p><p>  WHEN "0010"=>SG<="1011011";W

138、HEN"0011"=>SG<="1001111";</p><p>  WHEN "0100"=>SG<="1100110";WHEN"0101"=>SG<="1101101";</p><p>  WHEN "0110&qu

139、ot;=>SG<="1111101";WHEN"0111"=>SG<="0000111";</p><p>  WHEN "1000"=>SG<="1111111";WHEN"1001"=>SG<="1101111";</

140、p><p>  WHEN OTHERS=>NULL;</p><p><b>  END CASE;</b></p><p>  END PROCESS P2;</p><p>  P3:PROCESS(CLK)</p><p><b>  BEGIN</b></p&

141、gt;<p>  IF(CLK'EVENT AND CLK='1')THEN </p><p>  CNT2<=CNT2+1;</p><p><b>  END IF;</b></p><p>  END PROCESS P3;</p><p><b>  EN

142、D;</b></p><p><b>  3.7.2 元件圖</b></p><p>  (顯示模塊的元件圖)</p><p><b>  3.7.3 電路圖</b></p><p><b>  3.7.4 流程圖</b></p><p>&

143、lt;b>  (顯示模塊流程圖)</b></p><p><b>  3.8.設(shè)計(jì)總圖</b></p><p>  3.8.1 總電路圖</p><p>  3.8.2 總仿真圖</p><p> ?。傇O(shè)計(jì)圖的仿真圖)</p><p><b>  第四章 調(diào)試<

144、/b></p><p>  將程序進(jìn)行編譯后,把管腳綁定后把程序下載到實(shí)驗(yàn)箱上進(jìn)行調(diào)試。</p><p><b>  管腳綁定如下:</b></p><p>  CLK0綁定時鐘1KHZ;rest綁定DK4</p><p>  Rb綁定LED6;--支干道紅燈;Yb綁定LED7;--支干道黃燈</p>

145、<p>  Gb綁定LED8;--支干道綠燈;Ra綁定LED1;--主干道紅燈</p><p>  Ya綁定LED2;--主干道黃燈;Ga綁定LED3;--主干道綠燈</p><p>  S_G[0]綁定G8;S_G[1]綁定F8;S_G[2]綁定E8;</p><p>  S_G[3]綁定D8;S_GG[4]綁定C8;S_G[5]綁定B8;S_G[6]

146、綁定A8;</p><p><b>  第五章 實(shí)驗(yàn)現(xiàn)象</b></p><p>  LED主干道亮綠燈,主干道數(shù)碼管顯示25秒,LED支干道亮紅燈,數(shù)碼管顯示30秒。25秒過后,主干道,通過5秒黃燈過渡到紅燈,數(shù)碼管顯示20秒。同時,支干道LED亮綠燈,數(shù)碼管顯示15秒。當(dāng)給DK4一個高電平,系統(tǒng)恢復(fù)到初始狀態(tài),即:主干道亮綠燈,支干道亮紅燈。</p>

147、<p><b>  第六章 總結(jié)</b></p><p>  通過這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會服務(wù),從而提高自己的實(shí)際動手能力和獨(dú)立思考的能力。在設(shè)計(jì)的過程中遇到問題,可以說得是困難重重,這畢竟第一次做的,難免會遇到過各種各樣的問題,同時在設(shè)計(jì)的過程中發(fā)現(xià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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論