畢業(yè)設(shè)計(論文)基于單片機的交通燈模擬控制設(shè)計_第1頁
畢業(yè)設(shè)計(論文)基于單片機的交通燈模擬控制設(shè)計_第2頁
畢業(yè)設(shè)計(論文)基于單片機的交通燈模擬控制設(shè)計_第3頁
畢業(yè)設(shè)計(論文)基于單片機的交通燈模擬控制設(shè)計_第4頁
畢業(yè)設(shè)計(論文)基于單片機的交通燈模擬控制設(shè)計_第5頁
已閱讀5頁,還剩37頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、shandong 畢業(yè)設(shè)計說明書 基于單片機的交通燈模擬控制設(shè)計基于單片機的交通燈模擬控制設(shè)計 學(xué) 院: 理學(xué)院 專 業(yè): 光信息科學(xué)與技術(shù) 學(xué)生姓名: 學(xué) 號: 指導(dǎo)教師: 2012 年 6 月 摘要摘要 現(xiàn)代交通中交通燈作為一個組成部分是非常重要的,好的交通燈設(shè)計系統(tǒng) 對城市有至關(guān)重要的影響,它可大大提升城市交通運輸效率,降低事故發(fā)生率。 該設(shè)計的控制系統(tǒng)我選用單片機,原因是考慮到了單片機的通用性和廉價性, 在此基礎(chǔ)上再擴展設(shè)計基本的外圍電路,利用 c 語言編寫程序代碼,然后利用 keil 生成可用文件,再利用 proteus 進行仿真設(shè)計。目前存在很多單獨功能的 設(shè)計,所以我的工作重點是

2、將各個功能程序的有機結(jié)合及各功能電路的整體連 接使這些獨自的設(shè)計能整合在一起并正常運行,仿真成功后即可進行實物設(shè)計。 本系統(tǒng)除了可實現(xiàn)最基本的交通燈功能以外,還設(shè)計了高低峰分時段控制方案 從而可應(yīng)對不同時段的不同交通狀況,城市的交通車流量往往能夠在早晚時段 達到最大,分時控制對于提高城市的交通效率有非常重要的作用。 關(guān)鍵詞:關(guān)鍵詞: 單片機;交通燈;模擬控制;倒計時 abstract traffic lights as an integral part of modern transportation is very important, a good traffic light design

3、 system has a crucial impact on the city ,it can greatly enhance the efficiency of urban transport and can reduce the accident rate. i chose to use the microcontroller as the control system in this design for taking into account the versatility and affordability of the microcontroller. on this basis

4、, we expanded to design a basic peripheral circuits, using c language code and then use keil to generated available files, using the proteus to make simulation design. there are many individual features of the design currently, so my focus is to combine various functional program and connect each fu

5、nctional circuit together. only on this way they could run well. if the simulation is successfully made, we can make a physical design. in addition to basic traffic lights, we also designed the control program of high and low peak time periods in order to respond to different periods of different tr

6、affic conditions, the citys traffic often reaches the maximum in the morning and evening hours, time-sharing control for improving the transport efficiency of the city has a very important role. keyword: microcontroller; traffic lights; analog control; countdown 目錄目錄 摘要摘要.i i abstractabstract.iiii 目

7、錄目錄.iiiiii 第一章第一章 概述概述.1 1 1.1 課題的目的意義.1 1.2 國內(nèi)外研制狀況.1 1.3 任務(wù)要求.2 第二章第二章 設(shè)計方案分類及選擇設(shè)計方案分類及選擇.3 3 2.1 基于 cpld 法交通燈設(shè)計.3 2.2 基于 plc 法交通燈設(shè)計.3 2.3 基于單片法交通設(shè)計.4 2.4 中規(guī)模數(shù)字集成電路法.4 第三章第三章 硬件系統(tǒng)設(shè)計硬件系統(tǒng)設(shè)計.7 7 3.1 設(shè)計思路及硬件框圖.7 3.2 單片機最小系統(tǒng).8 3.3 倒計時顯示電路.11 3.4 led 指示電路 .12 3.5 強通強斷電路.14 3.6 4.5v 穩(wěn)壓工作電源 .14 第四章第四章 軟件設(shè)

8、計軟件設(shè)計.1 15 5 4.1 主程序流程圖.15 4.2 子程序框圖(中斷程序).16 第五章第五章 系統(tǒng)仿真與調(diào)試系統(tǒng)仿真與調(diào)試.1 17 7 5.1 proteus系統(tǒng)仿真.17 5.2 仿真結(jié)果.18 5.3 測試及結(jié)果分析.19 第六章第六章 總結(jié)總結(jié).2 20 0 致謝致謝.2121 參考文獻參考文獻.2222 附錄附錄.2424 第一章第一章 概述概述 1.11.1 課題的目的意義課題的目的意義 交通燈控制系統(tǒng)的出現(xiàn)是人類發(fā)展歷史上的一次重大進步,對人類的聚居 生活,產(chǎn)生了重要而深遠的影響,它使交通得以有效管制。對于交通流量的疏 導(dǎo),道路通行能力的提升,交通事故的減少具有顯著效

9、果。交通燈主要采用超 高亮度紅、綠、黃色 led 燈, 這因為采用 led 信號燈既可靠性高又節(jié)能,所 以在全國范圍內(nèi),它使得交通信號燈正在得以快速更替,也因此市場需求量很 大,具有很好的市場機會。 目前我國經(jīng)濟迅速發(fā)展,汽車數(shù)量也迅速上增,城市道路日漸擁擠,交通 擁塞已發(fā)展成為一個國際性的問題。在這種境況下,當(dāng)前的主要任務(wù)便是能夠 開發(fā)出真正適合我國自身特點的智能信號燈控制系統(tǒng)。交通控制工程的重要研 究課題之一便是對交叉口實行科學(xué)的管理與控制,這是保障交叉口的交通安全 和充分發(fā)揮交叉口良好通行能力的重要措施,是解決城市交通運輸問題的最有 效途徑。所以,設(shè)計和完善我國現(xiàn)有的交通燈控制系統(tǒng)已成為

