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

下載本文檔

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

文檔簡介

1、<p><b>  城市交通燈課程設計</b></p><p>  題 目 城市交通燈 </p><p>  學院(部) 工業(yè)制造 </p><p>  專 業(yè) 測控技術(shù)與儀器 </p><p>

2、;  學生姓名 </p><p>  學 號 * 年級 12 </p><p>  指導教師 職稱   </p><p>  2014 年 12 月 9 日</p><p><b>  摘要:</

3、b></p><p>  在日常生活中,交通燈作為管理交通、調(diào)協(xié)車輛的一個便捷的手段,起著很大的作用。各種交通工具、行人都要根據(jù)交通燈的變化來決定是否前行,通行的時間的規(guī)定協(xié)調(diào)了它們的步伐,極大的減少了由于交通混亂引起的各種事故的發(fā)生。因此,一個完善的交通系統(tǒng)中,交通燈是必不可少的設備,一個完善的交通燈程序會更有效的管理當前道路中出現(xiàn)的實際情況,使車輛、行人的行進變得更順暢、更和諧。</p>

4、<p>  隨著我國國民經(jīng)濟的快速發(fā)展,我國機動車輛發(fā)展迅速,而城鎮(zhèn)道路建設由于歷史等各種原因相對滯后,交通擁擠和堵塞現(xiàn)象時常出現(xiàn)。如何利用當今計算機和自動控制技術(shù),有效地疏導交通,提高城鎮(zhèn)交通路口的通行能力,減少交通事故是很值得研究的一個課題。目前,國內(nèi)的交通燈一般設在十字路口,在醒目位置用紅、綠、黃三種顏色的指示燈加上一個倒計時的顯示器來控制行車。</p><p><b>  關鍵詞:&l

5、t;/b></p><p><b>  交通燈;道路;</b></p><p><b>  目 錄</b></p><p><b>  1摘要2</b></p><p>  2任務分析與設計思路4</p><p>  2.1任務分析

6、:4</p><p>  2.2設計思路5</p><p><b>  3總體設計6</b></p><p>  3.1單片機內(nèi)部資源分布圖:6</p><p>  3.2硬件原理框圖:6</p><p>  3.3軟件結(jié)構(gòu)框圖:7</p><p> 

7、 3.474HC373及74LS138芯片簡單介紹9</p><p><b>  4詳細設計10</b></p><p>  4.1設計電路:10</p><p>  4.2交通燈電路:10</p><p>  4.3倒計時顯示電路:11</p><p>  5仿真電路及效果

8、圖:12</p><p>  5.1仿真電路:13</p><p>  5.2仿真效果:14</p><p><b>  6軟件框圖15</b></p><p>  6.1主程序流程圖: 17</p><p>  7程序及注釋17</p><p>

9、  7.1主程序:21</p><p><b>  8心得體會22</b></p><p>  9設計資料及參考文獻23</p><p><b>  任務分析與設計思路</b></p><p><b>  任務分析:</b></p><p>

10、  本次設計要求:運用所學單片機原理、模擬和數(shù)字電路等方面的知識,設計出一臺交通信號燈,模擬路口交通信號。交通燈要求如下:</p><p>  城市道口交通燈控制系統(tǒng)模型采用單片機作為主控制器,用于十字路口的車輛及行人的交通管理,每個方向具有左拐、右拐、直行及行人4種通行指示燈,計時牌顯示路口通行轉(zhuǎn)換剩余時間,在出現(xiàn)緊急情況時可由交警手動實現(xiàn)全路口車輛禁行而行人通行狀態(tài)。另外,在特種車輛如119,110通過路口時

11、,系統(tǒng)可自動轉(zhuǎn)為特種車輛放行,其他車輛禁止通行的狀態(tài),15s后系統(tǒng)自動恢復正常管理。其他還有盲人提示音、120s與60s通行管理轉(zhuǎn)換等功能目前,我們接觸到的交通燈都位于十字路口,假設實際情況為東西南北走向的十字路口,如下圖: </p><p>  東西南北各三盞燈,每三盞分別為紅、黃、綠三種顏色,總共十二盞燈,而實際情況下,東西方向燈亮滅一致,南北方向燈亮滅一致,故只需要按東西為一組,南北為一組,兩組交錯亮滅

