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

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  目錄</b></p><p><b>  1.設(shè)計(jì)思路1</b></p><p><b>  1.1設(shè)計(jì)思想1</b></p><p>  1.2 系統(tǒng)功能與要求1</p><p><b>  1.3總體設(shè)計(jì)2</b>

2、</p><p>  2.主要模塊設(shè)計(jì)程序4</p><p>  2.1時(shí)基脈沖發(fā)生模塊4</p><p>  2.2技術(shù)及紅綠燈控制模塊5</p><p><b>  2.3譯碼模塊9</b></p><p><b>  2.4主程序11</b></p>

3、;<p>  3. 所實(shí)現(xiàn)功能說(shuō)明14</p><p>  3.1實(shí)現(xiàn)功能14</p><p>  3.2仿真波形14</p><p>  4. 所設(shè)計(jì)原理圖及故障分析15</p><p><b>  5.心得體會(huì)17</b></p><p><b>  參考文獻(xiàn)

4、18</b></p><p>  附錄1 元件清單19</p><p><b>  附錄2 管腳20</b></p><p><b>  1.設(shè)計(jì)思路</b></p><p><b>  1.1設(shè)計(jì)思想</b></p><p>  交通

5、燈是城市交通監(jiān)管系統(tǒng)的重要組成部分,對(duì)于保證機(jī)動(dòng)車輛的安全運(yùn)行,維持城市道路的順暢起到了重要作用。目前很多城市交叉路口的交通燈實(shí)行的是定時(shí)控制,燈亮的時(shí)間是預(yù)先設(shè)定好的,在時(shí)間和空間方面的應(yīng)變性能較差,一定程度上造成了交通資源的浪費(fèi),加重了道路交通壓力。本文在EDA技術(shù)的基礎(chǔ)上,利用FPGA的相關(guān)知識(shí)設(shè)計(jì)了交通燈控制系統(tǒng),可以根據(jù)實(shí)際情況對(duì)燈亮?xí)r間進(jìn)行自由調(diào)整,整個(gè)設(shè)計(jì)系統(tǒng)通過(guò)Max+PlusⅡ軟件進(jìn)行了模擬仿真,并下載到FPGA器件中

6、進(jìn)行硬件的調(diào)試,驗(yàn)證了設(shè)計(jì)的交通信號(hào)燈控制電路完全可以實(shí)現(xiàn)預(yù)定的功能,具有一定的實(shí)用性。</p><p>  1.2 系統(tǒng)功能與要求</p><p>  交通燈控制器控制兩個(gè)主干道交叉路口的交通,路口車輛多,直行信號(hào)、左轉(zhuǎn)彎信號(hào)分開(kāi)顯示,a,b兩個(gè)主干道的通行時(shí)間相等,其中指示直行的綠燈亮30 s,指示左轉(zhuǎn)彎的綠燈亮12 s,綠燈變至紅燈時(shí),黃燈亮3 s,以便于車輛能停在停車線內(nèi),紅燈信號(hào)

7、的最后3 s相應(yīng)的黃燈也同時(shí)亮,以便提示駕駛?cè)藛T準(zhǔn)備起步。在兩個(gè)主干道路口都配備傳感器用來(lái)檢測(cè)有無(wú)車輛通行。當(dāng)兩個(gè)主干道都有車輛時(shí),自動(dòng)處于主干道a綠燈,主干道b紅燈的狀態(tài),然后輪流切換通行。當(dāng)主干道a無(wú)車輛時(shí),自動(dòng)處于主干道b綠燈,主干道a紅燈的狀態(tài);反之亦然,以提高通行效率。</p><p>  所設(shè)計(jì)的交通信號(hào)燈控制電路,主要適用于在兩條干道匯合點(diǎn)形成的十字交叉路口,路口設(shè)計(jì)兩組紅綠燈分別對(duì)兩個(gè)方向上的交通