10、當(dāng)務(wù)之急。 1.21.2 國內(nèi)外研制狀況國內(nèi)外研制狀況 目前交通燈的設(shè)計方案有很多。有應(yīng)用 cpld 設(shè)計實現(xiàn)交通信號燈控制器 方法、有應(yīng)用 plc 實現(xiàn)對交通燈控制系統(tǒng)的設(shè)計、有應(yīng)用單片機實現(xiàn)對交通信 號燈設(shè)計的方法。目前,國內(nèi)的交通燈設(shè)計一般是在十字路處的醒目位置用紅、 綠、黃 3 個三種顏色的指示燈,再加上一個顯示倒計時的計時器模塊來控制車 行。對于一般情況下的行車安全,車輛分流具有重大作用,但根據(jù)實際行車過 程中出現(xiàn)的情況,還存在以下缺點: (1)兩車道的車輛輪流放行時間不應(yīng)該或不應(yīng)一直相同,在十字路口,經(jīng)常 在某些時刻一個車道車輛較多設(shè)為主干道,放行時間應(yīng)該長些;另一車道車輛 較少為

11、副干道,放行時間應(yīng)該短些。 (2)兩條干道的紅綠時間不能隨時間的改變而修改。 針對這些問題,國內(nèi)外經(jīng)長時間的課題研究設(shè)計發(fā)展了智能交通燈,并且國 外智能交通燈的發(fā)展已相當(dāng)成熟。 圖1-1 交通燈示意圖 1.31.3 任務(wù)要求任務(wù)要求 目前隨著單片機技術(shù)的飛速發(fā)展,目前廣泛采用的方法是利用單片機技術(shù) 對交通燈進行智能化管理。本設(shè)計就是采用 at89s52 單片機以及其它芯片和外 圍功能電路來設(shè)計交通燈控制器,實現(xiàn)了根據(jù)實際車流量分時段控制紅、綠燈 點亮的功能,以及倒計時現(xiàn)實的功能。具體功能說明如下: (1): 基本功能(主功能)。選用 at89s52 單片機來實現(xiàn),交通信號燈控 制器件的外部輸出

12、信號為東西兩個方向通行紅、黃、綠燈共 6 個驅(qū)動信號;編 程使得十字路口的紅、綠燈交替點亮;在兩個方向通行交換時,黃燈提醒。用 八段數(shù)碼管器件作為時間顯示。 (2): 緊急狀況。在發(fā)生突發(fā)事件的時候啟動緊急狀態(tài),全部紅燈亮。這 種狀態(tài)主要適用于例如救護車,軍車執(zhí)行任務(wù)時候使用。 (3): 分時段控制,基于一天中存在有得時間端南北和東西車流量差別較 大,放行時間應(yīng)有區(qū)別,所以設(shè)計控制電路。 第二章第二章 設(shè)計方案分類及選擇設(shè)計方案分類及選擇 2.12.1 基于基于 cpldcpld 法交通燈設(shè)計法交通燈設(shè)計 基于 cpld 芯片進行十字路口的交通燈的控制,是用 cpld 作為交通燈控 制系統(tǒng)的主

13、控芯片,采用 vhdl 語言編寫控制程序。cpld 具有的可重復(fù)編程和 在動態(tài)系統(tǒng)的重構(gòu)特性,對于數(shù)字系統(tǒng)設(shè)計的靈活性和通用性具有重大的提高, 但它的處理復(fù)雜,造價較高。 紅、綠、黃燈 主控制器 定時計數(shù)器 置數(shù)器譯碼器顯示器 特殊情況 紅、綠、黃燈 圖2-1 cpld法交通燈控制系統(tǒng) 2.22.2 基于基于 plc 法交通燈設(shè)計法交通燈設(shè)計 plc 可編程序控制器是以微處理器為基礎(chǔ),綜合了計算機技術(shù),自動控制 技術(shù)和通訊技術(shù)發(fā)展而來的,具有結(jié)構(gòu)簡單、編程方便、可靠性高等優(yōu)點。但 造價較高,適用于復(fù)雜大面積網(wǎng)絡(luò)應(yīng)用。 輸 入 接 口 部 件 中央處理單元 cpu 板 電源部件 輸 出 接 口

14、部 件 現(xiàn)場信號 受控單元 圖2-2 plc法交通燈控制系統(tǒng) 2.32.3 基于單片法交通設(shè)計基于單片法交通設(shè)計 近年來隨著科技的飛速發(fā)展,單片機的應(yīng)用正不斷深入,同時帶動傳統(tǒng)檢 測控制技術(shù)日益更新,在實時檢測和自動控制的單片機應(yīng)用系統(tǒng)中它往往作為 核心部件來使用,利用單片機設(shè)計交通燈具有設(shè)計周期短、可靠性強、操作簡 單、維護方便、擴展功能強等優(yōu)點。 急停按鍵 重啟按鍵 at89s52 單片機 鎖存電路 指 示 燈 電 路 倒 計 時 顯 示 電 路 圖2-3 單片機法交通燈系統(tǒng) 2.42.4 中規(guī)模數(shù)字集成電路法中規(guī)模數(shù)字集成電路法 利用中規(guī)模數(shù)字集成電路實現(xiàn):交通燈定時控制器的原理框圖:由

15、狀態(tài)控 制器、狀態(tài)譯碼器、減法計數(shù)器、秒信號發(fā)生器等組成。 信號發(fā)生器 主干道信號燈 狀態(tài)譯碼器 狀態(tài)控制器 譯碼,顯示 減法計數(shù)器 置數(shù)控制 支干道信號燈 紅燈閃爍控 制 圖 2-4 中規(guī)模數(shù)字集成電路 狀態(tài)控制器主要用于記錄十字路口交通燈的工作狀態(tài),通過狀態(tài)譯碼器分 別點亮相應(yīng)狀態(tài)的信號燈。秒信號發(fā)生器產(chǎn)生整個定時系統(tǒng)的時基脈沖,通過 減法計數(shù)器實現(xiàn)減計數(shù),控制每一種工作狀態(tài)的持續(xù)時間。減法計數(shù)器的回零 脈沖使狀態(tài)控制器完成狀態(tài)轉(zhuǎn)換,同時狀態(tài)譯碼器根據(jù)系統(tǒng)下一個工作狀態(tài)決 定減法計數(shù)器下一次減計數(shù)的初始值。減法計數(shù)器的狀態(tài)由 bcd 譯碼器譯碼、 數(shù)碼管顯示。在黃燈亮期間,狀態(tài)譯碼器將秒脈

