![畢業(yè)論文---智能交通燈控制系統(tǒng)設計[1]講解_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-3/2/258904b4-35b9-4535-aaa1-b6521222733c/258904b4-35b9-4535-aaa1-b6521222733c1.gif)
![畢業(yè)論文---智能交通燈控制系統(tǒng)設計[1]講解_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-3/2/258904b4-35b9-4535-aaa1-b6521222733c/258904b4-35b9-4535-aaa1-b6521222733c2.gif)
![畢業(yè)論文---智能交通燈控制系統(tǒng)設計[1]講解_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-3/2/258904b4-35b9-4535-aaa1-b6521222733c/258904b4-35b9-4535-aaa1-b6521222733c3.gif)
![畢業(yè)論文---智能交通燈控制系統(tǒng)設計[1]講解_第4頁](http://file2.renrendoc.com/fileroot_temp3/2021-3/2/258904b4-35b9-4535-aaa1-b6521222733c/258904b4-35b9-4535-aaa1-b6521222733c4.gif)
![畢業(yè)論文---智能交通燈控制系統(tǒng)設計[1]講解_第5頁](http://file2.renrendoc.com/fileroot_temp3/2021-3/2/258904b4-35b9-4535-aaa1-b6521222733c/258904b4-35b9-4535-aaa1-b6521222733c5.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、目錄摘 要2第一章概述31.1 交通燈的發(fā)展及現(xiàn)狀.31.2單片機說明3第二章智能交通燈的設計原理62.1智能交通燈的設計框圖62.2 智能交通燈的設計方案及改進措施6第三章智能交通燈電路設計63.1 控制器的系統(tǒng)框圖 .73.2 智能交通燈控制系統(tǒng)電路圖錯誤!未定義書簽。3.3 工作原理8第四章智能交通燈軟件系統(tǒng)設計144.1智能交通燈的軟件設計流程圖144.2程序源代碼14第五章智能交通燈方案的仿真14小結18致謝詞18參考文獻18附 錄21附錄 A:智能交通燈控制程序:211摘 要本文介紹的是一個基于 PROTEUS的智能交通燈控制系統(tǒng)的設計與仿真, 系統(tǒng)根據(jù)交通十字路口雙車道車流量的情
2、況控制交通信號燈按特定的規(guī)律變化。本文首先對智能交通燈的研究意義和智能交通燈的研究現(xiàn)狀進行了分析, 指出了現(xiàn)狀交通燈存在的缺點, 并提出了改進方法。 智能交通燈控制系統(tǒng)通常要實現(xiàn)自動控制和在緊急情況下能夠手動切換信號燈讓特殊車輛優(yōu)先通行。 本文還對AT89C51單片機的結構特點和重要引腳功能進行了介紹, 同時對智能交通燈控制系統(tǒng)的設計進行了詳細的分析。 最后利用 PROTEUS軟件,通過其平臺對交通燈控制系統(tǒng)進行了仿真,仿真結果表明系統(tǒng)工作性能良好。關 鍵 詞:PROTEUS、AT89C51單片機、智能交通燈;2第一章概述1.1 交通燈的發(fā)展及現(xiàn)狀中國車輛數(shù)量不斷增加,交通管制的工作量越來越大
3、,利用計算機代替人進行高效交通管理是必然的發(fā)展趨勢,而讓計算機控制的交通燈擁有類似人類的感知智能,具有很強的現(xiàn)實意義, 比如通過攝像機讓交通燈控制系統(tǒng)獲得視覺感知功能,就可以代替人類的眼睛,使系統(tǒng)根據(jù)所“看到”交通情況自適應改變管制策略,提高了交通管理的自動化水平,使得交通更高效、更順暢。目前設計交通燈的方案有很多,有應用CPLD設計實現(xiàn)交通信號燈控制器方法 ; 有應用 PLC 實現(xiàn)對交通燈控制系統(tǒng)的設計 ; 有應用單片機實現(xiàn)對交通信號燈設計的方法。目前,國內的交通燈一般設在十字路門,在醒目位置用紅、綠、黃三種顏色的指示燈。 加上一個倒計時的顯示計時器來控制行車。 對于一般情況下的安全行車,
4、車輛分流尚能發(fā)揮作用, 但根據(jù)實際行車過程中出現(xiàn)的情況, 還存在以下缺點: 1兩車道的車輛輪流放行時間相同且固定, 在十字路口,經(jīng)常一個車道為主干道, 車輛較多,放行時間應該長些; 另一車道為副干道, 車輛較少,放行時間應該短些。 2沒有考慮緊急車通過時,兩車道應采取的措施,臂如,消防車執(zhí)行緊急任務通過時,兩車道的車都應停止,讓緊急車通過。1. 2 單片機說明按照單片機系統(tǒng)擴展與系統(tǒng)配置狀況,單片機應用系統(tǒng)可分為最小系統(tǒng)、最小功耗系統(tǒng)及典型系統(tǒng)等。AT89C51單片機是美國ATMEL公司生產(chǎn)的低電壓、高性能 CMOS8 位單片機,具有豐富的內部資源:4kB 閃存、128BRAM、32 根 I/
5、O 口線、 2 個 16 位定時 / 計數(shù)器、 5 個向量兩級中斷結構、2 個全雙工的串行口,具有4.25 5.50V 的電壓工作范圍和0 24MHz工作頻率,使用 AT89C51 單片機時無須外擴存儲器。因此,本流水燈實際上就是一個帶有八個發(fā)光二極管的單片機最小應用系統(tǒng),即為由發(fā)光二極管、晶振、復位、電源等電路和必要的軟件組成的單個單片機。31. 2.1 AT89C51 單片機硬件結構AT89C51 是一種帶 4K 字節(jié)閃存可編程可擦除只讀存儲器( FPEROM FlashProgrammable and Erasable Read Only Memory )的單片機芯片,它采用靜態(tài)CMOS
6、 工藝制造 8 位微處理器,最高工作頻率位24MHZ 。AT89C5 外形及引腳排列如圖 1 所示:圖 11.2.2 管腳說明RST:復位輸入。當振蕩器復位器件時,要保持RST腳兩個機器周期的高電平時間。P0 口: P0 口為一個8 位漏級開路雙向I/O 口,每腳可吸收8TTL 門電流。當 P1 口的管腳第一次寫1 時,被定義為高阻輸入。P0 能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/ 地址的第八位。在FIASH 編程時, P0口作為原碼輸入口,當FIASH 進行校驗時,P0 輸出原碼,此時P0 外部必須被拉高。P1 口:P1 口是一個內部提供上拉電阻的8 位雙向 I/O 口, P1 口
7、緩沖器能接收輸出4TTL 門電流。 P1 口管腳寫入1 后,被內部上拉為高,可用作輸4入, P1 口被外部下拉為低電平時,將輸出電流,這是由于內部上拉的緣故。在 FLASH編程和校驗時,P1 口作為第八位地址接收。P2 口:P2 口為一個內部上拉電阻的8 位雙向 I/O 口,P2 口緩沖器可接收,輸出4 個 TTL 門電流,當P2 口被寫“ 1”時,其管腳被內部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2 口的管腳被外部拉低,將輸出電流。這是由于內部上拉的緣故。P2 口當用于外部程序存儲器或16 位地址外部數(shù)據(jù)存儲器進行存取時,P2 口輸出地址的高八位。在給出地址“ 1”時,它利用內部上拉
8、優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2 口輸出其特殊功能寄存器的內容。P2 口在 FLASH編程和校驗時接收高八位地址信號和控制信號。P3 口: P3 口管腳是8 個帶內部上拉電阻的雙向I/O 口,可接收輸出4個 TTL 門電流。當P3 口寫入“ 1”后,它們被內部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3 口將輸出電流(ILL )這是由于上拉的緣故。ALE/PROG:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE 端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6 。因此它
9、可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數(shù)據(jù)存儲器時,將跳過一個ALE 脈沖。如想禁止ALE 的輸出可在SFR8EH地址上置0。此時, ALE 只有在執(zhí)行MOVX,MOVC指令是 ALE 才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE 禁止,置位無效。PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次 PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的PSEN信號將不出現(xiàn)。EA/VPP:當 EA 保持低電平時,則在此期間外部程序存儲器( 0000H-FFFFH),不管是否有內部程序存儲器。注意加密方式1 時, EA
10、將內部鎖定為RESET;當 EA 端保持高電平時,此間內部程序存儲器。XTAL1 和 XTAL2:反向振蕩放大器的輸入及內部時鐘工作電路的輸入。5第二章智能交通燈的設計原理2.1 智能交通燈的設計框圖2.2 智能交通燈的設計方案及改進措施交通燈系統(tǒng)由四部分組成:車檢測電路,信號燈電路,時間顯示電路,緊急轉換開關。針對道路交通擁擠, 交叉路口經(jīng)常出現(xiàn)擁堵的情況利用單片機控制技術提出了軟件和硬件設計方案及兩點改進措施。1、根據(jù)各道路路口車流量的大小自動調節(jié)通行時間。2、考慮特殊車輛通行情況,設計緊急切換開關。AT89S51單片機有 2 計數(shù)器, 6 個中斷源,能滿足系統(tǒng)的設計要求。用其設計的交通燈
11、也滿足了要求,所以本文采用單片機設計交通燈。第三章智能交通燈電路設計根據(jù)設計任務和要求 , 可畫出該控制器的原理框圖,為確保十字路口的交通安全,往往都采用交通燈自動控制系統(tǒng)來控制交通信號。其中紅燈(R)亮,表示禁止通行;黃燈( Y)亮表示暫停;綠燈( G)亮表示允許通行。63.1 控制器的系統(tǒng)框圖如圖3 所示圖 33.2 智能交通燈控制系統(tǒng)電路圖智能交通燈電路圖如圖4 所示:圖 4交通燈系統(tǒng)由四部分組成:車檢測電路,信號燈電路,時間顯示電路,緊急轉換開關。73.3 工作原理綠燈的放行時間與車輛通過數(shù)量不成正比。比如說20 秒內每車道可以通過20 輛車, 40 秒內每車道卻可以通過 45 輛車。
12、因為這有一個起步的問題, 還有一個黃燈等待問題。 也就是說,綠燈放行時間越長, 單位時間通過車輛的數(shù)量就越多。我們來計算一下, 每車道通行 20 秒內可以通過 20 輛車,一個紅綠燈循環(huán)是40 秒(單交叉路口 ),加上每次狀態(tài)轉換的黃燈5 秒(一個循環(huán)要兩次轉換) ,即一個紅綠黃燈循環(huán)要50 秒,即 50 秒內通行的車輛為40 輛。通過一輛車的平均時間是 1.25 秒。如果每次車輛通行的時間改為40 秒, 40 秒內每車道可以通過45 輛,一個紅綠燈循環(huán)是 80 秒(單交叉路口 ),加上每次狀態(tài)轉換的黃燈 5 秒(一個循環(huán)要兩次轉換),即一個紅綠黃燈循環(huán)要 90 秒,即 90 秒內通行的車輛為
13、 90 輛。通過一輛車的平均時間只需 1 秒。顯然在車輛擁擠的情況下綠燈的通行時間越長,單位時間內通行的車輛越多, 可以有效緩解車輛擁堵問題。 我設定了綠燈通行時間的上限為 40 秒。在非擁擠時段綠燈的通行時間的下限為 20 秒,當交叉路口雙方車輛較少時通行時間設為 20 秒,這樣可以大大縮短車輛在紅燈面前的等待時間。當交叉路口雙方車輛較多時通行時間設為 40 秒。3.3.1 車檢測電路用來判斷各方向車輛狀況 , 比如: 20秒內可以通過的車輛為 20輛,當 20秒內南往北方向車輛通過車輛達不到 20輛時,判斷該方向為少車, 當20秒內北往南方向車輛通過車輛也達不到 20輛時,判斷該方向也為少
14、車,下一次通行仍為 20秒,當 20秒時間內南往北或北往南任意一個方向通過的車輛達 20輛時證明該狀態(tài)車輛較多,下一次該方向綠燈放行時間改為 40秒,當 40秒內通過的車輛數(shù)達 45輛時車輛判斷為擁擠, 下一次綠燈放行時間改仍為 40秒,當40秒車輛上通過車輛達不到 45輛時,判斷為少車,下次綠燈放行時間改為 20秒, 依此類推。綠燈下限時間為 20秒,上限值為 40秒,初始時間為 20秒。這樣檢測,某次可能不準確,但下次肯定能彌補回來,累積計算是很準確的,這就是人們常說的“模糊控制”。因為路上的車不可能突然增多, 塞車都有一個累積過程。 這樣控制可以把不斷增多的車輛一步一步消化, 雖然最后由
15、于每個路口的綠燈放行時間延長而使等候的時間變長,但比塞車等候的時間短得多。本系統(tǒng)的特點是成本低,控制準確。十字路口車輛通行順序如圖 5所示:8圖 5 十字路口車輛通行順序由于南往北, 北往南時間顯示相同, 所以只要一個方向多車, 下次時間就要加長東往西,西往東也一樣,顯示時間選擇如表1。表1 顯示時間選擇車輛情況本次該方下次該方向本次該方本次該向通行時通行時間向通行時方向通間間行時間南往北少車,北往南少20 秒20 秒40 秒20 秒車南往北少車,北往南多20 秒40 秒40 秒40 秒車南往北多車,北往南少20 秒40 秒40 秒40 秒車南往北多車,北往南多20 秒40 秒40 秒40 秒
16、車東往西少車,西往東少20 秒20 秒40 秒20 秒車東往西少車,西往東多20 秒40 秒40 秒40 秒車東往西多車,西往東少20 秒40 秒40 秒40 秒車東往西多車,西往東多20 秒40 秒40 秒40 秒車3.3.2 信號燈電路信號燈用來顯示車輛通行狀況,下面以一個十字路口為例, 說明一個交通燈的四種狀態(tài)見圖6。每個路口的信號的的轉換順序為:綠黃 紅綠燈表示允許通行, 黃燈表示禁止通行, 但已經(jīng)駛過安全線的車輛可以繼續(xù)通行,是綠燈過渡到紅燈提示燈。紅燈表示禁止通行。綠燈的最短時間為20 秒,最長時間為 40 秒,紅紅最短時間為25 秒,最長時間為45 秒,黃燈時間為 5 秒。9圖
17、6 交通信號燈運行狀態(tài)3.3.3 時間顯示電路在交通信號燈的正上方安裝一個可以顯示綠燈通行時間,紅燈等待時間的顯示電路,采用數(shù)碼管顯示電路是一種很好的方法。由于東往西方向和西往東方向顯示的時間相同, 南往北方向和北往南方向顯示的時間也相同,所以只需要考慮四位數(shù)碼管顯示電路, 其中東西方向兩位, 南北方向兩位, 兩位數(shù)碼管可以時間的時間為 0-99 秒完全可以滿足系統(tǒng)的要求,數(shù)碼管連接方法如圖7 所示。圖 7 數(shù)碼管連接方法下面我們用這種方法顯示交通燈的時間,南北方向要顯示20 秒,東西方向要顯示 25 秒,那么我們先給P0 口送 2 的共陰極碼即5BH,讓第一位 2 要顯示的10位碼 GND段
18、為低電平,其它三位的控制端都接高電平,那么第一位就顯示2,其它三位不亮。讓其顯示1MS后再給 P0 口送 0 的共陰極碼即 3FH,讓第二位要顯示 0 的位碼 GND段為低電平,其它三位的控制端都接高電平,那么第二位就顯示0,其它三位不亮。依此類推分別送完第一位 2,第二位 0,第三位 2,第四位 5,每一位點亮 1MS一個掃描周期為 4MS,一秒時間就要掃描 250 次其程序如下:MOV R6,#250;顯掃描次數(shù)LOOP:MOV P0,#5BH; 送 2 的共陰極碼CLR P2.0;第一位顯示 2ACALL D1MS 延;時 1MSSETB P2.0;滅第一位MOV P0,#3FH; 送
19、0 的共陰極碼CLR P2.1;第二位顯示 0ACALL D1MS 延;時 1MSSETB P2.1;滅第二位MOV P0,#5BH; 送 2 的共陰極碼CLR P2.2;第三位顯示 2ACALL D1MS 延;時 1MSSETB P2.2;滅第三位MOV P0,#6DH; 送 5 的共陰極碼CLR P2.3;第四位顯示 5ACALL D1MS 延;時 1MSSETB P2.3;滅第四位DJNZ R7,LOOP;不夠一秒,繼續(xù)掃描NEXTNUMBER;到一秒顯示下一個數(shù)D1MS: ;1MS延時程序STAT1:MOV R4,#2MOV R3,#250DJNZ R3,$DJNZ R4,STAT1R
20、ET3.3.4 緊急轉換開關電路一般情況下交通燈按照車流量大小合理分配通行時間, 按一定規(guī)律變化, 但考慮緊急車通行車況,設計緊急通行開關 , 下面簡述單片機的中斷原理。1、Mcs51 的中斷源8051 有 5 個中斷源,它們是兩個外中斷 INT0( P3.2)和 INT1(P3.3 )、兩個片內定時 / 計數(shù)器溢出中斷 TF0 和 TF1,一個是片內串行口中斷 TI 或 RI,這幾個中斷源由 TCON和 SCON兩個特殊功能寄存器進行控制 , 其中 5 個中斷源的程序11入口地址如表 2 所示:表 2 中斷源程序入口中斷源的服務程序入口地址中斷源入口地址外中斷 00003H定時 / 計數(shù)器
21、0000BH外中斷 10013H定時 / 計數(shù)器 0001BH串行口中斷0023H2、中斷的處理流程CPU響應中斷請求后,就立即轉入執(zhí)行中斷服務程序。不同的中斷源、不同的中斷要求可能有不同的中斷處理方法,但它們的處理流程一般都如下所述:1)現(xiàn)場保護和現(xiàn)場恢復:中斷是在執(zhí)行其它任務的過程中轉去執(zhí)行臨時的任務,為了在執(zhí)行完中斷服務程序后, 回頭執(zhí)行原先的程序時, 知道程序原來在何處打斷的, 各有關寄存器的內容如何, 就必須在轉入執(zhí)行中斷服務程序前, 將這些內容和狀態(tài)進行備份即保護現(xiàn)場。 中斷開始前需將有關寄存器的內容壓入堆棧進行保存, 以便在恢復原來程序時使用。 中斷服務程序完成后, 繼續(xù)執(zhí)行原先
22、的程序, 就需把保存的現(xiàn)場內容從堆棧中彈出,恢復積存器和存儲單元的原有內容,這就是現(xiàn)場恢復。 如果在執(zhí)行中斷服務時不是按上述方法進行現(xiàn)場保護和恢復現(xiàn)場, 就會是程序運行紊亂,單片機不能正常工作。2)中斷打開和中斷關閉:在中斷處理進行過程中, 可能又有新的中斷請求到來, 這里規(guī)定,現(xiàn)場保護和現(xiàn)場恢復的操作是不允許打擾的,否則保護和恢復的過程就可能使數(shù)據(jù)出錯,為此在進行現(xiàn)場保護和現(xiàn)場恢復的過程中, 必須關閉總中斷, 屏蔽其它所有的中斷,待這個操作完成后再打開總中斷,以便實現(xiàn)中斷嵌套。3)中斷服務程序:既然有中斷產(chǎn)生,就必然有其具體的需執(zhí)行的任務,中斷服務程序就是執(zhí)行中斷處理的具體內容, 一般以子程
23、序的形式出現(xiàn), 所有的中斷都要轉去執(zhí)行中斷服務程序,進行中斷服務。124)中斷返回:執(zhí)行完中斷服務程序后, 必然要返回,中斷返回就是被程序運行從中斷服務程序轉回到原工作程序上來。在MCS-51單片機中,中斷返回是通過一條專門的指令實現(xiàn)的,自然這條指令是中斷服務程序的最后一條指令。5) 交通燈中的中斷處理流程:(1)現(xiàn)場保護和現(xiàn)場恢復:有特殊車輛要通過時就要進行中斷,在中斷之前,先將交通燈中斷前情況保護好,當中斷執(zhí)行后再恢復現(xiàn)場,包括信號燈和時間顯示電路。(2)中斷打開和中斷關閉:為了使特殊車輛通行按一下打開中斷開關就可以打開中斷,關閉中斷開關就關閉中斷。(3)中斷服務程序:有中斷產(chǎn)生,就必然有
24、其具體的需執(zhí)行的任務,中斷服務程序就是執(zhí)行中斷處理的具體內容:即如果南北方向有特殊車輛要求通過, 南北方向轉換為綠燈,東西方向為紅燈; 如果東西方向有特殊車輛要求通過, 東西方向轉換為綠燈, 南北方向為紅燈。(4)中斷返回:執(zhí)行完中斷服務程序后,必然要返回,即回交通燈信號回到中斷前狀態(tài),顯示時間也和中斷前一樣。13第四章智能交通燈軟件系統(tǒng)設計4.1 智能交通燈的軟件設計流程圖智能交通燈的軟件設計流程圖如圖8 所示:圖 8 交通燈的軟件設計流程圖4.2 程序源代碼見附錄第五章智能交通燈方案的仿真PROTEUS嵌入式系統(tǒng)仿真軟件在設計時已經(jīng)注意到和單片機各種編譯程序的整合了,如它可以和Keil ,
25、Wave6000 等編譯模擬軟件結合使用。由于Wave6000使用方便,具備強大的軟件仿真和硬件仿真功能。把Proteus 和Wave6000結合起來調試硬件就方便多了,這里就是采用“Proteus+Wave6000”的仿真方法,具體步驟如下:141)首先運行 PROTEUS VSM的 ISIS ,選擇 SourceDefine Code GenerationTool菜單項,將出現(xiàn)如圖 8所示定義代碼生成工具對話框。圖 9 定義代碼生成工具對話框在 Tool 下拉列表框中選擇代碼生成工具, 在這一示例中, 電路中的微處理器為 8051系列單片機,因此選擇 ASEM51, 單擊 Browse按鈕
26、,選取 Wave6000的安裝路徑。單擊 OK按鈕,結束代碼生成工具的定義。選擇 SourceAdd/RemoveSource File菜單項,將出現(xiàn) Add/RemoveSourceCode Files 對話框,如圖 10所示:圖10添加 / 刪除源文件對話框2)在 Code Generation Tool選項區(qū),單擊下三角按鈕,選擇ASEM51工具單擊 New按鈕,將出現(xiàn)如圖 11所示對話框。15圖 11創(chuàng)建源代碼對話框選擇用 Wave6000創(chuàng)建好的 AA.ASM文件,即完成了文件的創(chuàng)建。就這樣當用Wave6000對AA.ASM文件進行更改時每一次運行PROTEUS VSM的 ISIS
27、對電路進行仿真時 Wave6000都會對 AA.ASM進行編譯, AA.HEX文件也會隨時更新。電路圖繪制完成后 , 再添加 AT89C51 的應用程序。將鼠標移至 AT89C51 上,單擊鼠標右鍵使之處于選中狀態(tài) , 在該器件上單擊左鍵 , 打開如圖 12所示的對話框。在 Program File 欄添加編譯好的十六進制格式的程序文件 AA.hex( 可以接受 3 種格式的文件 ) , 給AT89C51輸入晶振頻率,此處默認為 12MHZ, 單擊 OK 按鈕完成程序添加工作 ,下面就可以進行系統(tǒng)仿真了。 單擊主界面下方的按鈕開始系統(tǒng)仿真。 PROTEUSVSM所進行的是一種交互式仿真,在仿真
28、進行中可以對各控制按鈕、開關等進行操作,系統(tǒng)對輸入的響應會被真實的反映出來如圖13。圖 12 AT89C51添加程序文件16圖 13交通燈仿真界面17小結在畢業(yè)設計的整個過程中,我深切地體會到 : 實踐是理論運用的最好檢驗。畢業(yè)設計是對我們 3 年所學知識的一次綜合性測試和考驗, 無論是在動手能力方面還是理論知識的運用能力方面,都使得我有了很大的提高。經(jīng)過總結和分析,我意識到在設計程序之前,對所用單片機的內部結構有一個系統(tǒng)的了解, 知道該單片機內有哪些資源; 要有一個清晰的思路和一個完整的的軟件流程圖;在設計程序時,不能妄想一次就將整個程序設計好, 反復修改、不斷改進是程序設計的必經(jīng)之路; 要
29、養(yǎng)成注釋程序的好習慣, 一個程序的完美與否不僅僅是實現(xiàn)功能, 而應該讓人一看就能明白你的思路, 這樣也為資料的保存和交流提供了方便;在設計課程過程中遇到問題是很正常 , 但我們應該將每次遇到的問題記錄下來,并分析清楚,以免下次再碰到同樣的問題。 本次畢業(yè)設計為我的大學生活畫上了圓滿的句號,為我即將的工作和生活奠定了堅實的基礎。18致謝詞在整個畢業(yè)設計中, 我得到了學校電子實驗室的大力支持,為我提供了各種所需的儀器設備。 感謝學校為我們安排了本次畢業(yè)設計,讓我們的理論知識和實際操作經(jīng)驗更加緊密的結合了在一起;同時又拓展了我們的知識面。 同時十分感激夏老師對我的悉心指導和幫助,使我能夠順利的完成此
30、次畢業(yè)設計。此次畢業(yè)設計讓我從中受益匪淺,最后再次感謝老師對我的培養(yǎng)和教育!19參考文獻1 徐愛鈞 智能化測量控制儀表原理與設計 (第二版) M. 北京:北京航空航天大學出版社, 2004 年;2 吳金戌、沈慶陽、郭庭吉 8051 單片機實踐與應用 M. 北京:清華大學出版社, 2002 年;3 謝自美 電子線路設計實驗測試 (第三版) M. 武漢:華中科技大學出版社, 2006 年;4 謝維成、楊加國 主編 單片機原理與應用及 C51程序設計 M. 北京:清華大學出版社, 2006 年;5 楊立、鄧振杰、荊淑霞 微型計算機原理與接口技術 M. 中國鐵道出版社, 2006 年;6 黃智偉 全國
31、大學生電子設計競賽技能訓練 M. 北京:北京航空航天大學出版社, 2007 年7 高峰,單片微型計算機與接口技術 M. 北京:科學出版社, 2003;8 華成英、童詩白 主編,模擬電子技術基礎(第四版) M. 高等教育出版社, 2006 年 .9 黃海萍、陳用昌 編 微機原理與接口技術實驗指導 M. 北京:國防工業(yè)出版社 ,2004 年10 黃智偉: 凌陽單片機設計指導 ,北京: 北京航空航天大學出版社, 2007 年20附 錄附錄 A:智能交通燈控制程序:ORG 0000HA_BIT EQU 20H ; 用于存放南北十位數(shù)B_BIT EQU 21H ; 用于存放南北十位數(shù)C_BIT EQU
32、22H ; 用于存放東西十位數(shù)D_BIT EQU 23H ; 用于存放東西位數(shù)TEMP1 EQU 24H ;用于存放第一二南北狀態(tài)要顯示的時間TEMP2 EQU 25H ;用于存放第一二東西狀態(tài)要顯示的時間TEMP3 EQU 26H 用;于存放第三第四南北狀態(tài)要顯示的時間TEMP4 EQU 27H;用于存放第三第四南北狀態(tài)要顯示的時間LJMP MAINORG 0003H;外部中斷 0 入口LJMP INT0;跳轉到外部 0 中斷ORG 0013H;外部中斷 1 入口LJMP INT1;跳轉到外部 1 中斷INT0: MOV A,P1;外部 0 中斷PUSH ACCMOV A,P2 ;中斷保護P
33、USH ACCMOV P1,#0FFH; 清除先前狀態(tài)MOV P2,#0FFHCLR P1.0CLR P1.4;南北通行,東西禁止通行CLR P1.6CLR P2.3JNB P3.2 ,$ ;判斷是否還在中斷狀態(tài)POP ACCMOV P2,A;返回中斷前狀態(tài)POP ACCMOV P1,ACCRETI;中斷返回INT1:MOV A,P1 ; 外部 1 中斷PUSH ACC;中斷保護MOV A,P2PUSH ACCMOV P1,#0FFH ; 清除先前狀態(tài)MOV P2,#0FFHCLR P1.2CLR P2.1CLR P1.3;東西通行,南北禁止通行CLR P1.521JNB P3.3 ,$ ;判
34、斷是否還在中斷狀態(tài)POP ACCMOV P2,A; 返回中斷前狀態(tài)POP ACCMOV P1,ARETI;中斷返回MAIN:ORG 0100H;初始情況MOV P1,#0FFHMOV P2,#0FFH; 滅所有燈MOV TMOD,#55H 計;數(shù)方式方式 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 的計
35、數(shù)器初始值CLR TF0;清 TF0CLR TF1 ; 清 TF1MOV TH1 ,#0FFH ;送 20 秒時的初始值MOV TL1 ,#0FCH ;在些設計 20 秒 6 輛為多車MOV TH0 ,#0FFHMOV TL0 ,#0FCHLJMP TEMP20; 跳到 20 秒T40T: ; 南北通行要顯示的時間為 40 的計數(shù)器初始值 CLR TF0 ; 清 TF0CLR TF1 ; 清 TF1MOV TH1,#0FFH 送; 40 秒時的初始值MOV TL1 ,#0F8H ; 在些設計 40 秒 8 輛為多車MOV TH0 ,#0FFHMOV TL0 ,#0F8HLJMP TEMP40
36、;跳到 40 秒TEMP20:;TEMP1=20 情況SETB TR0;開始計數(shù)SETB TR1CLR P1.2CLR P2.1;南北通行,東西禁止通行CLR P1.3CLR P1.5MOV TEMP1,#20 ;南北要顯示的時間,MOV TEMP2,#25 東;西要顯示的時間22STLOP:ACALL DISPLAY1; 調用顯示DEC TEMP1;時間夠一秒顯示時間減1DEC TEMP2MOV A,TEMP1CJNE A,#0,NEXT ; 若顯示時間不為 0 保持現(xiàn)在狀態(tài) LJMP STAR2 ; 若顯示時間為 0 跳到第二狀態(tài)NEXT: LJMP STLOPSTAR2:;狀態(tài) 1SET
37、B P1.2CLR P1.1;南北黃燈,東西禁止通行SETB P1.3CLR P1.4MOV TEMP1,#05 ;南北要顯示的時間,MOV TEMP2,#05 東;西要顯示的時間,STLOP2:ACALL DISPLAY1; 調用顯示DEC TEMP1;時間夠一秒顯示時間減 1DEC TEMP2MOV A,TEMP1CJNE A,#0,NEXT2; 若顯示時間不為 0 保持現(xiàn)在狀態(tài)JB TF1 ,T40;判斷南北是否多車JB TF0 ,T40;判斷北南是否多車MOV TEMP1,#20; 少車下次顯示時間為20 秒LJMP STAR3;跳到狀態(tài) 3T40:MOV TEMP1,#40; 多車下
38、次顯示時間為40 秒LJMP STAR3;若顯示時間為 0 跳到第三狀態(tài)NEXT2:LJMP STLOP2TEMP40:;TEM=40程序SETB TR0 ;開始計數(shù)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 保持現(xiàn)在狀態(tài) LJMP STAR22 ;
39、 若顯示時間為 0 跳到第二狀態(tài) NEXT11: LJMP STLOP1123STAR22:;狀態(tài) 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 保持現(xiàn)在狀態(tài)JB TF1 ,T401;判斷是否多車JB TF0 ,T401MOV TEMP1,#20 ;少車下次顯示
40、時間為20 秒LJMP STAR3T401:MOV TEMP1,#40 ;多車下次顯示時間為40 秒LJMP STAR3;若顯示時間為 0 跳到第三狀態(tài)NEXT22:LJMP STLOP22STAR3:MOV A,26HCJNE A,#25,T40T1 ; 判斷時間,選初始值T20T1:;南北通行要顯示的時間為20 的計數(shù)器初始值CLR TF0;清溢出位CLR TF1MOV TH1 ,#0FFH ;給初值MOV TL1 ,#0FCHMOV TH0 ,#0FFHMOV TL0 ,#0FCHLJMP TEMP320T40T1: ; 南北通行要顯示的時間為 40 的計數(shù)器初始值 CLR TF0 ;C
41、LR TF1MOV TH1,#0FFH 給;初值MOV TL1 ,#0F8HMOV TH0 ,#0FFHMOV TL0 ,#0F8HLJMP TEMP340TEMP320:;狀態(tài)三SETB TR1;南北停止計數(shù)SETB TR0;東西開始計數(shù)SETB P1.1;東西通行,南北禁止通行CLR P1.0SETB P1.1CLR P1.024SETB P1.5CLR P1.6SETB P2.1CLR P2.3MOV TEMP3,#25 ;南北要顯示的時間,MOV TEMP4,#20 東;西要顯示的時間,STLOP33:ACALL DISPLAY ; 調用顯示DEC TEMP3;時間夠一秒顯示時間減1D
42、EC TEMP4MOV A,TEMP4CJNE A,#0,NEXT33 ; 若顯示時間不為 0 保持現(xiàn)在狀態(tài) LJMP STAR34 ; 若顯示時間為 0 跳到第四狀態(tài) NEXT33:LJMP STLOP33STAR34:;狀態(tài)四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 ;若顯示時
43、間不為0 保持現(xiàn)在狀態(tài)JB TF1 ,T402JB TF0 ,T402MOV TEMP3,#25LJMP START402:MOV TEMP3,#45LJMP STARNEXT34:LJMP STLOP34TEMP340 :SETB TR1;南北停止計數(shù)SETB TR0;東西開始計數(shù)SETB P1.1;東西通行,南北禁止通行CLR P1.0SETB P1.1CLR P1.0SETB P1.5CLR P1.6SETB P2.1CLR P2.325MOV TEMP3,#45 ; 南北要顯示的時間,MOV TEMP4,#40 ;東西要顯示的時間,STLOP43:ACALL DISPLAY ; 調用顯示DEC TEMP3;時間夠一
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 農村合作澆地合同范本
- 商品房屋認購合同范本
- 多媒體在小學語文識字教學中的運用
- 初中信息技術教學中如何開展網(wǎng)絡道德培育
- 商超 購銷合同范本
- 吊車租賃合同范本下
- 區(qū)間合同范本
- 船舶運動狀態(tài)監(jiān)測與短期預報技術的研究與實踐
- 上傳合同范本寫好
- 加盟做生意合同范本
- 2024全國各省高考詩歌鑒賞真題及解析
- 《臨床科研思維》課件
- GA/T 761-2024停車庫(場)安全管理系統(tǒng)技術要求
- 大學生創(chuàng)新創(chuàng)業(yè)基礎(創(chuàng)新創(chuàng)業(yè)課程)完整全套教學課件
- 人教版小學數(shù)學四年級下冊第一單元測試卷附答案(共9套)
- 廣西版三年級美術下冊全冊教案
- 2024年青島酒店管理職業(yè)技術學院高職單招(英語/數(shù)學/語文)筆試歷年參考題庫含答案解析
- X射線衍射課件(XRD)
- 部編版四年級道德與法治下冊第3課《當沖突發(fā)生》優(yōu)秀課件(含視頻)
- 家用和類似用途空調器安裝規(guī)范
- 游船安全生產(chǎn)事故調查處理及責任追究制度
評論
0/150
提交評論