8、運(yùn)行狀態(tài)進(jìn)行管理。交通燈的持續(xù)閃亮?xí)r間由鍵盤輸入控制。燈亮規(guī)則為:當(dāng)B方向的紅燈亮?xí)r,A方向?qū)?yīng)綠燈亮,由綠燈轉(zhuǎn)換成紅燈的過(guò)渡階段黃燈亮,即B方向紅燈亮的時(shí)間等于A方向綠燈和黃燈亮的時(shí)間之和。同理,當(dāng)A方向的紅燈變亮?xí)r,B方向的交通燈也遵循此規(guī)則。各干道上安裝有數(shù)碼管,以倒計(jì)時(shí)的形式顯示本道各信號(hào)燈閃亮的時(shí)間。當(dāng)出現(xiàn)特殊情況時(shí),各方向上均亮紅燈,倒計(jì)時(shí)停止。特殊運(yùn)行狀態(tài)結(jié)束后,控制器恢復(fù)原來(lái)的狀態(tài),繼續(xù)運(yùn)行。</p>&l

9、t;p>  圖1 十字路口示意圖</p><p><b>  1.3總體設(shè)計(jì)</b></p><p>  首先由晶振產(chǎn)生出發(fā)信號(hào),由控制器處理成1HZ的時(shí)鐘,利用此時(shí)鐘進(jìn)行計(jì)數(shù),通過(guò)判斷計(jì)數(shù)的值來(lái)控制交通燈的亮滅。通過(guò)每種燈亮的時(shí)間總數(shù)與計(jì)數(shù)值比較得到數(shù)碼管應(yīng)該顯示的數(shù)值,利用分位程序?qū)⑵浞殖墒缓蛡€(gè)位。通過(guò)譯碼電路來(lái)實(shí)現(xiàn)數(shù)碼管的顯示。本實(shí)驗(yàn)所使用的芯片為EPF

10、10K10LC84-4。整個(gè)系統(tǒng)主要由計(jì)數(shù)模塊、控制模塊、分頻模塊、分位模塊以及顯示電路構(gòu)成。其中分頻模塊主要將系統(tǒng)輸入的基準(zhǔn)時(shí)鐘信號(hào)轉(zhuǎn)換為1 Hz的激勵(lì)信號(hào),驅(qū)動(dòng)計(jì)數(shù)模塊和控制模塊工作??刂颇K根據(jù)計(jì)數(shù)器的計(jì)數(shù)情況對(duì)交通燈的亮滅及持續(xù)時(shí)間進(jìn)行控制,并通過(guò)分位電路將燈亮?xí)r間以倒計(jì)時(shí)的形式通過(guò)數(shù)碼管顯示出來(lái)。 </p><p>  由設(shè)計(jì)任務(wù)要求可知,輸入部分有:CLK時(shí)鐘頻率輸入,可由實(shí)驗(yàn)板上直接提供,為準(zhǔn)確確定

11、時(shí)間長(zhǎng)度,選擇High擋的1MHz高平信號(hào);無(wú)車狀態(tài)按鍵KEY,當(dāng)按一下鍵,表示路上無(wú)車,信息學(xué)院路道路顯示紅燈,東風(fēng)路顯示綠燈。有車時(shí)兩路紅綠交替。</p><p>  輸出部分有:東西方向和南北方向各使用4個(gè)LED顯示,紅黃綠各代表紅黃綠燈,綠燈和另一個(gè)紅燈同時(shí)亮?xí)r為左轉(zhuǎn)時(shí)間;東西方向和南北方向計(jì)時(shí)均為2位數(shù),共需要4個(gè)LED七段數(shù)碼管顯示。Time信號(hào)輸出顯示的內(nèi)容。</p><p>