16、沖引入紅燈閃爍控制電路,紅 燈閃爍。 方案選擇及設(shè)計: 本設(shè)計在實現(xiàn)相應(yīng)功能的時候主要是考慮到現(xiàn)有的條件及應(yīng)用范圍,采用 高度成熟的 at89s52 單片機作為 cpu 的解決方案,同時采用用性能優(yōu)良的 led 燈和雙位數(shù)碼管作為顯示模塊,軟件則使用了移植性好的 c 語言進行編程。 從現(xiàn)實功能需求上來看,已經(jīng)可以滿足實際需要。單片機作為已經(jīng)發(fā)展了 30 多 年的成熟產(chǎn)品,雖然很多優(yōu)勢正在逐漸弱化,讓位于更加先進的芯片系統(tǒng)。但 是它作為一個成熟的設(shè)計方案還是在很多領(lǐng)域能夠發(fā)揮重大作用的。因此我選 擇方案四作為設(shè)計方向,并做出了如下工作。 現(xiàn)規(guī)定如下狀態(tài): (1):基本狀態(tài)。s1:南北方向車輛通行

17、,東西方向、南左轉(zhuǎn)到西、北左 轉(zhuǎn)到東、西左轉(zhuǎn)北、東左轉(zhuǎn)南禁行,東西方向人行道通行、南北方向人行道禁 行。 s2:東西方向車輛通行,南北方向、南左轉(zhuǎn)到西、北左轉(zhuǎn)到東、西左轉(zhuǎn)北、 東左轉(zhuǎn)南禁行,南北方向人行道通行、東西方向人行道禁行。 s3:南左轉(zhuǎn)西、北左轉(zhuǎn)東車輛通行,南北方向、東西方向、西左轉(zhuǎn)北、東 左轉(zhuǎn)南車輛禁行,南北方向、東西方向人行道禁行。 s4:西左轉(zhuǎn)北、東左轉(zhuǎn)南車輛通行,南北方向、東西方向、南左轉(zhuǎn)西、北 左轉(zhuǎn)東車輛禁行,南北方向、東西方向人行道禁行。 (2):故障或緊急狀態(tài)。分別用黃、紅、綠色燈的不同組合來表示。設(shè)計 有緊急車輛通過時,全部道強制全紅燈,緊急事件狀態(tài)。 (3):高低峰分

18、時管理機制:本設(shè)計為提升交通燈系統(tǒng)效率,設(shè)置了高低峰分 時管理機制。高低峰分時定義如下: 高峰時段:8 點到 10 點,一般為上班上學(xué)出行的高峰期,18 點到 20 點, 一般為下班放學(xué)出行高峰期,此時主干道車流量高于次干道的車流量; 低峰時段:除高峰時段的其他時段。 在高峰時段,采取增加主干道綠燈通行時間,減少次干道綠燈通行時間以 最大限度的通過車輛。 在低峰時段,采取減少主干道綠燈通行時間,增加次干道綠燈通行時間以 平衡通過車輛。 高低峰時段狀態(tài)如表 2-1 所示。 表2-1 高低峰時段狀態(tài)表 s1s2s3s4 低峰時 段 高峰時 段 南北向車行道綠 燈時長 20s 南北向車行道綠 燈時長

19、 25s 東西向車行道綠 燈時長 15s 東西向車行道綠 燈時長 10s 南左轉(zhuǎn)西,北轉(zhuǎn) 東綠燈時長 10s 南左轉(zhuǎn)西,北轉(zhuǎn) 東綠燈時長 10s 東左轉(zhuǎn)南,西 左轉(zhuǎn)北綠燈時 長 10s 東左轉(zhuǎn)南,西 左轉(zhuǎn)北綠燈時 長 10s 在高低峰兩個時段中,全部車行道綠燈的總和都為 55 秒,即相位都為 55s。 狀態(tài)轉(zhuǎn)換圖如圖 2-5 所示。 圖2-5 狀態(tài)轉(zhuǎn)化圖 第三章第三章 硬件系統(tǒng)設(shè)計硬件系統(tǒng)設(shè)計 3.13.1 設(shè)計思路及硬件框圖設(shè)計思路及硬件框圖 本設(shè)計采用了兩組紅、綠、黃三個不同的發(fā)光二極管分別代表東西和南北 兩個方向的交通指示燈,運用 at89s52 單片機的 p2 口驅(qū)動來控制兩組發(fā)光二

20、極管的亮與滅,在軟件程序中對 p2 口進行相應(yīng)設(shè)置就可實現(xiàn)控制東西或南北方 向的指示狀態(tài),本設(shè)計對十字路口狀態(tài)預(yù)分為兩種,一種是正常狀態(tài),另一種 是故障或緊急狀態(tài),分別用黃、紅、綠色燈的不同組合來表示。倒計時顯示電 路通過設(shè)置單片機的定時器 t0 口的初始值來產(chǎn)生一秒鐘的延時,然后利用循環(huán) 的方式產(chǎn)生通行時間和剩余等待時間,控制交通信號燈來控制路口的通行時間; 軟件程序中采用外部中斷請求方式來實現(xiàn)急車強通功能;倒計時顯示電路采用 串行口驅(qū)動顯示,利用八段數(shù)碼管器件產(chǎn)生時間顯示;為了充分利用單片機控 制靈活的優(yōu)點,發(fā)揮它的優(yōu)勢功能,可根據(jù)不同時段通行量來調(diào)節(jié)通行時間, 從而提高通行效率,此外還設(shè)

21、置了急車強通功能。 選用 at89s52 單片機來實現(xiàn)基本功能,交通信號燈的控制器件的外部輸出 信號為東西和南北四個方向通行紅、黃、綠燈共 6 個驅(qū)動信號;編程使相應(yīng)位 置實現(xiàn)信號燈的亮/滅控制,使得十字路口的紅、綠燈按需交替點亮;當(dāng)兩個通 行方向交換時,黃燈閃爍提醒。設(shè)當(dāng)有緊急車輛通過時,強制所有紅燈臨時行 點亮,待緊急車輛通過后恢復(fù)。我們可以通過軟件中斷控制來完成此設(shè)計,定 義單片機的 int0 和 int1 端口的中斷為下降沿觸發(fā),編寫對應(yīng)中斷向量子程序 和中斷服務(wù)程序,完成該中斷處理。 設(shè)計中這些功能主要是依賴在硬件電路基礎(chǔ)上結(jié)合軟件程序來實現(xiàn),是要 靠程序的設(shè)計來完成預(yù)定功能的設(shè)定。

