畢業(yè)設(shè)計--交通信號燈模擬控制系統(tǒng)設(shè)計_第1頁
已閱讀1頁,還剩21頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p>  電氣自動化技術(shù)專業(yè)畢業(yè)論文</p><p>  論文題目:交通信號燈模擬控制系統(tǒng)設(shè)計</p><p>  交通信號燈模擬控制系統(tǒng)設(shè)計</p><p>  摘要:在日常生活中人們來往要經(jīng)過無數(shù)次十字路口,所以在十字路口需要一套交通信號燈的模擬控制來管理人流和車道輸通,用以避免發(fā)生人和各種交通工具發(fā)生任何的事故,交通信號燈可以用AT89C51系列單

2、片機來實現(xiàn)紅、黃、綠燈的控制,使人流和車輛安全流通,從而實現(xiàn)了十字路口交通信號燈的自動控制化,更易于交通管理和控制。本設(shè)計采用AT89C51單片機構(gòu)成交通信號燈控制系統(tǒng)。</p><p>  關(guān)鍵字:交通燈控制系統(tǒng);AT89C51單片機;硬件連接圖;調(diào)試</p><p><b>  目 錄</b></p><p>  引言…………………………

3、…………………………………………………………4</p><p>  第一章 交通信號燈的系統(tǒng)設(shè)計方案與論證………………………………………5</p><p>  1.1 系統(tǒng)設(shè)計方案的選擇與論證…………………………………………………5</p><p>  1.2 系統(tǒng)設(shè)計要求…………………………………………………………………5</p><p>

4、;  第二章 單片機簡介…………………………………………………………………5</p><p>  2.1 單片機的發(fā)展歷程……………………………………………………………5</p><p>  2.2 單片機的特點…………………………………………………………………6</p><p>  2.3 AT89C51單片機簡介 …………………………………………………………6

5、</p><p>  2.3.1 主要性能參數(shù)……………………………………………………………7</p><p>  2.3.2 功能特性概述……………………………………………………………7</p><p>  2.3.3 引腳功能…………………………………………………………………7</p><p>  2.3.4 極限參數(shù)…………………………

6、………………………………………9</p><p>  第三章 交通信號燈的分析與設(shè)計…………………………………………………9</p><p>  3.1 Keil軟件的簡介………………………………………………………………9</p><p>  3.2 設(shè)計原理………………………………………………………………………10</p><p>  3

7、.3 硬件電路圖設(shè)計………………………………………………………………10</p><p>  3.4 軟件設(shè)計………………………………………………………………………11</p><p>  3.5 流程圖設(shè)計……………………………………………………………………16</p><p>  第四章 調(diào)試…………………………………………………………………………18<

8、/p><p>  結(jié)束語…………………………………………………………………………………18</p><p>  致謝……………………………………………………………………………………19</p><p>  參考文獻………………………………………………………………………………20</p><p>  附錄…………………………………………………………

9、…………………………21</p><p><b>  引 言</b></p><p>  隨著社會經(jīng)濟的發(fā)展,城市交通問題越來越引起人們的關(guān)注。人、車、路三者關(guān)系的協(xié)調(diào),已成為交通管理部門需要解決的重要問題之一。交通燈控制系統(tǒng)是用于城市交通數(shù)據(jù)監(jiān)測、交通信號燈控制與交通疏導(dǎo)的計算機綜合管理系統(tǒng),它是現(xiàn)代城市交通監(jiān)控指揮系統(tǒng)中最重要的組成部分。采用單片機構(gòu)成交通信號燈

10、控制系統(tǒng),可以節(jié)約人力資源和降低系統(tǒng)成本。交通信號誕生于1868年,最早采用燃氣燃燒發(fā)光,隨著科技的進步和交通的發(fā)展,信號機不斷的獲得改進,今天已達到了完全自動化的水平。交通信號燈的作用主要是從時間上將相互沖突的交通流分離,使其在不同的時間通過,以保證行車安全;同時交通信號對于組織、指揮和控制交通流的流向、流量以及維護交通秩序等均有重要的作用。</p><p>  第一章 交通信號燈的系統(tǒng)總體設(shè)計方案與論證&l