12、來設計控制系統(tǒng),即可達到交通燈系統(tǒng)的控制目的。根據(jù)以上分析那么只需要控制東南或者西北六盞燈亮滅規(guī)律就能實現(xiàn)控制,另外兩組對應一致就行了。根據(jù)設計要求,要求東西或者南北通行25秒,紅綠燈切換中間黃燈閃爍5秒。那么要求綠燈亮放行,放行線,綠燈持續(xù)亮(通行時間)25秒,黃燈亮(警告提醒時間)5秒,紅燈亮禁止通行,禁止線,為了簡化設計,也為25秒。切換過程東西南北均為黃燈閃爍。</p><p><b>  設計

13、思路</b></p><p>  東西為一組,南北為一組,利用單片機的IO口控制亮滅,時間的表示利用數(shù)碼管顯示。東西和南北方向上有時間差。數(shù)碼管利用動態(tài)顯示的方法實現(xiàn)。時間的計時利用單片機定時器功能實現(xiàn)。因此單片機會利用到兩個定時器。</p><p><b>  總體設計</b></p><p>  單片機內(nèi)部資源分布圖:</

14、p><p><b>  硬件原理框圖:</b></p><p><b>  3、軟件結(jié)構(gòu)圖:</b></p><p><b>  軟件結(jié)構(gòu)框圖:</b></p><p><b>  芯片介紹</b></p><p><b> 

15、 1.74HC373</b></p><p><b>  引腳圖:</b></p><p>  373為三態(tài)輸出的八 D 透明鎖存器,共有 54/74S373 和 54/74LS373 兩種線路   結(jié)構(gòu)型式,其主要電器特性的典型值如下(不同廠家具體值有差別):   型號 tPd PD   54S373/74S373 7ns 525mW   54LS373

16、/74LS373 17ns 120mW   373 的輸出端 O0~O7 可直接與總線相連。   當三態(tài)允許控制端 OE 為低電平時,O0~O7 為正常邏輯狀態(tài),可用來驅(qū)動負載或總   線。當 OE 為高電平時,O0~O7 呈高阻態(tài),即不驅(qū)動總線,也不為總線的負載,但   鎖存器內(nèi)部的邏輯操作不受影響。   當鎖存允許端 LE 為高電平時,O 隨數(shù)據(jù) D 而變。當 LE 為低電平時,O 被鎖存在   已建立的數(shù)據(jù)電平。   當 LE 端

17、施密特觸發(fā)器的輸入滯后作用,使交流和直流噪聲抗擾度被改善 400mV。</p><p><b>  2.74LS138</b></p><p><b>  引腳圖:</b></p><p>  74LS138為3 線-8 線譯碼器,共有54/74S138和54/74LS138兩種線路結(jié)構(gòu)型式,其工作原理

18、如下:當一個選通端(G1)為高電平,另兩個選通端(/(G2A)和/(G2B))為低電平時,可將地址端(A、B、C)的二進制編碼在一個對應的輸出端以低電平譯出。利用G1/(G2A)和/(G2B)可級聯(lián)擴展成24線譯碼器;若外接一個反相器還可級聯(lián)擴展成32線譯碼器。若將選通端中的一個作為數(shù)據(jù)輸入端時,74LS138還可作數(shù)據(jù)分配器</p><p><b>  2詳細設計</b></p>

19、;<p>  本設計使用的單片機為AT89C51。AT89C51是帶有4K字節(jié)閃存的低電壓高性能微處理器。其主要特性:與MCS-51 兼容   ·4K字節(jié)可編程FLASH存儲器   ·壽命:1000寫/擦循環(huán)   ·數(shù)據(jù)保留時間:10年   ·全靜態(tài)工作:0Hz-24MHz   ·三級程序存儲器鎖定   ·128×8位內(nèi)部RAM   ·32可編