22、在程序設(shè)計中涉及的倒計時精確定時, 應(yīng)該用計數(shù)器加以控制,這樣會使硬件實現(xiàn)復(fù)雜度增加。但考慮到該設(shè)計對時 間精確度要求不高,所以可采用軟件延時的方法來實現(xiàn),這將大大簡化電路。 首先計算出程序單步執(zhí)行的時間,然后設(shè)置循環(huán)參數(shù)從而完成程序定時控制。 整個設(shè)計以 at89s52 單片機為核心,由 led 指示燈電路、數(shù)碼管顯示電 路、晶振電路、復(fù)位電路等組成。如圖 3-1 圖3-1 交通燈控制方框圖 3.23.2 單片機最小系統(tǒng)單片機最小系統(tǒng) 單片機是由運算器、控制器、存儲器、輸入設(shè)備以及輸出設(shè)備工五個基部 分組成的。單片機是把包括運算器、控制器、少量的存儲器、最基本的輸入輸 出口電路、串行口電路、

23、中斷和定時電路等都集成在一個尺寸有限的芯片上。 單片機微型計算機是微型計算機的一個重要分支,也是頗具生命力的機種。單 片機微型計算機簡稱單片機,特別適用于控制領(lǐng)域,故又稱為微控制器。 通常,單片機由單塊集成電路芯片構(gòu)成,內(nèi)部包含有計算機的基本功能部 件:中央處理器、存儲器和 i/o 接口電路等。因此,單片機只需要和適合的軟 件及外部設(shè)備相結(jié)合, 一個單片機控制系統(tǒng)。 單片機經(jīng)過 1、2、3 代的發(fā)展, 目前單片機正朝著高性能和多品種方向發(fā)展,它們的 cpu 功能在增強,內(nèi)部資 源在增多,引腳的多功能化,以及低電壓低功耗。本設(shè)計應(yīng)用 at89s52 單片機, 下面具體說明。 at89s52 引腳

24、圖如 3-2-1 所示: p1.0 1 p1.1 2 p1.2 3 p1.3 4 p1.4 5 p1.5 6 p1.6 7 p1.7 8 rst 9 p3.0 10 p3.1 11 p3.2 12 p3.3 13 p3.4 14 p3.5 15 p3.6 16 p3.7 17 xtal1 18 xtal2 19 gnd 20 p2.2 23 p2.3 24 p2.4 25 p2.5 26 p2.6 27 p2.7 28 psen 29 ale 30 ea 31 p0.7 32 p0.6 33 p0.5 34 p0.4 35 p0.3 36 p0.2 37 p0.1 38 p0.0 39 vcc

25、 40 p2.0 21 p2.1 22 at89c51 at89c51 圖3-2 單片機管腳結(jié)構(gòu)圖 按鍵電路 復(fù)位電路 晶振電路 at89s52 單片機 倒計時電路 led 信號燈 at89s52是一種低功耗、高性能cmos、 8位微控制器,具有8k在系統(tǒng)可 編程 flash存儲器。使用atmel公司高密度非 易失性存儲器技術(shù)制造,與工業(yè) 80c51 產(chǎn)品指令和引腳完 全兼容。片上flash允許程序存儲器在系統(tǒng)可編程, 亦適于 常規(guī)編程器。在單芯片上,擁有靈巧的8位cpu和在系統(tǒng)可編程flash, 使得 at89s52為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方 案,at89s52 具有

26、以下標準功能: 8k 字節(jié)flash,256 字節(jié)ram,32位i/o口線,看門狗定時器,2個數(shù)據(jù)指 針,三個16位定時器/計數(shù)器,一個6向量2級中斷結(jié)構(gòu),全雙工串行口,片內(nèi)晶 振及時鐘電路。另外,at89s52 可降至0hz靜態(tài)邏輯操作,支持2種軟件可選擇 節(jié)電模式。空閑模式下,cpu停止工作,允許ram、定時器/計數(shù)器、串口、 中斷繼續(xù)工作。掉電保護方式下,ram內(nèi)容被保存,振蕩器被凍結(jié),單片機一 切工作停止,直到下一個中斷或硬件復(fù)位為止。 各管腳功能介紹: vcc: : 電源 gnd: : 地 p0口:口:p0口是一個8位漏極開路的雙向i/o口。作為輸出口,每位能驅(qū)動8個 ttl 邏輯電

27、平。對p0端口寫“1”時,引腳用作高阻抗輸入。 當(dāng)訪問外部程序 和數(shù)據(jù)存儲器時,p0口也被作為低8位地址/數(shù)據(jù)復(fù)用。在這種模式下,p0具有 內(nèi)部上拉電阻。在 flash 編程時,p0口也用來接收指令字節(jié);在程序校驗時, 輸出指令字節(jié)。程序校驗時,需要外部上拉電阻。 p1口口:p1 口是一個具有內(nèi)部上拉電阻的8位雙向i/o口,p1 輸出緩沖器能 驅(qū)動 4 個ttl邏輯電平。對 p1 端口寫“1”時,內(nèi)部上拉電阻把端口拉高, 此時可以作為輸入 口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻 的原因,將輸出電流(iil) 。此外,p1.0和 p1.2 分別作定時器/計數(shù)器2的外部 計數(shù)輸入(p

28、1.0/t2)和時器/計數(shù)器2的觸發(fā)輸入(p1.1/t2ex) ,具體如下表所 示。在 flash 編程和校驗時,p1口接收低8位地址字節(jié)。 p2口:口:p2 口是一個具有內(nèi)部上拉電阻的8位雙向i/o口,p2輸出緩沖器能驅(qū) 動4個ttl邏輯電平。對p2端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時可 以作為輸入 口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原 因,將輸出電流(iil) 。 在訪問外部程序存儲器或用 16 位地址讀取外部數(shù)據(jù) 存儲器(例如執(zhí)行 movx dptr)時,p2 口送出高八位地址。在這種應(yīng)用 中,p2 口使用很強的內(nèi)部上拉發(fā)送 1。在使用8位地址(如 movx

29、ri)訪 問外部數(shù)據(jù)存儲器時,p2 口輸出 p2 鎖存器的內(nèi)容。在flash編程和校驗時,p2 口也接收高8位地址字節(jié)和一些控制信號。 p3 口:口:p3口是一個具有內(nèi)部上拉電阻的8位雙向i/o口,p2輸出緩沖器能驅(qū) 動 4 個ttl邏輯電平。對p3端口寫“1”時,內(nèi)部上拉電阻把端口拉高,此時 可以作為輸入口使用。作為輸入使用時,被外部拉低的引腳由于內(nèi)部電阻的原 因,將輸出電流(iil) 。 p3 口亦作為 at89s52 特殊功能(第二功能)使 用。 rst:復(fù)位輸入。晶振工作時,rst腳持續(xù)2個機器周期高電平將使單片 機復(fù)位??撮T 狗計時完成后,rst腳輸出96個晶振周期的高電平。特殊寄存