12、;<b>  圖2 總體設(shè)計(jì)圖</b></p><p>  2.主要模塊設(shè)計(jì)程序</p><p>  2.1時(shí)基脈沖發(fā)生模塊</p><p>  在紅綠燈交通信號(hào)系統(tǒng)中,大多數(shù)的情況是通過(guò)自動(dòng)控制的方式指揮交通的。因此,為了避免意外事件的發(fā)生,電路必須給出一個(gè)穩(wěn)定的時(shí)鐘才能讓系統(tǒng)正常的工作。因此時(shí)鐘發(fā)生模塊最主要的功能就是產(chǎn)生一些穩(wěn)定的輸出信號(hào)

13、,并將其用做后面幾個(gè)電路的使能控制與同步信號(hào)。通過(guò)編程實(shí)現(xiàn)1Hz脈沖的產(chǎn)生,程序如下所示。</p><p>  Library IEEE ; </p><p>  use IEEE.std_logic_1164.all ;</p><p>  ENTITY CLKGEN IS</p><p>  PORT( CLK:IN ST

14、D_LOGIC;</p><p>  CLK1:OUT STD_LOGIC);</p><p>  END CLKGEN;</p><p>  ARCHITECTURE behav OF CLKGEN IS</p><p>  SIGNAL CNTER:INTEGER RANGE 0 TO 25000000;</p><p

15、><b>  BEGIN</b></p><p>  PROCESS(CLK) BEGIN</p><p>  IF CLK'EVENT AND CLK='1' THEN</p><p>  IF CNTER=25000000 THEN CNTER<=0;</p><

16、p>  ELSE CNTER<=CNTER+1; </p><p><b>  END IF;</b></p><p><b>  END IF;</b></p><p>  END PROCESS;</p><p>  PROCESS(CNTER) </p>

17、<p><b>  BEGIN</b></p><p>  IF CNTER=12500000 THEN CLK1<='1';</p><p><b>  END IF;</b></p><p>  IF CNTER=25000000 THEN CLK1<='0';&

18、lt;/p><p><b>  END IF;</b></p><p>  END PROCESS;</p><p>  END behav;</p><p>  2.2計(jì)數(shù)及紅綠燈控制模塊</p><p>  南北向和東西向各有一組紅黃綠燈,各自持續(xù)的時(shí)間為分別為25s、5s、20s。通過(guò)編程可以實(shí)

19、現(xiàn)控制各通道的計(jì)數(shù)控制且輸出為二進(jìn)制數(shù),并且可以控制各燈的亮滅情況,高電平為亮,低電平為滅。</p><p><b>  東西向模塊程序?yàn)椋?lt;/b></p><p>  library ieee;</p><p>  use ieee.std_logic_1164.all;</p><p>  use ieee.std_

20、logic_unsigned.all;</p><p>  entity daolu1 is</p><p><b>  port(</b></p><p>  clk:in std_logic;</p><p>  timel:out std_logic_vector(4 downto 0);</p>

21、<p>  r,g,t:out std_logic);</p><p>  end daolu1;</p><p>  architecture daodu of daolu1 is</p><p>  type color is(green,yellow,red);</p><p><b>  begin<