20、程I/O線   ·兩個16位定時器/計數(shù)器   ·5個中斷源   ·可編程串行通道   ·低功耗的閑置和掉電模式   ·片內(nèi)振蕩器和時鐘電路。</p><p><b>  設計電路:</b></p><p>  設計電路主要由兩部分組成,第一個部分為P0口與十二個發(fā)光二極管連接電路,第二個部分是東西和南北各一組74HC

21、373與兩個二位一體數(shù)碼管(共陰)組成的時間顯示電路,第三部分是74LS138組成的數(shù)碼管控制電路,下面分別詳細說明。</p><p><b>  交通燈電路:</b></p><p>  設計中采用發(fā)光二極管作為交通燈來使用,單片機的I/O接口直接和交通燈(發(fā)光二極管)連接并加上上拉電阻。在十字路口的四組紅、黃、綠三色交通燈中,東西方向道路上的兩組同色燈連接在一起,

22、南北方向道路上的兩組同色的燈也彼此連接在,受單片機P0.0~P0.5控制。單片機的I/O接口與交通燈電路的具體連接方式為:P0.0~P0.2分別接東西方向的紅、黃、綠共6個放光二極管,P0.3~P0.5分別接南北方向的紅、黃、綠共6個發(fā)光二極管。12個發(fā)光二極管采用了共陰極的連接方式,因此I/O口輸出高電平時,與之相連的發(fā)光二極管會亮,I/O口輸出低電平時,相應的發(fā)光二極管會滅。交通燈電路如圖所示</p><p>

23、;<b>  倒計時顯示電路:</b></p><p>  該顯示裝置選用七段數(shù)碼管來顯示交通燈轉(zhuǎn)換的剩余時間,根據(jù)控制要求,每個路口需要一個數(shù)碼管,這樣四個路口就要求四個數(shù)碼管。因我們選用共陰型數(shù)碼管,這樣單片機的I/O必須加上拉電阻才可以驅(qū)動。東西和南北路口倒計時顯示被置在不同一時刻顯示不相同的數(shù)字,數(shù)碼管的顯示是由74LS138來選擇的,電路如下圖所示</p><p

24、><b>  仿真電路及效果圖:</b></p><p><b>  仿真電路:</b></p><p><b>  仿真效果:</b></p><p>  南北通行時間為10s,東西紅燈時間為15s</p><p><b>  南北黃燈時間為5s</b&

25、gt;</p><p>  南北紅燈20s,東西綠燈15s</p><p><b>  東西黃燈5s</b></p><p><b>  5、元件清單:</b></p><p><b>  軟件框圖</b></p><p>  主程序流程圖: <

26、;/p><p><b>  程序及注釋 </b></p><p><b>  主程序: </b></p><p>  #include <reg51.h></p><p>  #include <intrins.h></p><p>  #define u

27、char unsigned char</p><p>  #define uint unsigned int</p><p>  uchar code smg[] = //0-9的共陽數(shù)碼管段碼</p><p>  {0X3F,0X06,0X5B,0X4F,0X66,0X6D,0X7D,0X07,0X7F,0X6F};</p><p>  

28、uchar Dsy_Buffer[2];</p><p>  uchar D_Buffer[2];</p><p>  uchar Scan_Bit; //動態(tài)掃描位,選擇要顯示的數(shù)碼管</p><p>  uchar Dsy_Idx; //顯示緩沖索引0-7</p><p>  sbit P0_5= P0^5;</p><

29、;p>  sbit P0_4= P0^4;</p><p>  sbit P0_3= P0^3;</p><p>  sbit P0_2= P0^2;</p><p>  sbit P0_1= P0^1;</p><p>  sbit P0_0= P0^0;</p><p>  uchar j=0;</p&

30、gt;<p>  uchar k=0;</p><p>  uchar i=0;</p><p>  uchar a=15;</p><p>  uchar b=10;</p><p>  void play_NS1() //南北方向交通燈狀態(tài)1綠燈亮</p><p><