30、 器 auxr(地址 8eh)上的disrto位可以使此功能無效。disrto默認狀態(tài) 下,復(fù)位高電平有效。 ale/prog:地址鎖存控制信號(ale)是訪問外部程序存儲器時,鎖存 低8位地址 的輸出脈沖。在 flash 編程時,此引腳(prog)也用作編程輸入脈 沖。在一般情況下,ale 以晶振六分之一的固定頻率輸出脈沖,可用來作為外 部定時器或 時鐘使用。然而,特別強調(diào),在每次訪問外部數(shù)據(jù)存儲器時,ale 脈沖將會跳過。 如果需要,通過將地址為 8eh 的sfr的第0位置 “1” ,ale 操作將無效。這一位置“1” ,ale僅在執(zhí)行movx或movc指令時有效。否 則,ale將被微弱拉

31、高。這個 ale 使 能標志位(地址為 8eh 的 sfr 的第 0 位)的設(shè)置對微控制器處于外部執(zhí)行模式下無效。 psen: :外部程序存儲器選通信號(psen)是外部程序存儲器選通信號。 當(dāng) at89s52 從外部程序存儲器執(zhí)行外部代碼時,psen 在每個機器周期被激 活兩次,而在訪問外部數(shù)據(jù)存儲器時,psen將不被激活。 ea/vpp: :訪問外部程序存儲器控制信號。為使能從0000h 到ffffh 的外 部程序存儲器讀取指令,ea必須接 gnd。為了執(zhí)行內(nèi)部程序指令,ea應(yīng)該接 vcc。 在 flash 編程期間,ea也接12v電壓。 xtal1: :振蕩器反相放大器和內(nèi)部時鐘發(fā)生電路

32、的輸入端。 xtal2: :振蕩器反相放大器的輸出端。 晶振模塊: 圖3-3 晶振電路 選用 2 個 30pf 電容及 12khz 晶振組成,晶振在電路中的作用主要是提供 頻率穩(wěn)定的時鐘信號,對控制電路來說極其重要。 復(fù)位模塊: 圖3-4 復(fù)位電路 由一個 10k 電阻一個 1k 電阻,10uf 電容及一個按鍵開關(guān)組成,主要作用 是復(fù)位,讓系統(tǒng)恢復(fù)到初始狀態(tài)。 3.33.3 倒計時顯示電路倒計時顯示電路 倒計時顯示電路是用來顯示東西和南北方向上紅綠燈持續(xù)的剩余時間的, 這樣可使電路顯示具有清晰直觀的特點,比較有實用價值。 利用 at89s52 單片機內(nèi)部的串行口 rxd 和 txd 與外部電路

33、來實現(xiàn)串行通 信,其數(shù)據(jù)由 rxd 端口串行輸出或輸入;而同步移位時鐘由 txd 端口串行輸 出,在同步脈沖的作用下,實現(xiàn)由串行到并行的數(shù)據(jù)通信功能,我們利用它來 控制倒計時電路。其電路圖如圖 3-5 所示: 圖 3-5 倒計時顯示電路 數(shù)碼管顯示塊是由發(fā)光二極管顯示字段的顯示器件,在單片機應(yīng)用系統(tǒng)中 通常使用的是七段 led 數(shù)碼管。這種顯示塊有共陽極與共陰極兩種。 共陽極 led 顯示塊的發(fā)光二極管陽極并接。當(dāng)某個發(fā)光二極管的陽極為高 電平時,發(fā)光二極管點亮;而共陰極 led 顯示塊的發(fā)光二極管陰極共地。如 圖 3-6 所示: 圖 3-6 led 陰極與陽極的驅(qū)動電路 以共陰極的七段顯示器

34、為例,若想要顯示數(shù)字 7 時,就要使數(shù)碼管的 a、b 與 c 端點亮,用 74hc573 鎖存器來控制數(shù)碼管,在電路結(jié)構(gòu)上我們會把共同點 接到電源上,標示 a、b 與 c 的地方接上限流電阻,便就可以顯示數(shù)字 7。如果 是單個的數(shù)碼管,七段顯示器是直接點亮的,亦即用 8 位去推動一個七段顯示 器。如果有多位數(shù)字要顯示時,可以用掃描的方式顯示,以節(jié)省控制腳位。 七段顯示塊與單片機接口非常容易。只要將一個 8 位并行輸出門與顯示塊 的發(fā)光二極管引腳相連即可。8 位并行輸出門輸出不同的字節(jié)數(shù)據(jù)即可獲得不 同的數(shù)字或字符,其段形碼如表 2 所示。通常將控制發(fā)光二極管的 8 位字節(jié)數(shù) 據(jù)稱為段形碼。 表

35、 3-1 軟件控制端口指令 字符段形碼軟件設(shè)計 段形編碼 字符段形碼軟件設(shè)計 段形編碼 0 3fh 80h 5 79h 11h 1 12h e3h 6 7dh 10h 2 4fh 48h 7 13h 0ch 3 5bh 41h 8 7fh 00h 4 72h 23h 9 73h 03h 軟件程序中用以下幾條指令實現(xiàn)啟動定時器: mov tmod,#01h clr tf0 mov th0,#3ch setb tr0 mov tl0,#0b0h 3.43.4 ledled 指示電路指示電路 本設(shè)計中信號指示系統(tǒng)采用 led 燈指示電路,用紅、綠、黃兩組 led 燈 分分別顯示控制東西和南北方向的通

36、行指示情況。指示電路用共陽極方式連接, 將所有 led 燈正極連接在一起并與電源相連接,故而當(dāng) at89s52 的 p2 口輸出 為低電平才有效。指示電路與單片機的聯(lián)接時采用并行輸出方式,將所有位的 段選線并聯(lián)在一起,由 p2 口的 6 位 i/o 口控制。電路圖如圖 3-7 所示 在交通中,當(dāng)東西方向綠燈亮的時候,南北方向的紅燈則必須同時點亮, 倒計時最后 5 秒綠燈滅的同時東西方向黃燈閃亮作為提示,南北方向的紅燈依 舊亮。相反,當(dāng)南北方向的綠燈亮的時候,東西方向的紅燈必須點亮,然后是 南北方向的黃燈閃亮和東西方向上的紅燈亮。這樣的過程無限循環(huán)下去便可實 現(xiàn)道路交通的有序控制。該指示電路清晰