22、/b></p><p>  process(clk)</p><p>  variable reset:std_logic:='0';</p><p>  variable tempr,tempg,tempt:std_logic;</p><p>  variable temp_l:std_logic_vector(4

23、downto 0);</p><p>  variable temp_color:color:=green;</p><p><b>  begin</b></p><p>  if(clk'event and clk='1')then</p><p>  case temp_color is&

24、lt;/p><p>  when yellow=></p><p>  tempr:='1';</p><p>  tempg:='0';</p><p>  tempt:='0';</p><p>  case reset is</p><

25、p>  when '0' =></p><p>  temp_l:="00100";</p><p>  reset:='1';</p><p>  when others =></p><p>  case temp_l is</p><p>

26、;  when "00000"=></p><p>  temp_l:="11000";</p><p>  temp_color:=red;</p><p>  when others=></p><p>  temp_l:=temp_l-1;</p><p>&l

27、t;b>  end case;</b></p><p><b>  end case;</b></p><p>  when green=></p><p>  tempr:='0';</p><p>  tempg:='0';</p><p&

28、gt;  tempt:='1';</p><p>  case reset is</p><p>  when '0' =></p><p>  temp_l:="10011";</p><p>  reset:='1';</p><p>

29、;  when others =></p><p>  case temp_l is</p><p>  when "00000"=></p><p>  temp_l:="00100";</p><p>  temp_color:=yellow;</p><

30、p>  when others=></p><p>  temp_l:=temp_l-1;</p><p><b>  end case;</b></p><p><b>  end case;</b></p><p>  when red=></p><

31、p>  tempr:='0';</p><p>  tempg:='1';</p><p>  tempt:='0';</p><p>  case reset is</p><p>  when '0' =></p><p>  

32、temp_l:="11000";</p><p>  reset:='1';</p><p>  when others =></p><p>  case temp_l is</p><p>  when "00000"=></p><p>  t

33、emp_l:="10011";</p><p>  temp_color:=green;</p><p>  when others=></p><p>  temp_l:=temp_l-1;</p><p><b>  end case;</b></p><p><

34、;b>  end case;</b></p><p>  end case;</p><p><b>  end if;</b></p><p>  timel<=temp_l;</p><p><b>  r<=tempr;</b></p><p

35、><b>  g<=tempg;</b></p><p><b>  t<=tempt;</b></p><p>  end process;</p><p><b>  end;</b></p><p><b>  南北向模塊程序?yàn)椋?lt;/b&

36、gt;</p><p>  library ieee;</p><p>  use ieee.std_logic_1164.all;</p><p>  use ieee.std_logic_unsigned.all;</p><p>  entity daolu2 is</p><p><b>  port

37、(</b></p><p>  clk:in std_logic;</p><p>  time2:out std_logic_vector(4 downto 0);</p><p>  r1,g1,t1:out std_logic</p><p><b>  );</b></p>&

38、lt;p>  end daolu2;</p><p>  architecture daolu of daolu2 is</p><p>  type color is(red,green,yellow);</p><p><b>  begin</b></p><p>  process(clk)</p&g

39、t;<p>  variable reset:std_logic:='0';</p><p>  variable tempr,tempg,tempt:std_logic;</p><p>  variable temp_l:std_logic_vector(4 downto 0);</p><p>  variable temp_co

40、lor:color:=red;</p><p><b>  begin</b></p><p>  if(clk'event and clk='1')then</p><p>  case temp_color is</p><p>  when yellow=></p>

41、<p>  tempr:='1';</p><p>  tempg:='0';</p><p>  tempt:='0';</p><p>  case reset is</p><p>  when '0' =></p><p>

42、  temp_l:="00100";</p><p>  reset:='1';</p><p>  when others =></p><p>  case temp_l is</p><p>  when "00000"=></p><p> 

43、 temp_l:="11000";</p><p>  temp_color:=red;</p><p>  when others=></p><p>  temp_l:=temp_l-1;</p><p><b>  end case;</b></p><p><

44、;b>  end case;</b></p><p>  when green=></p><p>  tempr:='0';</p><p>  tempg:='0';</p><p>  tempt:='1';</p><p>  case

45、reset is</p><p>  when '0' =></p><p>  temp_l:="10011";</p><p>  reset:='1';</p><p>  when others =></p><p>  case tem

46、p_l is</p><p>  when "00000"=></p><p>  temp_l:="00100";</p><p>  temp_color:=yellow;</p><p>  when others=></p><p>  temp_l:=tem

47、p_l-1;</p><p><b>  end case;</b></p><p><b>  end case;</b></p><p>  when red=></p><p>  tempr:='0';</p><p>  tempg:=&

48、#39;1';</p><p>  tempt:='0';</p><p>  case reset is</p><p>  when '0' =></p><p>  temp_l:="11000";</p><p>  reset:

49、='1';</p><p>  when others =></p><p>  case temp_l is</p><p>  when "00000"=></p><p>  temp_l:="10011";</p><p>  temp_co

50、lor:=green;</p><p>  when others=></p><p>  temp_l:=temp_l-1;</p><p><b>  end case;</b></p><p><b>  end case;</b></p><p>  end c

51、ase;</p><p><b>  end if;</b></p><p>  time2<=temp_l;</p><p>  r1<=tempr;</p><p>  g1<=tempg;</p><p>  t1<=tempt;</p><p&

52、gt;  end process;</p><p><b>  end;</b></p><p><b>  2.3譯碼模塊</b></p><p>  計(jì)數(shù)控制電路輸出為二進(jìn)制碼,要想用數(shù)碼管顯示計(jì)數(shù)需要把二進(jìn)制碼變?yōu)槠叨未a。通過(guò)編程先把二進(jìn)制碼轉(zhuǎn)換為BCD碼再把BCD碼轉(zhuǎn)換為七段碼實(shí)現(xiàn)程序如下:</p>