31、;b>  {</b></p><p><b>  P0_3=0;</b></p><p><b>  P0_4=0;</b></p><p><b>  P0_5=1;</b></p><p><b>  }</b></p>

32、<p>  void play_NS2() //南北方向交通燈狀態(tài)2黃燈亮</p><p><b>  {</b></p><p><b>  P0_3=0;</b></p><p><b>  P0_4=1;</b></p><p&g

33、t;<b>  P0_5=0;</b></p><p><b>  }</b></p><p>  void play_NS3() //南北方向交通燈狀態(tài)3紅燈亮</p><p><b>  {</b></p><p><b>  P0

34、_3=1;</b></p><p><b>  P0_4=0;</b></p><p><b>  P0_5=0;</b></p><p><b>  }</b></p><p>  void play_EW1() //東西方向交通燈狀

35、態(tài)1紅燈亮</p><p><b>  {</b></p><p><b>  P0_0=1;</b></p><p><b>  P0_1=0;</b></p><p><b>  P0_2=0;</b></p><p><

36、;b>  }</b></p><p>  void play_EW2() //東西方向交通燈狀態(tài)2綠燈亮</p><p><b>  {</b></p><p><b>  P0_0=0;</b></p><p><b>  P0_1=0;&l

37、t;/b></p><p><b>  P0_2=1;</b></p><p><b>  }</b></p><p>  void play_EW3() //東西方向交通燈狀態(tài)3黃燈亮</p><p><b>  {</b></p&g

38、t;<p><b>  P0_0=0;</b></p><p><b>  P0_1=1;</b></p><p><b>  P0_2=0;</b></p><p><b>  }</b></p><p>  void main()<

39、;/p><p><b>  {</b></p><p>  TMOD = 0x11; //設置T0,T1工作在模式1</p><p>  TH0 = (65536 - 1000) / 256;</p><p>  TL0 = (65536 - 1000) % 256; //定時器T0裝入初

40、值,12MHz晶振定時1ms</p><p>  TH1=(65536-50000)/256; //定時器T1裝入初值,12MHz晶振定時50ms</p><p>  TL1=(65536-50000)%256;</p><p>  EA = 1; //開總中斷 </p><p>&

41、lt;b>  ET0 = 1;</b></p><p>  ET1=1; //開定時器0,1中斷</p><p>  Scan_Bit = 0x00;</p><p>  Dsy_Idx =0x00;</p><p><b>  TR0= 1;</b></p

42、><p>  TR1=1; //定時器0,1啟動</p><p><b>  while(1)</b></p><p><b>  {</b></p><p>  Dsy_Buffer[0]=smg[a/10];//主程序顯示數(shù)碼管數(shù)值</p>

43、<p>  Dsy_Buffer[1]=smg[a%10];</p><p>  D_Buffer[0]=smg[b/10];</p><p>  D_Buffer[1]=smg[b%10];</p><p><b>  }</b></p><p><b>  }</b></p

44、><p>  void tm0_ser() interrupt 1</p><p><b>  {</b></p><p>  TH0 = (65536 - 1000) / 256;</p><p>  TL0 = (65536 - 1000) % 256; //重新裝入初值</p><p>  

45、P3 = Scan_Bit; //選通相應數(shù)碼管</p><p>  P2 = Dsy_Buffer[Dsy_Idx]; //段碼送P2</p><p>  P1 = D_Buffer[Dsy_Idx]; //段碼送P1</p><p>  Scan_Bit = (Scan_Bit+1)&0x0f;//準備下次將要選通的數(shù)碼管

46、</p><p>  Dsy_Idx = (Dsy_Idx + 1) % 2; //索引在0-2內(nèi)循環(huán)</p><p><b>  }</b></p><p>  void lightchange_ser() interrupt 3</p><p><b>  {</b></p>&

47、lt;p>  TH1=(65536-50000)/256;</p><p>  TL1=(65536-50000)%256;</p><p><b>  i++;</b></p><p>  switch(k) //東西方向交通燈狀態(tài)選擇</p><p><b>  {</

48、b></p><p>  case 0: play_NS1(); break;</p><p>  case 1: play_NS2(); break;</p><p>  case 2: play_NS3(); break;</p><p><b>  }</b></p><p>  sw