11、t;/p><p>  1.1 系統(tǒng)設(shè)計方案的選擇與論證</p><p>  方案一:由普通的數(shù)字電路集成芯片組成</p><p>  這種方案的特點是:硬件設(shè)計思路簡單,但用元件多,電路比較復(fù)雜,焊接調(diào)試容易出錯,而且不利于智能控制,調(diào)試時間電路復(fù)雜。</p><p><b>  方案二:單片機控制</b></p>

12、;<p>  采用單片機控制,可提高電路的可靠性和穩(wěn)定性,硬件電路比較簡單,主要用軟件來控制,控制方式靈活多樣,能滿足不同情況的控制,可利用中斷等方式通過程序來方便的實現(xiàn)調(diào)試時間。</p><p>  綜合以上兩種方案的特點,并結(jié)合自身的知識結(jié)構(gòu),本設(shè)計采用方案二,選擇常用的AT89C51單片機構(gòu)成。</p><p>  1.2 系統(tǒng)設(shè)計要求</p><p

13、>  1、在雙干線的“十字”路口上,交通信號燈的變化是定時的,其基本規(guī)律如下:</p><p>  A:放行線:綠燈亮放行25秒,黃燈亮警告5秒,然后紅燈亮禁行。</p><p>  B:禁行線:紅燈亮禁行30秒,然后綠燈亮放行。</p><p>  2、控制東、西、南、北四個路口的紅、黃、綠信號燈正常工作。</p><p>  3、兩

14、條路交替成為放行線和禁行線。</p><p>  4、有急救車優(yōu)先通行控制。有急救車來時,所有路口信號燈全部變紅,假定急救車通過時間為10秒,急救車過后,交通燈恢復(fù)先前狀態(tài)。</p><p>  5、能顯示定時時間信息。</p><p>  6、可用具體硬件實現(xiàn),也可用PROTEUS軟件仿真實現(xiàn)。</p><p>  第二章 單片機簡介&l

15、t;/p><p>  2.1 單片機的發(fā)展歷程</p><p>  單片機微型計算機是微型計算機的一個重要分支,也是頗具生命力的機種。單片機微型計算機簡稱單片機,特別適用于控制領(lǐng)域,故又稱為微控制器。</p><p>  在MCS-51系列單片機中,有兩個子系列:51子系列和52子系列。每個子系列有諾干中型號。51系列有8051、8751和8031三個型號,后來經(jīng)過改

16、進產(chǎn)生了80c51、87c51、80c31三個型號;52系列有5021、8752、8032三個型號,改進后的型號是80c52/87c52、80c32。改進后的型號更加省電。52系列比對應(yīng)的51系列增加了定時器T2并將內(nèi)部程序存貯器增加到8KB。Inter公司停止生產(chǎn)MCS-51系列單片機之后將生產(chǎn)權(quán)轉(zhuǎn)讓給了許多其他公司,于是出現(xiàn)了許多與Mcs-51兼容的單片機。現(xiàn)在生產(chǎn)mcs-51兼容單片機的公司對其進行了不同程度的改進和提高。我們現(xiàn)在

17、使用比較的多的是AT89C51/AT89s51等。</p><p>  通常,單片機由單塊集成電路芯片構(gòu)成,內(nèi)部包含有計算機的基本功能部件:中央處理器、存儲器和I/O接口電路等。因此,單片機只需要和適當(dāng)?shù)能浖巴獠吭O(shè)備相結(jié)合,便可成為一個單片機控制系統(tǒng)。</p><p>  單片機經(jīng)過1、2、3、3代的發(fā)展,目前單片機正朝著高性能和多品種方向發(fā)展,它們的CPU功能在增強,內(nèi)部資源在增多,引