53、<p>  將二進(jìn)制碼轉(zhuǎn)化為BCD碼的程序如下:</p><p>  library ieee;</p><p>  use ieee.std_logic_1164.all;</p><p>  entity yima is</p><p>  port (time : in std_logic_vector(4 downto 0)

54、;</p><p>  tim : out std_logic_vector(7 downto 0));</p><p><b>  end yima;</b></p><p>  architecture one of yima is</p><p><b>  begin</b></p&

55、gt;<p>  process(time)</p><p><b>  begin</b></p><p>  case time is</p><p>  when "00000" => tim <= "00000000";</p><p>  whe

56、n "00001" => tim <= "00000001";</p><p>  when "00010" => tim <= "00000010";</p><p>  when "00011" => tim <= "00000011&quo

57、t;;</p><p>  when "00100" => tim <= "00000100";</p><p>  when "00101" => tim <= "00000101";</p><p>  when "00110" =>

58、 tim <= "00000110";</p><p>  when "00111" => tim <= "00000111";</p><p>  when "01000" => tim <= "00001000";</p><p> 

59、 when "01001" => tim <= "00001001";</p><p>  when "01010" => tim <= "00010000";</p><p>  when "01011" => tim <= "00010001

60、";</p><p>  when "01100" => tim <= "00010010";</p><p>  when "01101" => tim <= "00010011";</p><p>  when "01110" =

61、> tim <= "00010100";</p><p>  when "01111" => tim <= "00010101";</p><p>  when "10000" => tim <= "00010110";</p><p&

62、gt;  when "10001" => tim <= "00010111";</p><p>  when "10010" => tim <= "00011000";</p><p>  when "10011" => tim <= "0001

63、1001";</p><p>  when "10100" => tim <= "00100000";</p><p>  when "10101" => tim <= "00100001";</p><p>  when "10110&quo

64、t; => tim <= "00100010";</p><p>  when "10111" => tim <= "00100011";</p><p>  when "11000" => tim <= "00100100";</p>&l

65、t;p>  when others => NULL;</p><p><b>  end case;</b></p><p>  end process;</p><p><b>  end;</b></p><p>  將BCD碼轉(zhuǎn)化為七段碼的程序如下:</p><

66、p>  library ieee;</p><p>  use ieee.std_logic_1164.all;</p><p>  use ieee.std_logic_unsigned.all;</p><p>  entity yima1 is</p><p>  port (jin : in std_logic_vector(3

67、 downto 0);</p><p>  chu : out std_logic_vector(6 downto 0));</p><p>  end yima1;</p><p>  architecture art of yima1 is</p><p><b>  begin</b></p>&l

68、t;p>  process (jin) is</p><p><b>  begin</b></p><p>  case jin is</p><p>  when "0000"=>chu<="0111111";</p><p>  when "000

69、1"=>chu<="0000110";</p><p>  when "0010"=>chu<="1011011";</p><p>  when "0011"=>chu<="1001111";</p><p>  whe