37、直觀,可使道路通行井然有序。 本設(shè)計中不同顏色的發(fā)光二極管代表交通信號燈,由于二極管是共陽極, 所以只有當(dāng) p2 端口輸出低電平時才亮,輸出為高電平時滅。為了實現(xiàn)上述控制 要求,p2 端口輸出情況共 4 種,信號燈指示狀態(tài)控制碼如表 3-2 所示。 圖3-7 led指示電路 表3-2 信號燈狀態(tài)控制碼 東西方向南北方向狀 態(tài) 紅 (p2.1 ) 綠 (p2.2 ) 黃 (p2.3 ) 紅 (p2.4 ) 綠 (p2.5 ) 黃 (p2) p2 口輸出 (十六進 制) 1 滅亮滅亮滅滅ebh 2 滅滅亮亮滅滅e7h 3 亮滅滅滅亮滅ddh 4 亮滅滅滅滅亮bdh 3.53.5 強通強斷電路強通強

38、斷電路 考慮到緊急情況和具體現(xiàn)場的情況,在做設(shè)計時考慮了兩種方案: 方案一:采用 8155 擴展 i/o 口及鍵盤,顯示電路等。該設(shè)計方案的優(yōu)點是 使用靈活可編程,并且有 ram 及計數(shù)器。若使用該方案,可提供較多 i/o 口,但 操作起來稍顯復(fù)雜。 方案二: 直接在 i/o 口線上接上按鍵開關(guān)。該方案優(yōu)點是編程更加簡潔, 使用更加簡單,且成本更低。缺點就是功能有限如圖 3-8 綜合考慮本設(shè)計的實際需要,在使用輸入的時候不需要過于復(fù)雜的功能, 故采用方案二。 緊急狀態(tài)如圖 3-9 所示: 圖3-8 強通強斷電路 圖3-9 緊急狀態(tài) 3.63.6 5v5v 穩(wěn)壓工作電源穩(wěn)壓工作電源 圖 3-10

39、 電源電路 該設(shè)計由兩部分組成,主體為一個交直流轉(zhuǎn)換裝置,穩(wěn)定輸出直流電流, 獲得一個穩(wěn)定的電壓。輔助裝置為由 3 個一號電池組成的直流電源,防止在斷 電情況下出現(xiàn)的故障。設(shè)計簡單、方便,便于實現(xiàn)。 第四章第四章 軟件設(shè)計軟件設(shè)計 在本次設(shè)計中,我采用了 c 語言作為程序編程的語言。 相比較于 c 語言,雖然匯編語言的機器代碼生成效率很高但可讀性卻并不 強,稍復(fù)雜一點的程序就更是難讀懂,而 c 語言也雖然在大多數(shù)情況下其機器 代碼生成效率和匯編語言相當(dāng),但其可讀性和可移植性卻遠遠高于匯編語言, 而且 c 語言還可以嵌入?yún)R編來解決高時效性的代碼編寫問題。所以考慮到開發(fā) 周期來說,大中型的軟件編寫

40、用 c 語言的開發(fā)其周期通常要遠小于匯編語言。 綜合以上 c 語言的優(yōu)點,本設(shè)計在編程的時候選擇了 c 語言。 本設(shè)計在編譯軟件選擇上使用了 keil uvision 3.0。這款軟件支持眾多不同 公司的 mcs51 架構(gòu)芯片,它集編輯、編譯、仿真為一體,同時還支持 plm、 匯編和 c 語言的程序設(shè)計,它的界面友好、簡單易學(xué),在程序調(diào)試、軟件仿真 方面都有很強的功能。在初期的軟件調(diào)試階段,keil uvision3.0 能夠為我們提 供非常便利的環(huán)境。 4.14.1 主程序流程圖主程序流程圖 開始 設(shè)置中斷工作方式、觸發(fā)方式、初始化 是否有中斷 運行過程 執(zhí)行中斷 y n 中 斷 結(jié) 束 返

41、 回 圖 4-1 程序框圖 4.2 子程序框圖(中斷程序)子程序框圖(中斷程序) t0 中斷中斷 定時計數(shù)初值 50ms 計數(shù)(count)加 1 判斷 1s(count=20?)到否 count 清 0 time_sn-;time_ew- 恢復(fù)現(xiàn)場 中斷返回 n y 圖 4-2 to 中斷框圖 圖 4-3 intto 中斷框圖 第五章第五章 系統(tǒng)仿真與調(diào)試系統(tǒng)仿真與調(diào)試 5.15.1 proteus 系統(tǒng)仿真系統(tǒng)仿真 將 proteus 仿真軟件安裝完成。打開軟件后,新建文件并保存。在元件列表 中,單擊要放置的元件,再在編輯窗口中單擊就放置了一個元件,也可以在按 下左鍵的同時,移動鼠標,再適

42、合的位置釋放。如果需要修改元件的名稱、參 數(shù)和符號,只需雙擊元件對對應(yīng)項目進行修改就可以了。如果需要調(diào)整方向, 只需右鍵選擇旋轉(zhuǎn)的角度即可。如果需要刪除元件,只需選中后點鍵盤上的 delete 鍵刪除。根據(jù)上面的方法,在元件庫中把所需的元件都找出來按照仿真 總圖連接起來。由于原理圖中的單片機僅是硬件,需要相應(yīng)的軟件配合才能完 成相應(yīng)的功能。所以需要雙擊單片機瀏覽到編譯好的 hex 文件,將其調(diào)入,然 后點擊“ok”即可。最后,點擊 proteus 編輯器界面左下角的運行鍵即可,如 果想在 proteus 中調(diào)試軟件,只需點擊 debug 中對應(yīng)的器件名稱即可。 圖 5-1 整體仿真原理圖 5.

43、25.2 仿真結(jié)果仿真結(jié)果 圖 5-2 東西通行狀態(tài) 圖 5-3 南北通行狀態(tài) 圖 5-4 緊急工作狀態(tài) 圖 5-5 時段 1 工作狀態(tài) 圖 5-6 時段 2 工作狀態(tài) 從仿真原理圖上可看出,該交通燈設(shè)計實現(xiàn)了紅綠燈顯示、主副干道倒計 時顯示、人行道指示、電路復(fù)位控制、分時控制等多種功能。 5.3 測試及結(jié)果分析測試及結(jié)果分析 首先,使用萬用表檢查所有元器件的好壞和參數(shù)值是否滿足要求。根據(jù)電 路原理圖先將元器器件擺在萬用板上,預(yù)測一下布線情況。然后進行焊接,焊 接時,首先要保證焊點的飽滿且不要虛焊,最好保持板子清潔。同時還要注意 安全,避免燙傷。完成焊接后,仔細檢查是否有短路和斷路的地方,確保