18、角的多功能化,以及低電壓底功耗</p><p>  2.2 單片機的特點:</p><p> ?。?)性價比高,開發(fā)周期短,易于產(chǎn)品化,</p><p>  (2)集成度高,可靠性好,抗干擾性強,</p><p> ?。?)功能完善,接口多樣,</p><p> ?。?)低功耗、低電壓</p><

19、p>  一般電源供電電壓在5~3V范圍內(nèi)單片機都能正常工作,供電的下限可達1~2V。</p><p> ?。?)總線多樣,易于擴展</p><p>  單片機外部的典型三總線結(jié)構(gòu),方便系統(tǒng)構(gòu)擴展,構(gòu)成各種規(guī)模的應(yīng)用系統(tǒng)。外部總線增加了I2C及SPI等串行總線方式, 可根據(jù)需要進行并行或者串行擴展。</p><p>  2.3 AT89C51單片機簡介<

20、/p><p>  AT89C51是美國ATMEL公司生產(chǎn)的低電壓、高性能CMOS 8位單片機,片內(nèi)含4KB的可反復(fù)擦寫的程序存儲器和128B的隨機存取數(shù)據(jù)存儲器(RAM),器件采用Atmel公司的高密度、非易失性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)配置通用8位中央處理器(CPU)和Flash存儲單元,功能強大的AT89C51單片機可靈活應(yīng)用于各種控制領(lǐng)域。</p><p>  2.

21、3.1 主要性能參數(shù)</p><p>  與MCS-51產(chǎn)品指令系統(tǒng)完全兼容</p><p>  4KB可反復(fù)擦寫Flash閃速存儲器</p><p><b>  1000次擦寫周期</b></p><p>  時鐘頻率范圍:0Hz—24MHz</p><p><b>  3級加密程序存

22、儲器</b></p><p>  128*8B內(nèi)部RAM</p><p>  32個可編程I/O接口線</p><p>  2個16位定時/計數(shù)器</p><p><b>  6個中斷源</b></p><p>  可編程串行UART通道</p><p>  低

23、功耗空閑和掉電模式</p><p>  2.3.2 功能特性概述</p><p>  AT89C51提供以下標(biāo)準(zhǔn)功能:4KB的Flash閃速存儲器,128B內(nèi)部RAM,32個I/O接口線,兩個16位定時/計數(shù)器,一個5向量兩級中斷結(jié)構(gòu),一個全雙工串行通信口,片內(nèi)振蕩器及時鐘電路。同時,AT89C51可降至0Hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式。空閑方式停止CPU的工作,但允

24、許RAM、定時/計數(shù)器、串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM中的內(nèi)容,但振蕩器停止工作并禁止其他所有部件工作直到下一個硬件復(fù)位。</p><p>  2.3.3 引腳功能</p><p>  如圖2-4所示AT89C51芯片引腳圖</p><p><b>  VCC:供電電壓。</b></p><p><

25、;b>  GND:接地。</b></p><p>  P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的第八位。在FIASH編程時,P0 口作為原碼輸入口,當(dāng)FIASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。</p><p>  P1口:

26、P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗時,P1口作為第八位地址接收。 </p><p>  P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當(dāng)P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,

27、且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當(dāng)對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。</p><p>  P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向

28、I/O口,可接收輸出4個TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。</p><p>  P3口也可作為AT89C51的一些特殊功能口,如下表所示:</p><p>  P3.0 RXD(串行輸入口)</p><p>  P3.1 TXD(串行輸出口)</

29、p><p>  P3.2 /INT0(外部中斷0)</p><p>  P3.3 /INT1(外部中斷1)</p><p>  P3.4 T0(記時器0外部輸入)</p><p>  P3.5 T1(記時器1外部輸入)</p><p>  P3.6 /WR(外部數(shù)據(jù)存儲器寫選通)</p><p> 

30、 P3.7 /RD(外部數(shù)據(jù)存儲器讀選通)</p><p>  P3口同時為閃爍編程和編程校驗接收一些控制信號。</p><p>  圖2-4 AT89C51芯片引腳圖</p><p>  RST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時,要保持RST腳兩個機器周期的高電平時間。</p><p>  ALE/PROG:當(dāng)訪問外部存儲器時,地址鎖存允許的

