![畢業論文---智能交通燈控制系統設計[1]_第1頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/7/a97f72da-8284-4a2d-87b7-a42066d7e9e2/a97f72da-8284-4a2d-87b7-a42066d7e9e21.gif)
![畢業論文---智能交通燈控制系統設計[1]_第2頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/7/a97f72da-8284-4a2d-87b7-a42066d7e9e2/a97f72da-8284-4a2d-87b7-a42066d7e9e22.gif)
![畢業論文---智能交通燈控制系統設計[1]_第3頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/7/a97f72da-8284-4a2d-87b7-a42066d7e9e2/a97f72da-8284-4a2d-87b7-a42066d7e9e23.gif)
![畢業論文---智能交通燈控制系統設計[1]_第4頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/7/a97f72da-8284-4a2d-87b7-a42066d7e9e2/a97f72da-8284-4a2d-87b7-a42066d7e9e24.gif)
![畢業論文---智能交通燈控制系統設計[1]_第5頁](http://file3.renrendoc.com/fileroot_temp3/2021-12/7/a97f72da-8284-4a2d-87b7-a42066d7e9e2/a97f72da-8284-4a2d-87b7-a42066d7e9e25.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、1目目 錄錄摘摘 要要 .3 3第一章第一章 概述概述 .3 31.11.1 交通燈的發展及現狀交通燈的發展及現狀.3 31 1. .2 2 單單片片機機說說明明 .4 4第二章第二章 智能交通燈的設計原理智能交通燈的設計原理 .6 62.12.1 智能交通燈的設計框圖智能交通燈的設計框圖 .6 62.22.2 智能交通燈的設計方案及改進措施智能交通燈的設計方案及改進措施.6 6第三章第三章 智能交通燈電路設計智能交通燈電路設計 .7 73.13.1 控制器的系統框圖控制器的系統框圖.7 73.23.2 智能交通燈控制系統電路圖智能交通燈控制系統電路圖.7 73.33.3 工作原理工作原理.8
2、 8第四章第四章 智能交通燈軟件系統設計智能交通燈軟件系統設計 .14144.14.1 智能交通燈的軟件設計流程圖智能交通燈的軟件設計流程圖 .14144.24.2 程序源代碼程序源代碼 .1515第五章第五章 智能交通燈方案的仿真智能交通燈方案的仿真 .1515小結小結 .1818致謝詞致謝詞 .1818參考文獻參考文獻 .1818附附 錄錄 .1919附錄附錄 A A:智能交通燈控制程序:智能交通燈控制程序:.19192摘摘 要要本文介紹的是一個基于 PROTEUS 的智能交通燈控制系統的設計與仿真,系統根據交通十字路口雙車道車流量的情況控制交通信號燈按特定的規律變化。本文首先對智能交通燈
3、的研究意義和智能交通燈的研究現狀進行了分析,指出了現狀交通燈存在的缺點,并提出了改進方法。智能交通燈控制系統通常要實現自動控制和在緊急情況下能夠手動切換信號燈讓特殊車輛優先通行。本文還對 AT89C51 單片機的結構特點和重要引腳功能進行了介紹,同時對智能交通燈控制系統的設計進行了詳細的分析。最后利用 PROTEUS 軟件,通過其平臺對交通燈控制系統進行了仿真,仿真結果表明系統工作性能良好。關關 鍵鍵 詞詞:PROTEUS、AT89C51 單片機、智能交通燈;3 第一章第一章 概述概述 1.1 交通燈的發展及現狀交通燈的發展及現狀 中國車輛數量不斷增加,交通管制的工作量越來越大,利用計算機代替
4、人進行高效交通管理是必然的發展趨勢,而讓計算機控制的交通燈擁有類似人類的感知智能,具有很強的現實意義,比如通過攝像機讓交通燈控制系統獲得視覺感知功能,就可以代替人類的眼睛,使系統根據所“看到”交通情況自適應改變管制策略,提高了交通管理的自動化水平,使得交通更高效、更順暢。 目前設計交通燈的方案有很多,有應用 CPLD 設計實現交通信號燈控制器方法;有應用 PLC 實現對交通燈控制系統的設計;有應用單片機實現對交通信號燈設計的方法。目前,國內的交通燈一般設在十字路門,在醒目位置用紅、綠、黃三種顏色的指示燈。加上一個倒計時的顯示計時器來控制行車。對于一般情況下的安全行車,車輛分流尚能發揮作用,但根
5、據實際行車過程中出現的情況,還存在以下缺點:1兩車道的車輛輪流放行時間相同且固定, 在十字路口,經常一個車道為主干道,車輛較多,放行時間應該長些;另一車道為副干道,車輛較少,放行時間應該短些。2沒有考慮緊急車通過時,兩車道應采取的措施,臂如,消防車執行緊急任務通過時,兩車道的車都應停止,讓緊急車通過。1. 2 單單片片機機說說明明按照單片機系統擴展與系統配置狀況,單片機應用系統可分為最小系統、最小功耗系統及典型系統等。 AT89C51 單片機是美國 ATMEL 公司生產的低電壓、高性能 CMOS 8 位單片機,具有豐富的內部資源: 4kB 閃存、128BRAM、32 根 I/O 口線、2 個
6、16 位定時/計數器、5 個向量兩級中斷結構、2 個全雙工的串行口,具有 4.255.50V 的電壓工作范圍和 024MHz 工作頻率,使用 AT89C51 單片機時無須外擴存儲器。因此,本流水燈實際上就是一個帶有八個發光二極管的單片機最小應用系統,即為由發光二極管、晶振、復位、電源等電路和必要的軟件組成的單個單片機 。41. 2.1 AT89C51 單片機硬件結構單片機硬件結構AT89C51 是一種帶 4K 字節閃存可編程可擦除只讀存儲器(FPEROMFlash Programmable and Erasable Read Only Memory)的單片機芯片,它采用靜態 CMOS 工藝制造
7、 8 位微處理器,最高工作頻率位 24MHZ。AT89C5 外形及引腳排列如圖 1 所示: 圖 11.2.2 管管腳腳說說明明 R RS ST T:復位輸入。當振蕩器復位器件時,要保持RST 腳兩個機器周期的高電平時間。 P P0 0 口口:P0 口為一個 8 位漏級開路雙向 I/O 口,每腳可吸收 8TTL 門電流。當 P1 口的管腳第一次寫 1 時,被定義為高阻輸入。 P0 能夠用于外部程序數據存儲器,它可以被定義為數據 /地址的第八位。在 FIASH 編程時,P0 口作為原碼輸入口,當 FIASH 進行校驗時, P0 輸出原碼,此時 P0 外部必須被拉高。 P P1 1 口口:P1 口是
8、一個內部提供上拉電阻的 8 位雙向 I/O 口,P1 口緩沖器能接收輸出 4TTL 門電流。P1 口管腳寫入 1 后,被內部上拉為高,可用作5輸入,P1 口被外部下拉為低電平時,將輸出電流,這是由于內部上拉的緣故。在 FLASH 編程和校驗時, P1 口作為第八位地址接收。 P P2 2 口口:P2 口為一個內部上拉電阻的 8 位雙向 I/O 口,P2 口緩沖器可接收,輸出 4 個 TTL 門電流,當 P2 口被寫“1”時,其管腳被內部上拉電阻拉高,且作為輸入。并因此作為輸入時, P2 口的管腳被外部拉低,將輸出電流。這是由于內部上拉的緣故。 P2 口當用于外部程序存儲器或 16 位地址外部數
9、據存儲器進行存取時, P2 口輸出地址的高八位。在給出地址“1”時,它利用內部上拉優勢,當對外部八位地址數據存儲器進行讀寫時,P2 口輸出其特殊功能寄存器的內容。 P2 口在 FLASH 編程和校驗時接收高八位地址信號和控制信號。 P P3 3 口口:P3 口管腳是 8 個帶內部上拉電阻的雙向 I/O 口,可接收輸出 4個 TTL 門電流。當 P3 口寫入“1”后,它們被內部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平, P3 口將輸出電流( ILL)這是由于上拉的緣故。 A AL LE E/ /P PR RO OG G:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位
10、字節。在 FLASH 編程期間,此引腳用于輸入編程脈沖。在平時,ALE 端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數據存儲器時,將跳過一個 ALE 脈沖。如想禁止 ALE 的輸出可在SFR8EH 地址上置 0。此時, ALE 只有在執行 MOVX,MOVC 指令是 ALE 才起作用。另外,該引腳被略微拉高。如果微處理器在外部執行狀態ALE 禁止,置位無效。 P PS SE EN N:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次 PSEN 有效。但在訪問外部數據存儲器時,這兩次有
11、效的PSEN 信號將不出現。 E EA A/ /V VP PP P:當 EA 保持低電平時,則在此期間外部程序存儲器( 0000H-FFFFH),不管是否有內部程序存儲器。注意加密方式1 時,EA 將內部鎖定為 RESET;當 EA 端保持高電平時,此間內部程序存儲器。 X XT TA AL L1 1 和和 X XT TA AL L2 2:反向振蕩放大器的輸入及內部時鐘工作電路的輸入。 6第二章第二章 智能交通燈智能交通燈的設計原理的設計原理2.1 智能交通燈的設計框圖智能交通燈的設計框圖2.22.2 智能交通燈的設計方案及改進措施智能交通燈的設計方案及改進措施交通燈系統由四部分組成:車檢測電
12、路,信號燈電路,時間顯示電路,緊急轉換開關。 針對道路交通擁擠,交叉路口經常出現擁堵的情況利用單片機控制技術提出了軟件和硬件設計方案及兩點改進措施。1、根據各道路路口車流量的大小自動調節通行時間。2、考慮特殊車輛通行情況,設計緊急切換開關。AT89S51 單片機有 2 計數器,6 個中斷源,能滿足系統的設計要求。用其設計的交通燈也滿足了要求,所以本文采用單片機設計交通燈。第三章第三章 智能交通燈電路設計智能交通燈電路設計根據設計任務和要求,可畫出該控制器的原理框圖, 為確保十字路口的交通安全,往往都采用交通燈自動控制系統來控制交通信號。其中紅燈(R)亮,表示禁止通行;黃燈(Y)亮表示暫停;綠燈
13、(G)亮表示允許通行。73.13.1 控制器的系統框圖如圖控制器的系統框圖如圖 3 3 所示所示圖 33.2 智能交通燈控制系統電路圖智能交通燈控制系統電路圖智能交通燈電路圖如圖智能交通燈電路圖如圖 4 所示:所示:圖 4交通燈系統由四部分組成:車檢測電路,信號燈電路,時間顯示電路,緊急轉換開關。83.33.3 工作原理工作原理綠燈的放行時間與車輛通過數量不成正比。比如說 20 秒內每車道可以通過20 輛車,40 秒內每車道卻可以通過 45 輛車。因為這有一個起步的問題,還有一個黃燈等待問題。也就是說,綠燈放行時間越長,單位時間通過車輛的數量就越多。我們來計算一下,每車道通行 20 秒內可以通
14、過 20 輛車,一個紅綠燈循環是 40 秒(單交叉路口),加上每次狀態轉換的黃燈 5 秒(一個循環要兩次轉換) ,即一個紅綠黃燈循環要 50 秒,即 50 秒內通行的車輛為 40 輛。通過一輛車的平均時間是 1.25 秒。如果每次車輛通行的時間改為 40 秒,40 秒內每車道可以通過 45 輛,一個紅綠燈循環是 80 秒(單交叉路口),加上每次狀態轉換的黃燈 5 秒(一個循環要兩次轉換) ,即一個紅綠黃燈循環要 90 秒,即 90 秒內通行的車輛為 90 輛。通過一輛車的平均時間只需 1 秒。顯然在車輛擁擠的情況下綠燈的通行時間越長,單位時間內通行的車輛越多,可以有效緩解車輛擁堵問題。我設定了
15、綠燈通行時間的上限為 40 秒。在非擁擠時段綠燈的通行時間的下限為 20 秒,當交叉路口雙方車輛較少時通行時間設為 20 秒,這樣可以大大縮短車輛在紅燈面前的等待時間。當交叉路口雙方車輛較多時通行時間設為 40 秒。3.3.13.3.1 車檢測電路車檢測電路用來判斷各方向車輛狀況,比如:20秒內可以通過的車輛為20輛,當20秒內南往北方向車輛通過車輛達不到20輛時,判斷該方向為少車,當20秒內北往南方向車輛通過車輛也達不到20輛時,判斷該方向也為少車,下一次通行仍為20秒,當20秒時間內南往北或北往南任意一個方向通過的車輛達20輛時證明該狀態車輛較多,下一次該方向綠燈放行時間改為40秒,當40
16、秒內通過的車輛數達45輛時車輛判斷為擁擠,下一次綠燈放行時間改仍為40秒,當40秒車輛上通過車輛達不到45輛時,判斷為少車,下次綠燈放行時間改為20秒, 依此類推。綠燈下限時間為20秒,上限值為40秒,初始時間為20秒。這樣檢測,某次可能不準確,但下次肯定能彌補回來,累積計算是很準確的,這就是人們常說的“模糊控制”。因為路上的車不可能突然增多,塞車都有一個累積過程。這樣控制可以把不斷增多的車輛一步一步消化,雖然最后由于每個路口的綠燈放行時間延長而使等候的時間變長,但比塞車等候的時間短得多。本系統的特點是成本低,控制準確。十字路口車輛通行順序如圖5所示: 9圖 5十字路口車輛通行順序由于南往北,
17、北往南時間顯示相同,所以只要一個方向多車,下次時間就要加長東往西,西往東也一樣,顯示時間選擇如表1。表1 顯示時間選擇車輛情況本次該方向通行時間下次該方向通行時間本次該方向通行時間本次該方向通行時間南往北少車,北往南少車20 秒20 秒40 秒20 秒南往北少車,北往南多車20 秒40 秒40 秒40 秒南往北多車,北往南少車20 秒40 秒40 秒40 秒南往北多車,北往南多車20 秒40 秒40 秒40 秒東往西少車,西往東少車20 秒20 秒40 秒20 秒東往西少車,西往東多車20 秒40 秒40 秒40 秒東往西多車,西往東少車20 秒40 秒40 秒40 秒東往西多車,西往東多車2
18、0 秒40 秒40 秒40 秒3.3.23.3.2 信號燈電路信號燈電路信號燈用來顯示車輛通行狀況,下面以一個十字路口為例,說明一個交通燈的四種狀態見圖 6。每個路口的信號的的轉換順序為:綠黃紅 綠燈表示允許通行,黃燈表示禁止通行,但已經駛過安全線的車輛可以繼續通行,是綠燈過渡到紅燈提示燈。紅燈表示禁止通行。綠燈的最短時間為 20 秒,最長時間為 40 秒,紅紅最短時間為 25 秒,最長時間為 45 秒,黃燈時間為 5 秒。10圖 6 交通信號燈運行狀態3.3.3 時間顯示電路時間顯示電路在交通信號燈的正上方安裝一個可以顯示綠燈通行時間,紅燈等待時間的顯示電路,采用數碼管顯示電路是一種很好的方
19、法。由于東往西方向和西往東方向顯示的時間相同,南往北方向和北往南方向顯示的時間也相同,所以只需要考慮四位數碼管顯示電路,其中東西方向兩位,南北方向兩位,兩位數碼管可以時間的時間為 0-99 秒完全可以滿足系統的要求,數碼管連接方法如圖 7 所示。圖 7 數碼管連接方法11下面我們用這種方法顯示交通燈的時間,南北方向要顯示 20 秒,東西方向要顯示 25 秒,那么我們先給 P0 口送 2 的共陰極碼即 5BH,讓第一位 2 要顯示的位碼 GND 段為低電平,其它三位的控制端都接高電平,那么第一位就顯示 2,其它三位不亮。讓其顯示 1MS 后再給 P0 口送 0 的共陰極碼即 3FH,讓第二位要顯
20、示 0 的位碼 GND 段為低電平,其它三位的控制端都接高電平,那么第二位就顯示 0,其它三位不亮。依此類推分別送完第一位 2,第二位 0,第三位 2,第四位 5,每一位點亮 1MS 一個掃描周期為 4MS,一秒時間就要掃描 250 次其程序如下:MOV R6,#250;顯掃描次數LOOP:MOV P0,#5BH ;送 2 的共陰極碼CLR P2.0;第一位顯示 2ACALL D1MS ;延時 1MSSETB P2.0 ;滅第一位MOV P0,#3FH ;送 0 的共陰極碼CLR P2.1;第二位顯示 0ACALL D1MS ;延時 1MSSETB P2.1 ;滅第二位MOV P0,#5BH
21、;送 2 的共陰極碼CLR P2.2;第三位顯示 2ACALL D1MS ;延時 1MSSETB P2.2 ;滅第三位MOV P0,#6DH ;送 5 的共陰極碼CLR P2.3;第四位顯示 5ACALL D1MS ;延時 1MSSETB P2.3 ;滅第四位DJNZ R7,LOOP;不夠一秒,繼續掃描NEXTNUMBER;到一秒顯示下一個數D1MS: ;1MS 延時程序STAT1:MOV R4,#2MOV R3,#250DJNZ R3,$DJNZ R4,STAT1RET3.3.43.3.4 緊急轉換開關電路緊急轉換開關電路一般情況下交通燈按照車流量大小合理分配通行時間,按一定規律變化,但考慮
22、緊急車通行車況,設計緊急通行開關,下面簡述單片機的中斷原理。1、Mcs51 的中斷源12 8051 有 5 個中斷源,它們是兩個外中斷 INT0(P3.2)和 INT1(P3.3)、兩個片內定時/計數器溢出中斷 TF0 和 TF1,一個是片內串行口中斷 TI 或 RI,這幾個中斷源由 TCON 和 SCON 兩個特殊功能寄存器進行控制,其中 5 個中斷源的程序入口地址如表 2 所示:表 2 中斷源程序入口中斷源的服務程序入口地址中斷源入口地址外中斷 00003H定時/計數器 0000BH外中斷 10013H定時/計數器 0001BH串行口中斷0023H2、中斷的處理流程CPU 響應中斷請求后,
23、就立即轉入執行中斷服務程序。不同的中斷源、不同的中斷要求可能有不同的中斷處理方法,但它們的處理流程一般都如下所述:1)現場保護和現場恢復:中斷是在執行其它任務的過程中轉去執行臨時的任務,為了在執行完中斷服務程序后,回頭執行原先的程序時,知道程序原來在何處打斷的,各有關寄存器的內容如何,就必須在轉入執行中斷服務程序前,將這些內容和狀態進行備份即保護現場。中斷開始前需將有關寄存器的內容壓入堆棧進行保存,以便在恢復原來程序時使用。中斷服務程序完成后,繼續執行原先的程序,就需把保存的現場內容從堆棧中彈出,恢復積存器和存儲單元的原有內容,這就是現場恢復。 如果在執行中斷服務時不是按上述方法進行現場保護和
24、恢復現場,就會是程序運行紊亂,單片機不能正常工作。2)中斷打開和中斷關閉:在中斷處理進行過程中,可能又有新的中斷請求到來,這里規定,現場保護和現場恢復的操作是不允許打擾的,否則保護和恢復的過程就可能使數據出錯,為此在進行現場保護和現場恢復的過程中,必須關閉總中斷,屏蔽其它所有的中斷,待這個操作完成后再打開總中斷,以便實現中斷嵌套。3)中斷服務程序:13既然有中斷產生,就必然有其具體的需執行的任務,中斷服務程序就是執行中斷處理的具體內容,一般以子程序的形式出現,所有的中斷都要轉去執行中斷服務程序,進行中斷服務。4)中斷返回:執行完中斷服務程序后,必然要返回,中斷返回就是被程序運行從中斷服務程序轉
25、回到原工作程序上來。在 MCS-51 單片機中,中斷返回是通過一條專門的指令實現的,自然這條指令是中斷服務程序的最后一條指令。5) 交通燈中的中斷處理流程:(1)現場保護和現場恢復:有特殊車輛要通過時就要進行中斷,在中斷之前,先將交通燈中斷前情況保護好,當中斷執行后再恢復現場,包括信號燈和時間顯示電路。(2)中斷打開和中斷關閉:為了使特殊車輛通行按一下打開中斷開關就可以打開中斷,關閉中斷開關就關閉中斷。(3)中斷服務程序:有中斷產生,就必然有其具體的需執行的任務,中斷服務程序就是執行中斷處理的具體內容:即如果南北方向有特殊車輛要求通過,南北方向轉換為綠燈,東西方向為紅燈;如果東西方向有特殊車輛
26、要求通過,東西方向轉換為綠燈,南北方向為紅燈。(4)中斷返回:執行完中斷服務程序后,必然要返回,即回交通燈信號回到中斷前狀態,顯示時間也和中斷前一樣。14第四章第四章 智能交通燈軟件系統設計智能交通燈軟件系統設計4.14.1 智能交通燈的軟件設計流程圖智能交通燈的軟件設計流程圖智能交通燈的軟件設計流程圖如圖 8 所示:圖 8 交通燈的軟件設計流程圖4.24.2 程序源代碼程序源代碼見附錄第五章 智能交通燈方案的仿真PROTEUS嵌入式系統仿真軟件在設計時已經注意到和單片機各種編譯程序的整合了,如它可以和Keil ,Wave6000等編譯模擬軟件結合使用。由于Wave6000使用方便,具備強大的
27、軟件仿真和硬件仿真功能。把Proteus和Wave6000結合起來調試硬件就方便多了,這里就是采用“Proteus+Wave6000”的仿真方法,具體步驟如下:151)首先運行PROTEUS VSM 的ISIS,選擇SourceDefine Code Generation Tool 菜單項,將出現如圖8所示定義代碼生成工具對話框。圖9 定義代碼生成工具對話框在Tool下拉列表框中選擇代碼生成工具,在這一示例中,電路中的微處理器為8051系列單片機,因此選擇ASEM51, 單擊Browse按鈕,選取Wave6000的安裝路徑。單擊OK按鈕,結束代碼生成工具的定義。選擇SourceAdd/Remo
28、ve Source File 菜單項,將出現Add/Remove Source Code Files對話框,如圖10所示:圖10添加/刪除源文件對話框2)在Code Generation Tool 選項區,單擊下三角按鈕,選擇ASEM51工具單擊New按鈕,將出現如圖11所示對話框。16圖11 創建源代碼對話框選擇用Wave6000創建好的AA.ASM文件,即完成了文件的創建。就這樣當用Wave6000對AA.ASM 文件進行更改時每一次運行PROTEUS VSM 的ISIS對電路進行仿真時Wave6000都會對AA.ASM進行編譯,AA.HEX文件也會隨時更新。電路圖繪制完成后, 再添加AT
29、89C51 的應用程序。將鼠標移至AT89C51 上, 單擊鼠標右鍵使之處于選中狀態, 在該器件上單擊左鍵, 打開如圖12所示的對話框。在 Program File 欄添加編譯好的十六進制格式的程序文件AA.hex(可以接受3 種格式的文件) ,給AT89C51輸入晶振頻率,此處默認為12MHZ, 單擊OK 按鈕完成程序添加工作, 下面就可以進行系統仿真了。單擊主界面下方的按鈕開始系統仿真。PROTEUS VSM 所進行的是一種交互式仿真, 在仿真進行中可以對各控制按鈕、開關等進行操作, 系統對輸入的響應會被真實的反映出來如圖13。17圖圖1212 AT89C51AT89C51添加程序文件添加
30、程序文件圖圖1313 交通燈仿真界面交通燈仿真界面18小小 結結在畢業設計的整個過程中,我深切地體會到:實踐是理論運用的最好檢驗。畢業設計是對我們 3 年所學知識的一次綜合性測試和考驗,無論是在動手能力方面還是理論知識的運用能力方面,都使得我有了很大的提高。經過總結和分析,我意識到在設計程序之前,對所用單片機的內部結構有一個系統的了解,知道該單片機內有哪些資源;要有一個清晰的思路和一個完整的的軟件流程圖;在設計程序時,不能妄想一次就將整個程序設計好,反復修改、不斷改進是程序設計的必經之路;要養成注釋程序的好習慣,一個程序的完美與否不僅僅是實現功能,而應該讓人一看就能明白你的思路,這樣也為資料的
31、保存和交流提供了方便;在設計課程過程中遇到問題是很正常,但我們應該將每次遇到的問題記錄下來,并分析清楚,以免下次再碰到同樣的問題。 本次畢業設計為我的大學生活畫上了圓滿的句號,為我即將的工作和生活奠定了堅實的基礎。19致謝詞致謝詞 在整個畢業設計中,我得到了學校電子實驗室的大力支持,為我提供了各種所需的儀器設備。感謝學校為我們安排了本次畢業設計,讓我們的理論知識和實際操作經驗更加緊密的結合了在一起;同時又拓展了我們的知識面。同時十分感激夏老師對我的悉心指導和幫助,使我能夠順利的完成此次畢業設計。此次畢業設計讓我從中受益匪淺,最后再次感謝老師對我的培養和教育!20參考文獻參考文獻1 徐愛鈞 智能
32、化測量控制儀表原理與設計 (第二版)M.北京:北京航空航天大學出版社,2004 年;2 吳金戌、沈慶陽、郭庭吉 8051 單片機實踐與應用M.北京:清華大學出版社,2002 年;3 謝自美 電子線路設計實驗測試 (第三版)M.武漢:華中科技大學出版社,2006 年;4 謝維成、楊加國 主編 單片機原理與應用及 C51 程序設計M.北京:清華大學出版社,2006 年;5 楊立、鄧振杰、荊淑霞 微型計算機原理與接口技術M.中國鐵道出版社,2006 年;6 黃智偉 全國大學生電子設計競賽技能訓練 M.北京:北京航空航天大學出版社,2007 年7 高峰, 單片微型計算機與接口技術M.北京:科學出版社,
33、2003;8 華成英、童詩白 主編, 模擬電子技術基礎 (第四版)M.高等教育出版社,2006 年.9 黃海萍、陳用昌 編 微機原理與接口技術實驗指導M.北京:國防工業出版社,2004 年10 黃智偉: 凌陽單片機設計指導 ,北京: 北京航空航天大學出版社,2007 年21附附 錄錄附錄附錄 A A:智能交通燈控制程序:智能交通燈控制程序:ORG 0000HA_BIT EQU 20H ;用于存放南北十位數B_BIT EQU 21H ;用于存放南北十位數C_BIT EQU 22H ;用于存放東西十位數D_BIT EQU 23H ; 用于存放東西位數TEMP1 EQU 24H ;用于存放第一二南北
34、狀態要顯示的時間TEMP2 EQU 25H ;用于存放第一二東西狀態要顯示的時間TEMP3 EQU 26H ;用于存放第三第四南北狀態要顯示的時間TEMP4 EQU 27H;用于存放第三第四南北狀態要顯示的時間LJMP MAINORG 0003H ;外部中斷 0 入口LJMP INT0 ;跳轉到外部 0 中斷ORG 0013H ;外部中斷 1 入口LJMP INT1 ;跳轉到外部 1 中斷INT0: MOV A,P1 ;外部 0 中斷 PUSH ACC MOV A,P2 ;中斷保護 PUSH ACCMOV P1,#0FFH ;清除先前狀態MOV P2,#0FFHCLR P1.0CLR P1.4
35、 ;南北通行,東西禁止通行CLR P1.6CLR P2.3JNB P3.2 ,$ ;判斷是否還在中斷狀態POP ACCMOV P2,A ;返回中斷前狀態POP ACCMOV P1,ACCRETI ;中斷返回INT1:MOV A,P1 ;外部 1 中斷 PUSH ACC ;中斷保護 MOV A,P2 PUSH ACCMOV P1,#0FFH ;清除先前狀態MOV P2,#0FFHCLR P1.2CLR P2.1CLR P1.3 ;東西通行,南北禁止通行CLR P1.522JNB P3.3 ,$ ;判斷是否還在中斷狀態POP ACCMOV P2,A ;返回中斷前狀態POP ACCMOV P1,AR
36、ETI ;中斷返回MAIN:ORG 0100H ;初始情況MOV P1,#0FFHMOV P2,#0FFH ;滅所有燈MOV TMOD,#55H ;計數方式方式 1MOV IE,#85H ;開中斷MOV TEMP1,#20 ;MOV TEMP2,#25MOV TEMP3,#25MOV TEMP4,#20STAR:MOV P1,#0FFHMOV P2,#0FFH ;滅所有燈MOV A,24H ;將顯示時間送 ACJNE A,#20,T40T ;判斷時間,選初始值T20T: ;南北通行要顯示的時間為 20 的計數器初始值CLR TF0 ;清 TF0CLR TF1 ;清 TF1MOV TH1 ,#0
37、FFH ;送 20 秒時的初始值MOV TL1 ,#0FCH ;在些設計 20 秒 6 輛為多車MOV TH0 ,#0FFHMOV TL0 ,#0FCHLJMP TEMP20 ;跳到 20 秒T40T: ;南北通行要顯示的時間為 40 的計數器初始值CLR TF0 ;清 TF0CLR TF1 ;清 TF1MOV TH1,#0FFH ;送 40 秒時的初始值MOV TL1 ,#0F8H ;在些設計 40 秒 8 輛為多車MOV TH0 ,#0FFHMOV TL0 ,#0F8HLJMP TEMP40 ;跳到 40 秒TEMP20: ;TEMP1=20 情況SETB TR0 ;開始計數SETB TR
38、1CLR P1.2CLR P2.1 ;南北通行,東西禁止通行CLR P1.3CLR P1.5MOV TEMP1,#20 ;南北要顯示的時間,MOV TEMP2,#25 ;東西要顯示的時間23STLOP:ACALL DISPLAY1 ;調用顯示DEC TEMP1 ;時間夠一秒顯示時間減 1DEC TEMP2MOV A,TEMP1CJNE A,#0,NEXT ;若顯示時間不為 0 保持現在狀態LJMP STAR2 ;若顯示時間為 0 跳到第二狀態NEXT: LJMP STLOPSTAR2: ;狀態 1SETB P1.2CLR P1.1 ;南北黃燈,東西禁止通行SETB P1.3CLR P1.4MO
39、V TEMP1,#05 ;南北要顯示的時間,MOV TEMP2,#05 ;東西要顯示的時間,STLOP2:ACALL DISPLAY1 ;調用顯示DEC TEMP1 ;時間夠一秒顯示時間減 1DEC TEMP2MOV A,TEMP1CJNE A,#0,NEXT2 ;若顯示時間不為 0 保持現在狀態JB TF1 ,T40 ;判斷南北是否多車JB TF0 ,T40 ;判斷北南是否多車MOV TEMP1,#20 ;少車下次顯示時間為 20 秒LJMP STAR3 ;跳到狀態 3T40:MOV TEMP1,#40 ; 多車下次顯示時間為 40 秒LJMP STAR3 ;若顯示時間為 0 跳到第三狀態N
40、EXT2:LJMP STLOP2TEMP40:;TEM=40 程序SETB TR0 ; 開始計數SETB TR1CLR P1.2CLR P2.1 ;南北通行,東西禁止通行CLR P1.3CLR P1.5MOV TEMP1,#40 ;南北要顯示的時間,MOV TEMP2,#45 ;東西要顯示的時間STLOP11:ACALL DISPLAY1 ;調用顯示DEC TEMP1 ;時間夠一秒顯示時間減 1DEC TEMP2MOV A,TEMP1CJNE A,#0,NEXT11 ;若顯示時間不為 0 保持現在狀態LJMP STAR22 ;若顯示時間為 0 跳到第二狀態NEXT11: LJMP STLOP1
41、124STAR22: ;狀態 1SETB P1.2CLR P1.1 ;南北黃燈,東西禁止通行SETB P1.3CLR P1.4MOV TEMP1,#05 ;南北要顯示的時間,MOV TEMP2,#05 ;東西要顯示的時間,STLOP22:ACALL DISPLAY1 ;調用顯示DEC TEMP1 ;時間夠一秒顯示時間減 1DEC TEMP2MOV A,TEMP1CJNE A,#0,NEXT22 ;若顯示時間不為 0 保持現在狀態JB TF1 ,T401 ; 判斷是否多車JB TF0 ,T401MOV TEMP1,#20 ;少車下次顯示時間為 20 秒LJMP STAR3T401:MOV TEM
42、P1,#40 ;多車下次顯示時間為 40 秒LJMP STAR3 ;若顯示時間為 0 跳到第三狀態NEXT22:LJMP STLOP22STAR3:MOV A,26HCJNE A,#25,T40T1 ;判斷時間,選初始值T20T1: ;南北通行要顯示的時間為 20 的計數器初始值CLR TF0 ; 清溢出位CLR TF1MOV TH1 ,#0FFH ; 給初值MOV TL1 ,#0FCHMOV TH0 ,#0FFHMOV TL0 ,#0FCHLJMP TEMP320T40T1: ;南北通行要顯示的時間為 40 的計數器初始值CLR TF0 ;CLR TF1MOV TH1,#0FFH ;給初值M
43、OV TL1 ,#0F8HMOV TH0 ,#0FFHMOV TL0 ,#0F8HLJMP TEMP340TEMP320:;狀態三SETB TR1 ;南北停止計數SETB TR0 ;東西開始計數SETB P1.1 ;東西通行,南北禁止通行CLR P1.0SETB P1.1CLR P1.025SETB P1.5CLR P1.6SETB P2.1CLR P2.3MOV TEMP3,#25 ;南北要顯示的時間,MOV TEMP4,#20 ;東西要顯示的時間,STLOP33:ACALL DISPLAY ;調用顯示DEC TEMP3 ;時間夠一秒顯示時間減 1DEC TEMP4MOV A,TEMP4CJ
44、NE A,#0,NEXT33 ;若顯示時間不為 0 保持現在狀態LJMP STAR34 ;若顯示時間為 0 跳到第四狀態NEXT33:LJMP STLOP33STAR34: ;狀態四SETB P2.3CLR P2.2SETB P1.6 ;東西黃燈,南北禁止通行CLR P1.5MOV TEMP3,#05 ;南北要顯示的時間,MOV TEMP4,#05 ;東西要顯示的時間,STLOP34:ACALL DISPLAY ;調用顯示DEC TEMP3 ;時間夠一秒顯示時間減 1DEC TEMP4MOV A,TEMP4CJNE A,#0,NEXT34 ;若顯示時間不為 0 保持現在狀態JB TF1 ,T4
45、02JB TF0 ,T402MOV TEMP3,#25LJMP START402:MOV TEMP3,#45LJMP STARNEXT34: LJMP STLOP34TEMP340 :SETB TR1 ;南北停止計數SETB TR0 ;東西開始計數SETB P1.1 ;東西通行,南北禁止通行CLR P1.0SETB P1.1CLR P1.0SETB P1.5CLR P1.6SETB P2.1CLR P2.326MOV TEMP3,#45 ;南北要顯示的時間,MOV TEMP4,#40 ;東西要顯示的時間,STLOP43:ACALL DISPLAY ;調用顯示DEC TEMP3 ;時間夠一秒顯示
46、時間減 1DEC TEMP4MOV A,TEMP4CJNE A,#0,NEXT43 ;若顯示時間不為 0 保持現在狀態LJMP STAR44 ;若顯示時間為 0 跳到第四狀態NEXT43:LJMP STLOP43STAR44: ;狀態四SETB P2.3CLR P2.2SETB P1.6 ;東西黃燈,南北禁止通行CLR P1.5MOV TEMP3,#05 ;南北要顯示的時間,MOV TEMP4,#05 ;東西要顯示的時間,STLOP44:ACALL DISPLAY ;調用顯示DEC TEMP3 ;時間夠一秒顯示時間減 1DEC TEMP4MOV A,TEMP3CJNE A,#0,NEXT44
47、;若顯示時間不為 0 保持現在狀態JB TF1 ,T403JB TF0 ,T403MOV TEMP3,#25LJMP START403:MOV TEMP3,#45 LJMP STARNEXT44: LJMP STLOP44;顯示DISPLAY1:MOV A,TEMP1 ;將南北要顯示的數存放到 AMOV B,#10 ;B=10DIV AB ;A 除以 B 商存 A,余數 BMOV B_BIT,A ; 將 A 放到 20HMOV A_BIT,B ;將 B 放到 21HMOV A,TEMP2 ;將東西要顯示的數存放到 AMOV B,#10 ;B=10DIV AB ;A 除以 B 商存 A,余數 B
48、MOV C_BIT,A ;將 A 放到 22HMOV D_BIT,B ;將 B 放到 23HMOV DPTR ,#NUMT ;MOV R0,#2 ;R0=2DPL11: MOV R1,#250 ;R1=25027DPLOP1:MOV A,A_BIT ;將南北要顯示的 10 位數送 AMOVC A,A+DPTR ;查表MOV P0,A ;顯示南北 10 位數CLR P2.7ACALL D1MS;延時 1MSSETB P2.7 ;滅南北 10 位數MOV A,B_BIT ;將南北要顯示的個位數送 AMOVC A,A+DPTR ;查表MOV P0,A ;顯示南北個位數CLR P2.6ACALL D1
49、MS ;延時 1MSSETB P2.6 ;滅南北個位數MOV A,C_BIT ;將東西要顯示的 10 位數送 AMOVC A,A+DPTR ;查表MOV P0,A ;顯示東西 10 位數CLR P2.5ACALL D1MS ;延時 1MSSETB P2.5 ;滅東西 10 位數MOV A,D_BIT ;將東西要顯示的個位數送 AMOVC A,A+DPTR ;查表MOV P0,A ;顯示東西東西位數CLR P2.4ACALL D1MS ;延時 1MSSETB P2.4 ;滅東西個位數DJNZ R1,DPLOP ;循環掃描DJNZ R0,DPL1RET; ;等待 1 秒返回顯示DISPLAY:MO
50、V A,TEMP3 ;將南北要顯示的數存放到 AMOV B,#10 ;B=10DIV AB ;A 除以 B 商存 A,余數 BMOV B_BIT,A ; 將 A 放到 20HMOV A_BIT,B ;將 B 放到 21HMOV A,TEMP4 ;將東西要顯示的數存放到 AMOV B,#10 ;B=10DIV AB ;A 除以 B 商存 A,余數 BMOV C_BIT,A ;將 A 放到 22HMOV D_BIT,B ;將 B 放到 23HMOV DPTR ,#NUMT ;MOV R0,#2 ;R0=2DPL1: MOV R1,#250 ;R1=250DPLOP:MOV A,A_BIT ;將南北
51、要顯示的 10 位數送 AMOVC A,A+DPTR ;查表28MOV P0,A ;顯示南北 10 位數CLR P2.7ACALL D1MS;延時 1MSSETB P2.7 ;滅南北 10 位數MOV A,B_BIT ;將南北要顯示的個位數送 AMOVC A,A+DPTR ;查表MOV P0,A ;顯示南北個位數CLR P2.6ACALL D1MS ;延時 1MSSETB P2.6 ;滅南北個位數MOV A,C_BIT ;將東西要顯示的 10 位數送 AMOVC A,A+DPTR ;查表MOV P0,A ;顯示東西 10 位數CLR P2.5ACALL D1MS ;延時 1MSSETB P2.
52、5 ;滅東西 10 位數MOV A,D_BIT ;將東西要顯示的個位數送 AMOVC A,A+DPTR ;查表MOV P0,A ;顯示東西東西位數CLR P2.4ACALL D1MS ;延時 1MSSETB P2.4 ;滅東西個位數DJNZ R1,DPLOP ;循環掃描DJNZ R0,DPL1RET ;等待 1 秒返回D1MS: MOV R7,#250 ;1MS 延時程序DJNZ R7,$RET;1 到 10 對應電路圖數碼管表NUMT: DB 7EH,48H,67H,6BH,59HDB 3BH,3FH,68H,7FH,7BH中英文摘要-目錄-引言-研究現狀-背景-思路-整體原理-部分電路介紹
53、-程序介紹-總結-謝詞=參考文獻=附件可以聯系我,有程序。仿真,原理圖,等. 南北方向綠燈和東西方向綠燈不能同時亮,如果同時亮,則立刻關閉信號燈系統,并報警。同理,東西向綠燈與南北向轉彎燈也不能同時亮。2. 南北及南北轉彎紅燈亮并保持 40 秒,同時東西綠燈亮,但只保持 35 秒,到35 秒時東西綠燈閃 3 次(每周期為 1 秒)后熄滅,繼而東西黃燈亮,并保持 2秒,到 2 秒后,東西黃燈滅,東西紅燈亮,同時南北紅燈熄滅和南北綠燈亮;南北轉彎紅燈繼續亮著。293. 東西及南北轉彎紅燈亮并保持 30 秒,同時南北綠燈亮,但只保持 25 秒,到25 秒時南北綠燈閃亮 3 次(每周期 1 秒)后熄滅
54、,繼而南北黃燈亮,并保持 2秒,到 2 秒后,南北黃燈滅,南北紅燈亮,同時南北向轉彎紅燈滅,綠燈亮。4. 南北向轉彎綠燈亮 25 秒,同時南北向和東西向紅燈亮并保持 25 秒,待南北向轉彎綠燈亮 25 秒后,紅燈亮起,東西向紅燈滅,綠燈亮,并保持 35 秒,南北向紅燈繼續亮著,后接 2.中繼續循環。5. 各燈能手動控制也能自動轉換,并且能周而復始的進行工作。1 緒論緒論1.1 道路交通控制的發展背景道路交通控制的發展背景隨著經濟發展,城市化速度加快,機動車輛占有量急劇增加,由此引發出日益嚴重的交通問題:交通擁擠甚至堵塞,交通事故頻繁,空氣和噪聲污染嚴重,公共運輸系統效率下降等。解決這一問題通常
55、有兩種辦法,一種是修路造橋,這對道路交通狀況的改善是一種最直接的辦法,但它需要巨額的投資,且在城市中心區受拆遷的限制,很難實施另一種是在現有的道路交通條件下,實施交通控制和管理,充分發揮現有道路的通行能力,大量事實已經證明這種方法的有效性。 通常,一個經驗豐富的交通警察能在極短的時間內把一個交叉路口的交通阻塞緩解或解除,但他的作用范圍往往局限于單個交叉路口。而現代的道路交通非常復雜,常常是幾個或幾十個甚至是成百上千個路口互相關聯,在這種情況下,任何一個經驗豐富的交通警察都無能為力了因此,人們越來越關注把先進的科學技術用于交通管理,從而促進了交通自動控制技術的不斷發展。1.2 道路交通控制的目的
56、和作用道路交通控制的目的和作用道路交通控制的目的可定義為:在確定的行政規定約束下,采用合適的營運 方法來確保公共和私人運輸方式具有最佳的交通運行狀態。圍繞這一目的研制出的道路交通控制系統,把受控對象看成一個整體,采用對交通流科學地時間分割的方法,最大限度地保證交通流運動的連續性,使受控區域的交通流減少沖突,同時平穩地、有規則地運動。道路交通控制的作用主要表現為以下幾個方面: (1) 改善交通秩序,增加交通安全。 (2) 減少交通延誤,提高經濟效益。 (3) 降低污染程度,保護生態環境。(4) 節省能源和土地消耗。301.3 我國城市交通特點分析我國城市交通特點分析人、車、路是構成城市交通的三大
57、要素,要探討我國城市交通特點,必須從分析這三大要素的基本特點著手。1.3.11.3.1 人的交通素質人的交通素質 人是交通的主體,與世界發達國家相比,我國人的社會交通意識還沒有真正形成,少數領導部門交通觀念淡薄,對城市交通建設在國民經濟建設中的重要性認識不足,交通政策時有失誤。機動車駕駛員文化水平低,又缺乏系統訓練,尤其缺乏心理素質,感知能力和判斷能力的培養,因而,對人,車的運動特征不能很好掌握。行人與非機動車駕駛員普遍不懂,甚至漠視交通法規。交通管理人員交通工程和心理學知識貧乏,感知,分析交通信息和處理特發性事件的能力不強。總的來看,我國人的交通素質距離現代化城市交通要求還相差甚遠,而交通與人密切相關,城市交通中出現的問題幾乎都離不開人的因素,因此,想方設法提高全社會的文化素質,健全交通法規,加強交通宣傳教育,增強人的社會交通意識,培養良好的交通習慣,使參與交通的每個人都認識到交通的重要性,自覺順應交通
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論