49、itch(j) //東西方向交通燈狀態(tài)選擇</p><p><b>  {</b></p><p>  case 0: play_EW1(); break;</p><p>  case 1: play_EW2(); break;</p><p>  case 2: play_EW3(); break

50、;</p><p><b>  }</b></p><p>  if(i==20) //定時1s</p><p><b>  {</b></p><p><b>  i=0;</b></p><p><b>  a--;</b>

51、</p><p><b>  b--;</b></p><p>  if(b==0) //南北時間倒計時到0時</p><p><b>  {</b></p><p><b>  k++;</b></p><p>&l

52、t;b>  k=k%3;</b></p><p>  if(b==0&&k==0) //為了修改不同狀態(tài)下的持續(xù)時間</p><p>  {b=10;} //綠燈持續(xù)10S</p><p>  if(b==0&&k==1)</p><p>  {b=5

53、;} //黃燈持續(xù)5S</p><p>  if(b==0&&k==2)</p><p>  {b=20;} //紅燈持續(xù)20S</p><p><b>  }</b></p><p>  if(a==0) //南北時間倒計時到0時<

54、;/p><p><b>  {</b></p><p><b>  j++;</b></p><p><b>  j=j%3;</b></p><p>  if(a==0&&j==0) //為了修改不同狀態(tài)下的持續(xù)時間</p>&

55、lt;p>  {a=15;} //紅燈持續(xù)15S</p><p>  if(a==0&&j==1)</p><p>  {a=15;} //綠燈持續(xù)15S</p><p>  if(a==0&&j==2)</p><p>  {a=5;}

56、 //黃燈持續(xù)5S</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  心得體會</b></p><p>  通過

57、兩個星期的交通燈課程設計,我對單片機相關知識有了更深的了解。對于管腳及相關的控制寄存器,有了更進一步的鞏固和了解,尤其是I/O口的實用及編程,相當于重新細細溫習了一遍。特別對protues軟件畫電路圖及仿真的過程,以及Altium Designer軟件的畫圖到布線再到制版,這里的應用完全是剛開始的。說到這里,得感謝小組里同學們的指導,同時也幸好大家都很繁忙,讓我有更多的獨立探索學習和思考的空間,將這些東西變成自己的。這次課程設計的任務是

58、通過單片機的I/O口來控制交通燈。主要完成三大項任務,第一就是硬件連接圖;第二是編寫相應的程序來實現(xiàn)硬件功能。第三就是自己硬件實物。其實還是挺有趣并簡單的。</p><p>  這次設計過程中,遇到了一些問題,制版的時候布線不夠好,導致跳線的地方特別多,電路板效果不好。通過這次課程設計,關于單片機的知識深入了解了更多,但更多是讓我知道了知識的欠缺,很多環(huán)節(jié),都慢慢翻書或者查找資料才能完成。讓我明白,在以后的學習中

59、,應更注重知識的應用,更注重實質(zhì)的掌握。</p><p>  當然這次課程設計,提高了知識的應用能力和和實踐能力,同時提高了獨立思考獨立完成任務的能力,當然同組之間,遇到了實在沒辦法解決的問題,也相互的咨詢和討論,加強了大家的合作精神和團結(jié)能力。這對以后的學習和工作都有重要意義。 </p><p><b>  設計資料及參考文獻</b></p><

60、;p>  1.高惠芳.單片機原理與應用技術(shù).科學出版社,2010.4</p><p>  2.胡漢才.單片機原理及其接口技術(shù).清華大學出版社,2004</p><p>  3.吳飛青等.單片機原理與應用實踐指導.機械工業(yè)出版社 2009.2</p><p>  4.Proteus幫助文檔</p><p>  5.Alitum desig

溫馨提示

  • 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

提交評論