31、輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當(dāng)用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時, ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位

32、無效。</p><p>  /PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。</p><p>  /EA/VPP:當(dāng)/EA保持低電平時,則在此期間外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器。注意加密方式1時,/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電

33、平時,此間內(nèi)部程序存儲器。在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。</p><p>  XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。</p><p>  XTAL2:來自反向振蕩器的輸出。</p><p>  2.3.4 極限參數(shù)</p><p>  工作溫度:-55℃—+125℃</p>

34、<p>  儲藏溫度:-65℃—+15℃</p><p>  任一引腳對地電壓:-1.0V—+7.0V</p><p>  最高工作電壓:6.6V</p><p>  直流輸出電流:15.0mA</p><p>  第三章 交通信號燈的分析與設(shè)計</p><p>  3.1 Keil軟件的簡介</p

35、><p>  Keil C51是美國Keil Software公司出品的51系列兼容單片機C語言軟件開發(fā)系統(tǒng),與匯編語言相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護性上有明顯的優(yōu)勢,因而易學(xué)易用。用過匯編語言后再使用C語言來開發(fā),體會更加深刻。</p><p>  Keil C51軟件提供豐富的庫函數(shù)和功能強大的集成開發(fā)調(diào)試工具,可以完成從工程建立到管理、編譯、鏈接、目標(biāo)代碼的生成、軟件仿真、

36、硬件仿真等完整的開發(fā)流程,全Windows界面。另外重要的一點,只要看匯編后生成的代碼,就能體會到Keil 51生成的目標(biāo)代碼效率非常之高,而且可以附加靈活的控制選項,多數(shù)語句生成的匯編代碼很緊湊,容易理解。在開發(fā)大型軟件時更能體現(xiàn)高級語言的優(yōu)勢。Keil C51集成開發(fā)環(huán)境的主要功能有以下幾點:?  µVision2 for Windows:是一個集成開發(fā)環(huán)境,它將項目管理、源代碼編輯和程序調(diào)試等組合在一個功能強

37、大的環(huán)境中;?  C51國際際準(zhǔn)化C交叉編譯器:從C源代碼產(chǎn)生可重定位的目標(biāo)模塊;?  A51宏匯編器:從80C51匯編源代碼產(chǎn)生可重定位的目標(biāo)模塊;?  BL51鏈接器/定位器:組合由C51和A51產(chǎn)生的可重定位的目標(biāo)模塊,生成絕對目標(biāo)模塊;?  LIB51庫管理器:從目標(biāo)模塊生成連接器可以使用的庫文件;?  OH51目標(biāo)文件至HEX格式的轉(zhuǎn)換器,從絕對目標(biāo)模塊生成Intel

38、 Hex文件;?  RTX-51實時操作系統(tǒng):簡化了復(fù)雜的</p><p><b>  3.2 設(shè)計原理</b></p><p>  通常情況下,東西路口和南北路口交替通車。交通燈的亮滅規(guī)律:東西路口的綠燈亮,南北路口的紅燈亮,東西方向通車,延時一段時間后,東西路口綠燈滅,黃燈開始閃爍。閃爍若干次后,東西路口紅燈亮,而同時南北路口的綠燈亮,南北方向開始通

39、車,延時一段時間后,南北路口的綠燈滅,黃燈開始閃爍。閃爍若干次后,再切換到東西路口方向,重復(fù)上述過程。 </p><p>  有急救車通過時,東西路口和南北路口兩個方向上均不允許通車。讓急救車通過。交通燈的亮滅規(guī)律:東西路口和南北路口兩個方向上的紅燈亮,延時一段時間后,交通燈恢復(fù)到急救車來到之前的狀態(tài)。</p><p>  3.3 硬件電路圖設(shè)計</p><p>