70、n "0100"=>chu<="1100110";</p><p>  when "0101"=>chu<="1101101";</p><p>  when "0110"=>chu<="1111101";</p><

71、;p>  when "0111"=>chu<="0000111";</p><p>  when "1000"=>chu<="1111111";</p><p>  when "1001"=>chu<="1101111";<

72、/p><p>  when others=>chu<="0000000";</p><p><b>  end case;</b></p><p>  end process;</p><p>  end architecture art;</p><p><b&

73、gt;  2.4主程序</b></p><p>  在紅綠燈交通信號(hào)系統(tǒng)中,大多數(shù)的情況是通過(guò)自動(dòng)控制的方式指揮交通的。主程序從整體上把握程序流程,程序如下所示。</p><p>  library ieee;</p><p>  use ieee.std_logic_1164.all;</p><p>  use ieee.st

74、d_logic_unsigned.all;</p><p>  entity jtd is</p><p>  port(clk:in std_logic;</p><p>  r,g,t,r1,g1,t1:out std_logic;</p><p>  dout1,dout2,dout3,dout4:out std_logic_vect

75、or(6 downto 0));</p><p>  end entity jtd;</p><p>  architecture art of jtd is</p><p>  component clkgen daolu1 is</p><p><b>  port(</b></p><p>

76、;  clk:in std_logic;</p><p>  clk1:out std_logic);</p><p>  end componentclkgen;</p><p>  component daolu1 is</p><p><b>  port(</b></p><p> 

77、 clk:in std_logic;</p><p>  timel:out std_logic_vector(4 downto 0);</p><p>  r,g,t:out std_logic);</p><p>  end component daolu1;</p><p>  component daolu2 is</p&

78、gt;<p><b>  port(</b></p><p>  clk:in std_logic;</p><p>  time2:out std_logic_vector(4 downto 0);</p><p>  r1,g1,t1:out std_logic);</p><p>  end c

79、omponent daolu2;</p><p>  component yima is</p><p>  port (time : in std_logic_vector(4 downto 0);</p><p>  tim : out std_logic_vector(7 downto 0));</p><p>  end compo

80、nent yima;</p><p>  component yima1 is</p><p>  port (shr : in std_logic_vector(4 downto 0);</p><p>  chu : out std_logic_vector(7 downto 0));</p><p>  end component y

81、ima1;</p><p>  signal ad1,ad2:std_logic_vector(4 downto 0);</p><p>  signal ac1,ac2:std_logic_vector(7 downto 0);</p><p><b>  begin</b></p><p>  u0:clkgen p

82、ort map(clk1=>clk)</p><p>  u1:daolu1 port map(clk=>clk,g=>g,t=>t,r=>r,timel=>ad1);</p><p>  u2:daolu2 port map(clk=>clk,g1=>g1,t1=>t1,r1=>r1,time2=>ad2);</p&

83、gt;<p>  u3:yima port map(time=>ad1,tim=>ac1);</p><p>  u4:yima port map(time=>ad2,tim=>ac2);</p><p>  u5:yima1 port map(shr=>ac1(3 downto 0),chu=>dout1);</p>&

84、lt;p>  u6:yima1 port map(shr=>ac1(7 downto 4),chu=>dout2);</p><p>  u7:yima1 port map(shr=>ac2(3 downto 0),chu=>dout3);</p><p>  u8:yima1 port map(shr=>ac2(7 downto 4),chu=>

85、dout4);</p><p>  end architecture art;</p><p>  3. 所實(shí)現(xiàn)功能說(shuō)明</p><p><b>  3.1實(shí)現(xiàn)功能</b></p><p>  東風(fēng)路和信息學(xué)院路各有一組綠,轉(zhuǎn)彎,紅,黃燈,各自的持續(xù)時(shí)間分別為10s,10s,25s,5s;當(dāng)無(wú)車情況時(shí),東風(fēng)路(daolu

86、1)顯示綠燈,信息學(xué)院路(daolu2)顯示紅燈。當(dāng)情況結(jié)束后,控制器恢復(fù)原來(lái)狀態(tài),繼續(xù)正常工作。用兩組數(shù)碼管,以倒計(jì)時(shí)方式顯示兩個(gè)方向允許通行或禁止通行的剩余時(shí)。</p><p><b>  3.2仿真波形</b></p><p><b>  圖3</b></p><p><b>  圖4</b>&