44、每個 管腳的焊點牢固,電源和接地連接正確。 (1):斷電調(diào)試):斷電調(diào)試 為了安全起見,防止硬件燒壞,首先要進行斷電調(diào)試,用萬用表檢測電路 板上是否有短路現(xiàn)象,再檢查嚴設(shè)計原理是否正確,各個線路的電壓是否正常。 (2):通電調(diào)試):通電調(diào)試 a:確認無短路后給電路板接上直流電源,觀察是否工作正常,結(jié)果有一個 數(shù)碼管不能正常工作,經(jīng)檢查是由于虛焊造成,已進行改正。 b: 檢查時鐘系統(tǒng)是否工作正常,用萬用表直流電壓檔測量單片機各管口 及鎖存器等器件的各管口電壓變化是否正常。 c: 檢查復(fù)位電路是否正常工作。 d: 檢測分時段電路是否工作正常。 e: 檢測中斷系統(tǒng)是否工作正常。 f: 長時間供電,檢

45、查數(shù)碼管顯示和 led 燈是否正常。 圖 5-3-1 實際電路示意圖 總總 結(jié)結(jié) 本文研究了在當(dāng)今智能交通方面單片機的應(yīng)用。相對于其他功能器件來說, 單片機具有很多優(yōu)勢比如,成本低廉,通用性高,維護簡單,軟件靈活,成熟 度高等。但是,單片機發(fā)展到現(xiàn)在也有不少局限性如存儲空間較小、下游方案 較少等。這次設(shè)計在實現(xiàn)預(yù)計功能的時候主要是考慮到現(xiàn)有的設(shè)備及經(jīng)濟條件, 采用了成熟度較高的 at89s52 單片機作為 cpu,同時利用紅綠黃三色 led 燈 和雙位數(shù)碼管作為顯示模塊,軟件則使用了移植性好的 c 語言進行編程。我的 工作是將各個功能程序連接起來,并從電路上實現(xiàn)其正常工作。從功能需要上 來看,

46、我們實現(xiàn)了基本交通燈指示、倒計時指示、車輛左右轉(zhuǎn)指示、及人行道 指示功能,并且采用了雙電源模式在一定程度上解決了實際應(yīng)用中可能出現(xiàn)的 電路故障問題。為提高交通運輸系統(tǒng)的運行效率我們采用了高低峰分時管理方 案作為靈活的交通燈狀態(tài)方案。 單片機作為已經(jīng)發(fā)展了 30 多年的成熟產(chǎn)品,很多優(yōu)勢正在逐漸失去,讓位 于更加先進的芯片解決方案,正因如此我在設(shè)計實物電路時由于連線復(fù)雜,附 屬電路較多而出現(xiàn)許許多多的問題,從而使實物電路制作不成功。如今的交通 燈設(shè)計還要考慮盲人、兒童等社會群體,用單片機難以實現(xiàn)這些設(shè)計。并且各 個城市的加速發(fā)展,要求各城市實現(xiàn)聯(lián)網(wǎng)控制并監(jiān)控。這就更加難以實現(xiàn)。因 此,我決定以后

47、要更加關(guān)注并學(xué)習(xí)這方面的知識,利用更加先進的芯片設(shè)計方 案來實現(xiàn)這些功能要求。 致致 謝謝 通過本的次畢業(yè)設(shè)計,讓我對所學(xué)知識進行了一次系統(tǒng)的整理和應(yīng)用,感 覺收獲很大,既鍛煉了自己獨立思考的能力,還學(xué)會了怎樣分析問題,解決問 題。為自己今后不論是走向工作崗位還是繼續(xù)學(xué)習(xí)深造都打下一個堅實的基礎(chǔ), 使自己又掌握了一個有利工具,為以后激烈的社會競爭增強了實力。同時在這 次論文設(shè)計中,也發(fā)現(xiàn)自己不論在專業(yè)知識學(xué)習(xí)上還是實際動手能力上都存在 很多很多的不足,不過這也是發(fā)展自己的重大契機這將會是我以后改進和學(xué)習(xí) 的方向。經(jīng)過一個學(xué)期的努力奮斗,設(shè)計成果終于出來了,我通過資料采集、 并進行了實際考察后,

48、做出了以上的設(shè)計的方案。 本文是在王立剛老師指導(dǎo)下完成的,王老師為論文課題的研究提出了很多 指導(dǎo)性的意見,為論文的撰寫、修改提供了許多具體的指導(dǎo)和幫助。王老師嚴 謹?shù)闹螌W(xué)風(fēng)格、敏銳深邃的學(xué)術(shù)洞察力、不斷探索的科研作風(fēng)、孜孜不倦的敬 業(yè)精神,都給我留下了深刻的印象,使我受益良多。在本文結(jié)束之際,特向我 敬愛的王老師致以深深的感謝和崇高的敬意! 參考文獻參考文獻 1 皮大能。單片機課程設(shè)計指導(dǎo)書。北京:北京理工大學(xué)出版社。2010. 2 楊居義。單片機課程設(shè)計指導(dǎo)。北京:清華大學(xué)出版社。2009 3 華成英。模擬電子技術(shù)基礎(chǔ)(第四版) 。北京:高等教育出版社。2006. 4 陳永真。全國大學(xué)生電子

49、設(shè)計競賽硬件電路設(shè)計精解。北京:電子工業(yè)出版社。2009. 5 康萬新。畢業(yè)設(shè)計指導(dǎo)及案例剖析。北京:清華大學(xué)出版社。2007 6 李朝青。單片機原理及接口技術(shù)。北京:北京航空航天大學(xué)出版社。1999. 7 嚴天峰。單片機應(yīng)用系統(tǒng)設(shè)計與仿真調(diào)試。北京:北京航空航天大學(xué)出版社。2005. 8 林志琦?;?proteus 的單片機可視化軟硬件仿真。北京:北京航空航天大學(xué)出版社。 2006. 9 胡漢才。單片機原理及接口技術(shù).北京:清華大學(xué)出版社。 1996. 9 周美珍、江志華。單片機控制交通燈的硬件與軟件設(shè)計.家庭電子,9(20):20- 21。2005. 10 蔣汝根、錢丹浩?;?at89