40、  硬件電路圖通過Proteus 7.5 SP3仿真之后如圖1所示,其中:</p><p>  東西方向綠燈所運行的狀態(tài)如附錄中圖3所示;</p><p>  南北方向綠燈所運行的狀態(tài)如附錄中圖4所示;</p><p>  東西方向黃燈所運行的狀態(tài)如附錄中圖5所示;</p><p>  南北方向紅燈所運行的狀態(tài)如附錄中圖6所示;</p&

41、gt;<p>  急救車通行所運行的狀態(tài)如附錄中圖7所示.</p><p><b>  圖1</b></p><p><b>  3.4 軟件設(shè)計</b></p><p><b>  C語言程序:</b></p><p>  #include<reg51.

42、h></p><p>  #define uchar unsigned char</p><p>  #define uint unsigned int</p><p>  sbit dxred=P1^0;</p><p>  sbit dxyellow=P1^1;</p><p>  sbit dxgreen=

43、P1^2;</p><p>  sbit nbred=P1^3;</p><p>  sbit nbyellow=P1^4;</p><p>  sbit nbgreen=P1^5;</p><p>  sbit jijiuche=P3^3;</p><p>  uchar code table[]={0xc0,0xf

44、9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e};</p><p>  void init1(); //第一狀態(tài),南北亮綠燈,東西亮紅燈</p><p>  void init2(); //第二狀態(tài),南北亮黃燈,東西亮紅燈</p><p>  void init3()

45、; //第三狀態(tài),南北亮紅燈,東西亮綠燈</p><p>  void init4(); //第四狀態(tài),南北亮紅燈,東西亮黃燈</p><p>  void init5(); //第五狀態(tài),東西南北同時亮紅燈</p><p>  void delay(uint ms)</p><p><b>  {</b><

46、/p><p><b>  uint i,j;</b></p><p>  for(i=0;i<ms;i++)</p><p>  for(j=0;j<124;j++);</p><p><b>  }</b></p><p>  void display(uint s

47、hu) </p><p><b>  {</b></p><p><b>  P2=0xfa;</b></p><p>  P0=table[shu%10];</p><p><b>  delay(5);</b></p><p><b>

48、;  P2=0xf5;</b></p><p>  P0=table[shu/10];</p><p><b>  delay(5);</b></p><p><b>  }</b></p><p><b>  uint tt;</b></p><