87、lt;/p><p>  4. 所設(shè)計(jì)原理圖及故障分析</p><p>  圖5 交通燈控制原理圖</p><p>  所設(shè)計(jì)的交通信號(hào)燈控制電路,主要適用于在兩條干道匯合點(diǎn)形成的十字交叉路口,路口設(shè)計(jì)兩組紅綠燈分別對(duì)兩個(gè)方向上的交通運(yùn)行狀態(tài)進(jìn)行管理。交通燈的持續(xù)閃亮?xí)r間由鍵盤輸入控制。燈亮規(guī)則為:當(dāng)B方向的紅燈亮?xí)r,A方向?qū)?yīng)綠燈亮,由綠燈轉(zhuǎn)換成紅燈的過(guò)渡階段黃燈亮,即

88、B方向紅燈亮的時(shí)間等于A方向綠燈和黃燈亮的時(shí)間之和。同理,當(dāng)A方向的紅燈變亮?xí)r,B方向的交通燈也遵循此規(guī)則。各干道上安裝有數(shù)碼管,以倒計(jì)時(shí)的形式顯示本道各信號(hào)燈閃亮的時(shí)間。當(dāng)出現(xiàn)特殊情況時(shí),各方向上均亮紅燈,倒計(jì)時(shí)停止。特殊運(yùn)行狀態(tài)結(jié)束后,控制器恢復(fù)原來(lái)的狀態(tài),繼續(xù)運(yùn)行。</p><p>  系統(tǒng)的硬件設(shè)計(jì)及調(diào)試:所設(shè)計(jì)的這個(gè)系統(tǒng)的主要邏輯設(shè)計(jì)由一片型號(hào)為EPlK30TC144-3芯片完成,編寫的VHDL源程序在

89、Altera公司的邏輯綜合工具M(jìn)ax+PlusⅡ下經(jīng)過(guò)編譯和功能仿真測(cè)試后,針對(duì)下載芯片進(jìn)行管腳配置,下載到EPlK30TC144-3芯片中,進(jìn)行相應(yīng)的硬件調(diào)試,調(diào)試結(jié)果與軟件仿真的結(jié)果相吻合,驗(yàn)證了設(shè)計(jì)完成了預(yù)定功能。基于VHDL設(shè)計(jì)交通燈控制器,外圍電路少、功耗低、可靠性高,便于系統(tǒng)功能的修改,設(shè)計(jì)效率高。</p><p><b>  故障及分析:</b></p><

90、p>  對(duì)程序的選擇分支認(rèn)識(shí)不清楚,case語(yǔ)句嵌套不正確,編譯后系統(tǒng)宏單元超出,修改嵌套關(guān)系后,宏單元大幅下降。</p><p>  將程序編譯引腳后,顯示不是如同波形。編寫一個(gè)5-8譯碼器加入后,可顯示正確。</p><p>  黃燈時(shí)閃爍問(wèn)題解決:在黃燈控制線輸出和時(shí)鐘信號(hào)相與。</p><p><b>  5.心得體會(huì)</b>&l