50、c51 單片機的交通燈模擬控制系統(tǒng).無錫商業(yè)職業(yè)技術(shù)學(xué) 院。2006. 11 8-bit microcontroller with 4k bytes flash at89c51.atmel,2000. 12 8-bit microcontroller with 4k bytes in-system programble flash at89s51.atmel,2001. 附附 錄錄 1.源程序源程序 /* 本交通燈實現(xiàn)的功能: 1、正常時可以分時段車流高峰與低峰進行控制 2、可以緊急控制,讓某些車通過 3、可以人為設(shè)置為車流高峰區(qū)狀態(tài) */ #include #include #define

51、uchar unsigned char #define uint unsigned int uchar t,b,s,s1,s2,s3,s4,yellowtime,yellowflag,half_sec,sec,a; uint time; sbit dula=p27; sbit wela=p26; bit g; /中斷標志位 uchar code table= 0 x3f,0 x06,0 x5b,0 x4f, 0 x66,0 x6d,0 x7d,0 x07, 0 x7f,0 x6f,0 x77,0 x7c, 0 x39,0 x5e,0 x79,0 x71; void delay(uint z)/

52、延時函數(shù) uchar x,y; for(x=z;x0;x-) for(y=110;y0;y-); void init() /初始化函數(shù) half_sec = 0; s = 1; sec = 20; t = 0; g = 0; time = 5; yellowtime = 5; yellowflag = 0; s1 = 15; s2 = 10; s3 = 10; s4 = 20; it1 = 0;/設(shè)置外部中斷 1 為低電平觸發(fā) it0 = 0;/設(shè)置外部中斷 0 為低電平觸發(fā) ex0 = 1;/允許外部中斷 0 ex1 = 1; tmod = 0 x01; /設(shè)置定時器為十六位工作方式 th0

53、 = (65536 - 50000)/256; tl0 = (65536 - 50000)%256; /設(shè)置定時時間為 50ms ea = 1; /總中斷使能 et0 = 1; /定時器 0 中斷開 tr0 = 1; /定時器 0 void main() init(); /*狀態(tài) s1,綠燈亮*/ while(1) if(s = 1) /設(shè)置車道燈 p3 = 0 xed; /設(shè)置人行道燈 dula = 1; /打開段鎖存器 p0 = table(sec - yellowtime)/10; /存入段碼,顯示綠燈十位 dula = 0; /鎖住段碼 p0 = 0 xff; /消影 wela = 1

54、; /打開位鎖存器 p0 = 0 xfe; /存入位選,設(shè)置某位數(shù)碼管顯示 wela = 0; p0 = 0;/消影 delay(3); dula = 1; p0 = table(sec - yellowtime)%10; /顯示綠燈的個位 dula = 0; p0 = 0 xff; wela = 1; p0 = 0 xfd; wela = 0; p0 = 0; delay(3); dula = 1; p0 = tablesec/10; /顯示紅燈的十位 dula = 0; p0 = 0 xff; wela = 1; p0 = 0 xef; wela = 0; p0 = 0; delay(3)

55、; dula = 1; p0 = tablesec%10; /顯示紅燈的個位 dula = 0; p0 = 0 xff; wela = 1; p0 = 0 xdf; wela = 0; p0 = 0; delay(3); /*狀態(tài) s1,黃燈亮*/ if(s = 1) /車道黃燈關(guān) p3 = 0 xfd; /人行道綠燈關(guān) else p1 = 0 xf7; /車道黃燈開 p3 = 0 xed; /人行道綠燈開 /前面十行實現(xiàn)黃燈閃爍 dula = 1; p0 = tablesec/10; dula = 0; p0 = 0 xff; wela = 1; p0 = 0 xee; wela = 0;

56、p0 = 0; delay(3); dula = 1; p0 = tablesec%10; dula = 0; p0 = 0 xff; wela = 1; p0 = 0 xdd; wela = 0; p0 = 0; delay(3); /*狀態(tài) s2,綠燈亮*/ if(s = 2) /設(shè) p3 = 0 xbe; dula = 1; p0 = table(sec / 10); /顯示綠燈的十位 dula = 0; p0 = 0 xff; wela = 1; p0 = 0 xfe; wela = 0; p0 = 0; delay(3); dula = 1; p0 = table(sec % 10)

57、; /顯示綠燈的個位 dula = 0; p0 = 0 xff; wela = 1; p0 = 0 xfd; wela = 0; p0 = 0; delay(3); dula = 1; p0 = table(sec - yellowtime) / 10; /顯示紅燈的十位 dula = 0; p0 = 0 xff; wela = 1; p0 = 0 xef; wela = 0; p0 = 0; delay(3); dula = 1; p0 = table(sec - yellowtime) % 10; /顯示紅燈的個位 dula = 0; p0 = 0 xff; wela = 1; p0 =

58、0 xdf; wela = 0; p0 = 0; delay(3); /*狀態(tài) s2,黃燈亮*/ if(s = 2) p3 = 0 xbf; else p1 = 0 x7f; /前面四行實現(xiàn)黃燈閃爍 p3 = 0 xbe; dula = 1; p0 = tablesec/10; dula = 0; p0 = 0 xff; wela = 1; p0 = 0 xee; wela = 0; p0 = 0; delay(3); dula = 1; p0 = tablesec%10; dula = 0; p0 = 0 xff; wela = 1; p0 = 0 xdd; wela = 0; p0 = 0

59、; delay(3); /*狀態(tài) s3,綠燈亮*/ if(s = 3) /設(shè)置燈 p3 = 0 xbd; dula = 1; p0 = table(sec - yellowtime)/10; /顯示綠燈的十位 dula = 0; p0 = 0 xff; wela = 1; p0 = 0 xfe; wela = 0; p0 = 0; delay(3); dula = 1; p0 = table(sec - yellowtime)%10; /顯示綠燈的個位 dula = 0; p0 = 0 xff; wela = 1; p0 = 0 xfd; wela = 0; p0 = 0; delay(3);

60、 dula = 1; p0 = tablesec/10; /顯示紅燈的十位 dula = 0; p0 = 0 xff; wela = 1; p0 = 0 xef; wela = 0; p0 = 0; delay(3); dula = 1; p0 = tablesec%10; /顯示紅燈的個位 dula = 0; p0 = 0 xff; wela = 1; p0 = 0 xdf; wela = 0; p0 = 0; delay(3); /*狀態(tài) s3,黃燈亮*/ if(s = 3) else p1 = 0 xf7; /前面四行實現(xiàn)黃燈閃爍 dula = 1; p0 = tablesec/10;

溫馨提示

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

評論

0/150

提交評論