49、;p>  void main()</p><p><b>  { </b></p><p>  TMOD=0x01;</p><p>  TH0=(65536-50000)/256;</p><p>  TL0=(65536-50000)%256;</p><p><b>  

50、TR0=1;</b></p><p><b>  ET0=1;</b></p><p><b>  EA=1; </b></p><p><b>  while(1)</b></p><p><b>  {</b></p><

51、;p><b>  init1();</b></p><p><b>  init2();</b></p><p><b>  init3();</b></p><p><b>  init4();</b></p><p><b>  ini

52、t5();</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  void init1()</p><p><b>  {</b></p><p>  uint jishi;</p&

53、gt;<p><b>  jishi=30;</b></p><p>  TMOD=0x01;</p><p>  TH0=(65536-50000)/256;</p><p>  TL0=(65536-50000)%256;</p><p><b>  TR0=1;</b></

54、p><p><b>  ET0=1;</b></p><p><b>  EA=1; </b></p><p><b>  while(1)</b></p><p><b>  {</b></p><p><b>  dxr

55、ed=1;</b></p><p>  dxgreen=0;</p><p>  dxyellow=0;</p><p><b>  nbred=0;</b></p><p>  nbgreen=1;</p><p>  nbyellow=0;</p><p>

56、  if(tt==20)</p><p><b>  { </b></p><p><b>  tt=0;</b></p><p><b>  jishi--;</b></p><p>  if(jijiuche==0)</p><p><b>

57、;  {</b></p><p><b>  init5();</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if(jishi==5)</p><p><b>  {&l

58、t;/b></p><p><b>  init2();</b></p><p><b>  }</b></p><p>  display(jishi);</p><p><b>  }</b></p><p><b>  }</

59、b></p><p>  void init2()</p><p><b>  {</b></p><p>  uint jishi;</p><p><b>  jishi=5;</b></p><p>  TMOD=0x01;</p><p>

60、;  TH0=(65536-50000)/256;</p><p>  TL0=(65536-50000)%256;</p><p><b>  TR0=1;</b></p><p><b>  ET0=1;</b></p><p><b>  EA=1; </b></p

61、><p><b>  while(1)</b></p><p><b>  {</b></p><p><b>  dxred=1;</b></p><p>  dxgreen=0;</p><p>  dxyellow=0;</p><

62、p><b>  nbred=0;</b></p><p>  nbgreen=0;</p><p>  nbyellow=1;</p><p>  if(tt==20)</p><p><b>  { </b></p><p><b>  tt=0;</

63、b></p><p><b>  jishi--; </b></p><p>  if(jijiuche==0)</p><p><b>  {</b></p><p><b>  init5();</b></p><p>  }

64、 </p><p><b>  }</b></p><p>  if(jishi==0)</p><p><b>  {</b></p><p><b>  init3();</b></p><p><b>  }</b><

65、/p><p>  display(jishi);</p><p><b>  }</b></p><p><b>  }</b></p><p>  void init3()</p><p><b>  {</b></p><p> 

66、 uint jishi;</p><p><b>  jishi=30;</b></p><p>  TMOD=0x01;</p><p>  TH0=(65536-50000)/256;</p><p>  TL0=(65536-50000)%256;</p><p><b>  TR

67、0=1;</b></p><p><b>  ET0=1;</b></p><p><b>  EA=1; </b></p><p><b>  while(1)</b></p><p><b>  {</b></p><p

68、><b>  dxred=0;</b></p><p>  dxgreen=1;</p><p>  dxyellow=0;</p><p><b>  nbred=1;</b></p><p>  nbgreen=0;</p><p>  nbyellow=0;<

69、;/p><p>  if(tt==20)</p><p><b>  { </b></p><p><b>  tt=0;</b></p><p><b>  jishi--;</b></p><p>  if(jijiuche==0)</p>

70、<p><b>  {</b></p><p><b>  init5();</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if(jishi==5)</p><p

71、><b>  {</b></p><p><b>  init4();</b></p><p><b>  }</b></p><p>  display(jishi);</p><p><b>  }</b></p><p>

72、;<b>  }</b></p><p>  void init4()</p><p><b>  {</b></p><p>  uint jishi;</p><p><b>  jishi=5;</b></p><p>  TMOD=0x01;&l

73、t;/p><p>  TH0=(65536-50000)/256;</p><p>  TL0=(65536-50000)%256;</p><p><b>  TR0=1;</b></p><p><b>  ET0=1;</b></p><p><b>  EA=1

74、;</b></p><p><b>  while(1)</b></p><p><b>  {</b></p><p><b>  dxred=0;</b></p><p>  dxgreen=0;</p><p>  dxyellow=1

75、;</p><p><b>  nbred=1;</b></p><p>  nbgreen=0;</p><p>  nbyellow=0;</p><p>  if(tt==20)</p><p><b>  { </b></p><p><

76、b>  tt=0;</b></p><p><b>  jishi--;</b></p><p>  if(jijiuche==0)</p><p><b>  {</b></p><p><b>  init5();</b></p><p

77、><b>  }</b></p><p><b>  }</b></p><p>  if(jishi==0)</p><p><b>  {</b></p><p><b>  init1();</b></p><p>&l

78、t;b>  }</b></p><p>  display(jishi);</p><p><b>  }</b></p><p><b>  }</b></p><p>  void dingshi() interrupt 1</p><p><b&

79、gt;  { </b></p><p>  TH0=(65535-50000)/256; </p><p>  TL0=(65535-50000)%256;</p><p><b>  tt++;</b></p><p><b>  }</b></p><p>

80、  void init5()</p><p><b>  {</b></p><p>  uint jishi;</p><p><b>  jishi=10;</b></p><p>  TMOD=0x01;</p><p>  TH0=(65536-50000)/256;

81、</p><p>  TL0=(65536-50000)%256;</p><p><b>  TR0=1;</b></p><p><b>  ET0=1;</b></p><p><b>  EA=1;</b></p><p><b>  

82、while(1)</b></p><p><b>  {</b></p><p><b>  dxred=1;</b></p><p>  dxgreen=0;</p><p>  dxyellow=0;</p><p><b>  nbred=1;&l

83、t;/b></p><p>  nbgreen=0;</p><p>  nbyellow=0;</p><p>  if(tt==20)</p><p><b>  {</b></p><p><b>  tt=0;</b></p><p>&

84、lt;b>  jishi--;</b></p><p><b>  }</b></p><p>  if(jishi==0)</p><p><b>  {</b></p><p>  return; </p><p><b>  }</

85、b></p><p>  display(jishi);</p><p><b>  }</b></p><p><b>  }</b></p><p>  3.5 流程圖設(shè)計</p><p>  主程序流程圖如圖2所示:</p><p>&l

86、t;b>  圖2</b></p><p><b>  第四章 調(diào)試</b></p><p>  程序編寫過程中遇到很多語法、符號、調(diào)用差錯問題,通過仔細修改后都得到了解決,并且程序通過Proteus 7.5 SP3仿真軟件的測試也能夠正常運行。</p><p><b>  結(jié)束語</b></p&g

87、t;<p>  通過這次交通燈的畢業(yè)設(shè)計,使我得到了一次用專業(yè)知識、專業(yè)技能分析和解決現(xiàn)實問題的能力。使我在單片機的基本原理、單片機應(yīng)用學(xué)習(xí)過程中,以及在常用編程設(shè)計思路技巧的掌握方面都能向前邁了一大步,為日后成為一名合格的應(yīng)用型人才打下良好的基礎(chǔ)。綜合課程設(shè)計讓我把以前學(xué)習(xí)到的知識得到鞏固和進一步的提高認識,對已有知識有了更深層次的理解和認識。在此,由于自身能力有限,在畢業(yè)設(shè)計中碰到了很多的問題,我通過查閱相關(guān)書籍、資料

88、以及和周圍同學(xué)交流得到解決。</p><p>  還有交通燈是我們生活中非常常見的一種東西,對于我們學(xué)以致用的這種能力得到了很好鍛煉,能夠為我們以后的工作與學(xué)習(xí)打下基礎(chǔ)。</p><p>  由于本人的水平有限,設(shè)計中難免會有一些不合理的部分,系統(tǒng)的穩(wěn)定性還有待提高。</p><p><b>  致謝</b></p><p&

89、gt;  感謝趙永紅老師的指導(dǎo),使論文才得以順利完成;感謝百色職業(yè)學(xué)院曾經(jīng)為我授過課的全體老師,是他們的言傳身教,才使我日有所長,學(xué)有所成;感謝我的朋友,沒有他的幫助,不可想象我將會怎么樣……</p><p><b>  參考文獻</b></p><p>  [1] 馬忠梅,籍順心. 單片機的C語言應(yīng)用程序設(shè)計[M]. 北京航空航天大學(xué)出版,2007</p>

90、;<p>  [2] 胡漢才. 單片機原理與接口技術(shù)[M]. 清華大學(xué)出版社,2006</p><p>  [3] 丁元杰. 單片機原理與應(yīng)用[M]. 機械工業(yè)出版社,2007</p><p>  [4] 譚浩強. C程序設(shè)計(第3版)[M]. 清華大學(xué)出版社,2005</p><p>  [5] 郭天祥. 新概念51單片機C語言教程:入門、提高、開發(fā)

91、、拓展全攻略[M]. 電子工業(yè)出版社,2009</p><p>  [6] 黃智偉. 全國大學(xué)生電子設(shè)計競賽系統(tǒng)設(shè)計(第2版)[M]. 北京航空航天大學(xué)出版,2011</p><p><b>  附錄</b></p><p>  圖3 東西方向通行狀態(tài)</p><p>  圖4 東西方向黃燈狀態(tài)</p>

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論