91、t;/p><p>  通過(guò)綜合實(shí)驗(yàn)的思考和設(shè)計(jì),對(duì)一個(gè)項(xiàng)目的整體設(shè)計(jì)有了進(jìn)一步認(rèn)識(shí),加深了對(duì)VHDL語(yǔ)言的了解,提高了編程能力。同時(shí),鍛煉了獨(dú)立發(fā)現(xiàn)問(wèn)題解決問(wèn)題的能力,提高了個(gè)人素質(zhì)。利用硬件描述語(yǔ)言VHDL編程,借助Altera公司的Max+PlusⅡ軟件環(huán)境下進(jìn)行了編譯及仿真測(cè)試,通過(guò)FPGA芯片實(shí)現(xiàn)了一個(gè)實(shí)用的交通信號(hào)燈控制系統(tǒng),設(shè)計(jì)由于采用了EDA技術(shù),不但大大縮短了開(kāi)發(fā)研制周期,提高了設(shè)計(jì)效率,而且使系統(tǒng)具

92、有設(shè)計(jì)靈活,實(shí)現(xiàn)簡(jiǎn)單,性能穩(wěn)定的特點(diǎn)。</p><p>  這是一次頗有收獲的實(shí)訓(xùn), 這次的實(shí)訓(xùn)中,我們更進(jìn)一步體會(huì)到自主學(xué)習(xí)和團(tuán)隊(duì)合作的樂(lè)趣與必要性。為了完成項(xiàng)目,在網(wǎng)絡(luò)上找到了許多相關(guān)資料,大大擴(kuò)充自己的知識(shí)面,使許多以前想解決卻無(wú)法解決的困難迎刃而解, 這才知道老師的良苦用心。相信以后的我不管是做網(wǎng)絡(luò)亦或是從事軟、硬件開(kāi)發(fā),都會(huì)有一個(gè)扎實(shí)的基礎(chǔ)和良好的開(kāi)發(fā)習(xí)慣的。</p><p> 

93、 通過(guò)這次課程設(shè)計(jì),加強(qiáng)了我們動(dòng)手、思考和解決問(wèn)題的能力。通過(guò)這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來(lái),從理論中得出結(jié)論,才能真正為社會(huì)服務(wù),從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。</p><p>  這次課程設(shè)計(jì)終于順利完成了,我學(xué)也到很多實(shí)用的知識(shí),學(xué)到了很多課內(nèi)學(xué)不到的東西,比如獨(dú)立思考解決問(wèn)題,出現(xiàn)差錯(cuò)的隨機(jī)應(yīng)變,和與人合作共同

94、提高,都受益非淺。在此,感謝老師的細(xì)心指導(dǎo)!</p><p><b>  參考文獻(xiàn)</b></p><p>  [1] 全國(guó)大學(xué)生電子設(shè)計(jì)競(jìng)賽組委會(huì).全國(guó)大學(xué)生電子設(shè)計(jì)獲獎(jiǎng)作品匯編[J].北京理工大學(xué)出版社,2005。</p><p>  [2] 康華光 .電子技術(shù)基礎(chǔ)-數(shù)字部分[M].高等教育出版社,1998。</p><

95、p>  [3] 譚會(huì)生等 . EDA技術(shù)及應(yīng)用[M].西安電子科技大學(xué)出版社,2001</p><p>  [4] 潘松,等.EDA技術(shù)實(shí)用教程[M].科學(xué)出版社,2006</p><p>  [5] 雷伏容 .VHDL電路設(shè)計(jì)[M].清華大學(xué)出版社,2006</p><p>  [6] Charles H.Roth,等.數(shù)字系統(tǒng)設(shè)計(jì)與VHDL[M].電子工

96、業(yè)出版社,2008</p><p><b>  附錄1 元件清單</b></p><p><b>  附錄2管腳</b></p><p>  CLK1綁定時(shí)鐘32MHZ</p><p>  LED[0]綁定LED6;--東西道紅燈</p><p>  LED[1]綁定LED7

97、;--東西道黃燈</p><p>  LED[2]綁定LED8;--東西道綠燈</p><p>  LED[3]綁定LED1;--南北道紅燈</p><p>  LED[4]綁定LED2;--南北道黃燈</p><p>  LED[5]綁定LED3;--南北道綠燈</p><p>  Dout1綁定數(shù)碼管1;</

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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)論