




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、廣東省電子設計大賽廣東省電子設計大賽 智能交通燈系統(tǒng)交通燈是各個國家管理交通的重要工具,是城市交通最重要的組成部分,對于疏導交通流量、提高道路通行能力,減少交通事故有明顯效果。本系統(tǒng)基于單片機核心的交通燈系統(tǒng)。本系統(tǒng)由單片機系統(tǒng)、1602LCD 顯示、交通燈組成。系統(tǒng)具有車流量的采集,車型識別及基本的交通燈的功能。該系統(tǒng)具有倒計時、時間設置、分時段調整信號燈的點亮時間等普通功能外,還具有提前感知車流量,實時改變系統(tǒng)策略的特色功能。關鍵詞:STC89C52,智能,1602LCD顯示Intelligent traffic system The traffic light is each count
2、ry management the important tool of transportation, urban traffic is the most important part, to ease traffic flow, the improvement of road capacity, reduce the number of traffic accidents have obvious effect. This system based on SCM core of traffic light system. The system is composed of single-ch
3、ip microcomputer system, 1602 LCD display, traffic composition. System has a collection of traffic, vehicle recognition and basic function of the traffic lights. The system has the countdown, time setting, period of time adjustment signal lamp lit the time and so on ordinary function outside, still
4、have early perception and traffic real-time change system strategy characteristic function.Keywords: STC89C52, intelligent, 1602 LCD display廣東省電子設計大賽廣東省電子設計大賽 目錄一 摘要.二 作品介紹.12.1 引言.12.2 單片機概述.12.3 芯片簡介.22.4 功能描述.42.5 創(chuàng)新性聲明.4三 設計方案.43.1 電源提供方案.43.2 顯示界面方案.53.3 時鐘方案.53.4 傳感器設計方案.63.5 硬件設計流程圖.63.6 交通燈控
5、制電路設計.73.7 倒計時顯示電路設計.93.8 車流量數(shù)據(jù)顯示模塊設計.103.9 交通燈硬件線路總圖.10 四 主程序流程圖.114.1 系統(tǒng)延時.114.2 主程序流程圖.114.3 計數(shù)顯示間隔一秒的精確定時.124.4 車流量統(tǒng)計.134.5 紅綠燈倒計時的時間計算.144.6 倒計時時間切換.144.7 紅綠燈顯示.154.8 倒計時數(shù)碼管顯示.16廣東省電子設計大賽廣東省電子設計大賽 4.9 液晶屏顯示.17五 軟硬件聯(lián)合調試.185.1 傳感器調試.185.2. 交通燈電路的調試.185.3 系統(tǒng)總調試.185.4 結果分析.19六 結論.19參考文獻.20附錄作品外觀圖.2
6、1附錄程序清單.22廣東省電子設計大賽0廣東省電子設計大賽 二作品介紹二作品介紹2.1 引言引言1858 年,在英國倫敦主要街頭安裝了以燃煤氣為光源的紅,藍兩色的機械扳手式信號燈,用以指揮馬車通行。這是世界上最早的交通信號燈。1868 年,英國機械工程師納伊特在倫敦威斯敏斯特區(qū)的議會大廈前的廣場上,安裝了世界上最早的煤氣紅綠燈。它由紅綠兩以旋轉式方形玻璃提燈組成,紅色表示“停止”,綠色表示“注意”。1869 年 1 月 2 日,煤氣燈爆炸,使警察受傷,遂被取消。電氣啟動的紅綠燈出現(xiàn)在美國,這種紅綠燈由紅綠黃三色圓形的投光器組成,1914 年始安裝于紐約市 5 號大街的一座高塔上。紅燈亮表示“停
7、止”,綠燈亮表示“通行”。1918 年,又出現(xiàn)了帶控制的紅綠燈和紅外線紅綠燈。帶控制的紅綠燈,一種是把壓力探測器安在地下,車輛一接近,紅燈便變?yōu)榫G燈;另一種是用擴音器來啟動紅綠燈,司機遇紅燈時按一下嗽叭,就使紅燈變?yōu)榫G燈。紅外線紅綠燈當行人踏上對壓力敏感的路面時,它就能察覺到有人要過馬路。紅外光束能把信號燈的紅燈延長一段時間,推遲汽車放行,以免發(fā)生交通事故。信號燈的出現(xiàn),使交通得以有效管制,對于疏導交通流量、提高道路通行能力,減少交通事故有明顯效果。1968 年,聯(lián)合國道路交通和道路標志信號協(xié)定對各種信號燈的含義作了規(guī)定。綠燈是通行信號,面對綠燈的車輛可以直行,左轉彎和右轉彎,除非另一種標志禁
8、止某一種轉向。左右轉彎車輛都必須讓合法地正在路口內行駛的車輛和過人行橫道的行人優(yōu)先通行。紅燈是禁行信號,面對紅燈的車輛必須在交叉路口的停車線后停車。黃燈是警告信號,面對黃燈的車輛不能越過停車線,但車輛已十分接近停車線而不能安全停車時可以進入交叉路口。隨著城市車流量的增加,原本單一模式的交通燈已經無法最大限度地調控隨著城市車流量的增加,原本單一模式的交通燈已經無法最大限度地調控車流量,人們迫切需要一款智能交通燈系統(tǒng)來適應現(xiàn)代的交通。本系統(tǒng)就是基車流量,人們迫切需要一款智能交通燈系統(tǒng)來適應現(xiàn)代的交通。本系統(tǒng)就是基于單片機系統(tǒng)的智能交通燈系統(tǒng)。于單片機系統(tǒng)的智能交通燈系統(tǒng)。 2.2 單片機概述單片機
9、概述單片機是智能交通燈系統(tǒng)的核心部分,他在系統(tǒng)的控制與檢測環(huán)節(jié)發(fā)揮了主要作用。當系統(tǒng)要改變紅綠燈狀態(tài)時就是由單片機來檢測狀態(tài)和控制過程的。單片機微型計算機是微型計算機的一個重要分支,也是頗具生命力的機種。單片機微型計算機簡稱單片機,特別適用于控制領域,故又稱為微控制器。 通常,單片機由單塊集成電路芯片構成,內部包含有計算機的基本功能部件:中央處理器、存儲器和 I/O 接口電路等。因此,單片機只需要和適當?shù)能洀V東省電子設計大賽1廣東省電子設計大賽 件及外部設備相結合,便可成為一個單片機控制系統(tǒng)。 單片機經過 1、2、3 代的發(fā)展,目前單片機正朝著高性能和多品種方向發(fā)展,它們的 CPU 功能在增強
10、,內部資源在增多,引腳的多功能化,以及低電壓低功耗。2.3 芯片簡介芯片簡介本次設計采用工業(yè)型 STC89C52 芯片。 (圖 1 為引腳圖 圖 2 為外部圖)STC9S52 芯片簡介芯片簡介 STC89C52 是一種低功耗、高性能 CMOS8 位微控制器,具有 8K 在系統(tǒng)可編程 Flash 存儲器 。在單芯片上,擁有靈巧的 8 位 CPU 和在系統(tǒng)可編程Flash,使得 STC89C52 為眾多嵌入式控制應用系統(tǒng)提供高靈活、超有效的解決方案。 具有以下標準功能: 8k 字節(jié) Flash,512 字節(jié) RAM, 32 位 I/O 口線,看門狗定時器,內置 4KB EEPROM,MAX810
11、復位電路,三個 16 位 定時器/計數(shù)器,一個 6 向量 2 級中斷結構,全雙工串行口。另外 STC89X52 可降至0Hz 靜態(tài)邏輯操作,支持 2 種軟件可選擇節(jié)電模式??臻e模式下,CPU 停止工作,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下,RAM 內容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。最高運作頻率 35MHz,6T/12T 可選。參參數(shù)數(shù):1. 增強型 8051 單片機,6 時鐘/機器周期和 12 時鐘/機器周期可以任意 選擇,指令代碼完全兼容傳統(tǒng) 8051.1 2. 工作電壓:5.5V3.3V(5V 單片機)/3.8V2.0V(
12、3V 單片機) 3. 工作頻率范圍:040MHz,相當于普通 8051 的 080MHz,實際工作 頻率可達 48MHz 4. 用戶應用程序空間為 8K 字節(jié) 5. 片上集成 512 字節(jié) RAM 6. 通用 I/O 口(32 個) ,復位后為:P0/P1/P2/P3 是準雙向口/弱上拉, P0 口是漏極開路輸出,作為總線擴展用時,不用加上拉電阻,作為 I/O 口用時,需加上拉電阻。 7. ISP(在系統(tǒng)可編程)/IAP(在應用可編程) ,無需專用編程器,無 需專用仿真器,可通過串口(RxD/P3.0,TxD/P3.1)直接下載用戶程 序,數(shù)秒即可完成一片 8. 具有 EEPROM 功能 9.
13、 具有看門狗功能 廣東省電子設計大賽2廣東省電子設計大賽 10. 共 3 個 16 位定時器/計數(shù)器。即定時器 T0、T1、T2 11. 外部中斷 4 路,下降沿中斷或低電平觸發(fā)電路,Power Down 模式可 由外部中斷低電平觸發(fā)中斷方式喚醒12. 通用異步串行口(UART) ,還可用定時器軟件實現(xiàn)多個 UART 13. 工作溫度范圍:-40+85(工業(yè)級)/075(商業(yè)級) 14. PDIP 封裝 圖 1 STC89C52 管腳圖 圖 2 外部框圖2.4 功能描述功能描述本系統(tǒng)由單片機系統(tǒng),LED,LCD 與數(shù)碼管組成的交通燈系統(tǒng),傳感器采集系統(tǒng)三部分組成。傳感器采集系統(tǒng)安裝在距離交通燈
14、前適當一段路程(實際應用時推薦 3-5 分鐘車程) ,通過統(tǒng)計車流量讓系統(tǒng)提前感知車流量的變化(交叉路口車流量的差值) 。單片機系統(tǒng)作為主要的核心部分,實時地接收從傳感器采集到的路面信息,經過處理后反饋給交通燈,并調節(jié)交通燈的時間廣東省電子設計大賽3廣東省電子設計大賽 分配(車流量較多的道路會給予更長時間的通過時間,反之亦然) ,從而達到實時根據(jù)路況來疏導交通,最大限度提高道路通行能力的功能。2.5 創(chuàng)新性聲明創(chuàng)新性聲明 本系統(tǒng)設計時有在互聯(lián)網(wǎng)上對比過市場上成型的同類智能交通燈系統(tǒng),經相關論證,在互聯(lián)網(wǎng),科技雜志與市場上未出現(xiàn)與本系統(tǒng)雷同的產品。特特別別聲聲明明:本本系系統(tǒng)統(tǒng)采采用用傳傳感感器
15、器系系統(tǒng)統(tǒng)提提前前預預判判路路況況,解解決決了了現(xiàn)現(xiàn)在在市市場場上上普普遍遍智智能能交交通通燈燈系系統(tǒng)統(tǒng)反反饋饋速速度度慢慢,未未完完全全自自動動化化需需人人工工操操控控等等缺缺點點,實實現(xiàn)現(xiàn)了了實實時時根根據(jù)據(jù)路路況況改改變變交交通通燈燈情情況況,確確保保道道路路實實時時都都能能實實現(xiàn)現(xiàn)最最大大通通行行力力的的功功能能。 下面為幾則在網(wǎng)絡上摘錄下來的關于市場上其他類型智能交通燈系統(tǒng)的簡述。新聞報導一:德國將采用新型智能交通燈 據(jù)德國媒體報導:卡塞爾大學交通技術與運輸物流系的研究人員正致力于交通燈與汽車的信息聯(lián)通技術開發(fā)。傳統(tǒng)的交通燈是用探測器感知十字路口的車輛,該系統(tǒng)將升級為一種小型計算機,
16、通過輔助設備讓司機獲知紅綠燈的持續(xù)時間,讓他們可根據(jù)停留的時間長短來決定何時重啟汽車。目前,該系統(tǒng)已經初步獲得成功,即將進入實際應用階段。德國黑塞州南部打的貝格施特拉瑟區(qū)為第一個試點地區(qū)-來源 中國智能交通網(wǎng)新聞報導二:成都年底或啟動智能交通系統(tǒng) 網(wǎng)上指揮交通燈近日,記者在德陽交警支隊體驗了目前四川省最先進的智能交通系統(tǒng)。這套系統(tǒng)包括交警指揮中心、城市智能交通管理平臺、闖紅燈抓拍、公路交通治安卡口等,對快速緩堵、交通違法、刑事偵查等問題都能起到關鍵性作用。“彩虹橋路口目前車輛擁堵,立即調出天網(wǎng)畫面。”記者看到,在指揮中心大屏幕上,每條路均有色彩顯示,綠色表示暢通,橙色是指正常,紅色則是擁堵。通
17、過綠波帶等感應設備的信息反饋,彩虹橋一線因擁堵變?yōu)榧t色,民警立即調出監(jiān)控分析造堵原因。依據(jù)現(xiàn)場情況,民警通過信號燈聯(lián)網(wǎng)控制系統(tǒng),控制該路段信號燈,對車輛進行分流。 -來源 成都晚報廣東省電子設計大賽4廣東省電子設計大賽 三、三、 設計方案設計方案3.13.1 電源提供方案電源提供方案 為了使模塊穩(wěn)定工作,需要有可靠的電源,我們考慮了三種方案:方案一:采用單片機控制模塊提供電源。此方案的優(yōu)點是使模塊簡明扼要,缺點是功率太小,發(fā)光二極管不夠亮。方案二:采用電池供電。此方案的優(yōu)點是模塊簡明扼要,缺點是電壓不穩(wěn)定,用了一段時間之后電壓會減小。方案三:采用獨立的穩(wěn)壓電源。此方案的優(yōu)點是電源穩(wěn)定可靠,且有
18、各種成熟電路可以選擇,缺點是使模塊變得復雜。綜上所述,我們選擇第三種方案,如下圖 3 所示 圖圖 3 3 系統(tǒng)電源部分原理圖系統(tǒng)電源部分原理圖3.23.2 顯示方案顯示方案該系統(tǒng)要求倒計時顯示時間和狀態(tài)燈的功能,我們自己增加了顯示車流量燈的數(shù)量,我們考慮了兩種方案:方案一:采用兩個四位的數(shù)碼管顯示,此方案的優(yōu)點是能直觀的把車流量數(shù)量和倒計時顯示出來,此方案的缺點是數(shù)碼管引腳復雜,使電路復雜,給布線帶來困難。廣東省電子設計大賽5廣東省電子設計大賽 方案二:采用兩個兩位數(shù)碼管顯示倒計時,直觀方便。車流量則采用1602LCD 顯示屏顯示。EW 代表東西方向,SN 代表南北方向。此方案的優(yōu)點是引腳少,
19、電路簡單,布線容易,顯示內容豐富。綜合考慮,我們選擇了第二種方案,顯示方式多樣,不單調。3.33.3 時鐘方案時鐘方案為了提供可靠的時間,我們考慮了兩種方案方案一:采用 555 定時器定時,此方案的優(yōu)點是成本低,性能可靠,缺點是使電路變復雜,本組成員也不是很熟悉用法。方案二;采用一個 12MHz 的晶振和兩個 30pF 電容組成的時鐘電路。此方案的優(yōu)點是成本低,電路簡單,性能可靠??紤]到我們平時接觸的是采用晶振和 51 單片機來實現(xiàn)自激振蕩,所以我們選擇了第二種方案。3.43.4 傳感器的設計傳感器的設計 方案一:自己制作,用光敏三極管和發(fā)光二極管以及電阻組成一光電傳感器,方案優(yōu)點是成本低,體
20、積小,使用簡單方便。 方案二:用一光電傳感器成品,此方案優(yōu)點是靈敏度高、穩(wěn)定性好,缺點是成本高、體積相對較大。綜合考慮我們選擇第一種方案。3.5.硬件設計流程圖 451 單片機8051 控制器系統(tǒng)處理 2紅外接收傳感器模塊系統(tǒng)電源模塊上電復位電路12M 時鐘振蕩電路數(shù)碼管倒計時模塊紅綠黃 LED燈顯示模塊LCD 屏顯示車流量模塊廣東省電子設計大賽6廣東省電子設計大賽 圖圖 4 系系統(tǒng)統(tǒng)硬硬件件結結構構框框圖圖3.53.5 交通燈控制電路設計交通燈控制電路設計交通燈的燃亮時序如圖一。本設計象征性的設置了兩種路口模式,通過采集傳感器檢測的 A,B 車道流量控制兩種模式的轉換。設置 A 車道車流量上
21、限值 M,系統(tǒng)開始運行后,A 車道按綠、黃、紅循環(huán)點亮,B 車道按紅、綠、黃依次點亮,同時傳感器記錄 A 車道在綠、黃燈亮時的車流量,當 A、B 車道交通燈完成一次循環(huán)時,比較記錄流量與設置值 M 比較,若大于等于 M 則 A、B 車道自動切換到主從模式,反之則保持原來的普通模式。紅綠燈倒計時的上限分別為:紅燈 42s,綠燈 38s。(如圖 5 所示)A 方向B 方向 車道模式 綠黃紅.紅綠黃 .普通24428.28244主從24+lastA-lastB428-lastA+lastB28-lastA+lastB24+lastA-lastB4.注:lastA、lastB 分別為 A、B 車道最終
22、統(tǒng)計的車流量 圖圖 5 5 交通燈燃亮時序圖交通燈燃亮時序圖系統(tǒng)初始化(即系統(tǒng)上電或系統(tǒng)復位)后,A 方向和 B 方向分別為綠燈和紅燈,表示 A、B 方向的數(shù)碼管都是從 28 秒或 24 秒開始減。A、B 方向交通燈各自按下圖順序循環(huán)。(如圖 6 所示)廣東省電子設計大賽7廣東省電子設計大賽 黃燈紅燈綠燈 圖圖 6 6 交通燈循環(huán)圖交通燈循環(huán)圖3.63.6 倒計時顯示電路設計倒計時顯示電路設計 紅綠燈倒計時部分采用兩位共陽數(shù)碼管顯示,分別顯示兩個方向的倒計時時間。數(shù)碼管選用兩個 NPN 型三極管驅動。 (如圖 7 圖 8 所示 圖 9 為電器連接)圖圖 7 7 數(shù)碼管外部框圖數(shù)碼管外部框圖廣東
23、省電子設計大賽8廣東省電子設計大賽 引腳分布:正面逆時針數(shù)依次是 1、2、3、4、5、6、7、8、9、10 圖圖 8 8 數(shù)碼管引腳圖數(shù)碼管引腳圖 圖圖 9 9 數(shù)碼管電器連接圖數(shù)碼管電器連接圖3.3.7 7 車流量數(shù)據(jù)顯示模塊設計車流量數(shù)據(jù)顯示模塊設計 傳感器接受到信號后,發(fā)送到單片機,經過單片機程序處理后,顯示在1602LCD 顯示屏上。EW 表示東西方向的車流量,SN 表示南北方向的車流量。廣東省電子設計大賽9廣東省電子設計大賽 經過一分鐘的車流量檢測后,1602LCD 顯示屏將會顯示最后的車流量-LCAR。此時,交通燈的時間分配也會做出相應的改變。 (如圖 10)圖圖 1010 160
24、2LCD1602LCD 顯示屏仿真圖顯示屏仿真圖3.83.8 系統(tǒng)工作原理系統(tǒng)工作原理 本系統(tǒng)通過傳感器采集路面信息,輸送到單片機本系統(tǒng)通過傳感器采集路面信息,輸送到單片機 P1,P3P1,P3 系列系列管口。再由單片機進行處理運算,運算結果通過單片機管口。再由單片機進行處理運算,運算結果通過單片機 P0.P2P0.P2系列管口輸出到交通燈系統(tǒng)中,從而控制交通燈紅綠黃燈的亮系列管口輸出到交通燈系統(tǒng)中,從而控制交通燈紅綠黃燈的亮滅和倒計時的時間,進而實現(xiàn)系統(tǒng)智能化根據(jù)實時路況調整交滅和倒計時的時間,進而實現(xiàn)系統(tǒng)智能化根據(jù)實時路況調整交廣東省電子設計大賽10廣東省電子設計大賽 通燈的功能。其中通燈
25、的功能。其中 LCDLCD 顯示屏顯示的是兩條道路上車流量的數(shù)顯示屏顯示的是兩條道路上車流量的數(shù)量。量。3.3.9 9 交通燈硬件線路總圖(圖交通燈硬件線路總圖(圖 1111) 圖圖 1111 交通燈硬件線路總圖交通燈硬件線路總圖四、軟件部分四、軟件部分交通燈控制器的軟件設計采用 C 語言編程實現(xiàn),算法及程序結構主要有,子函數(shù)調用、程序初始化、程序的模塊化、中斷定時處理、按鍵檢測判斷、以及循環(huán)等。 4.14.1 系統(tǒng)延時系統(tǒng)延時廣東省電子設計大賽11廣東省電子設計大賽 系統(tǒng)延時通過軟延時的方法,運用 C 語言的循環(huán)結構 for 語句,通過調用延時子函數(shù)的方法產生約(1/12)*24*(N+11
26、0)us 的延時,N 為延時函數(shù)參數(shù)值。 4.24.2 主程序流程圖(圖主程序流程圖(圖 1212) 是 否開始系統(tǒng)初始化設定初值交通燈按照程序工作統(tǒng)計一分鐘傳感器開始計數(shù)兩個車流量相等按照原來模式不改變計算相應數(shù)據(jù),切換到對應的模式交通燈按照單片機輸出的命令改變模式廣東省電子設計大賽12廣東省電子設計大賽 圖圖 12 主程序流程圖主程序流程圖4.3 計數(shù)顯示間隔計數(shù)顯示間隔 1 1 秒的精確定時秒的精確定時使用 12M 的晶振,所以一個機器周期為 1s。設定每次中斷為 5000 個機器周期即為 5ms,每次中斷變量 MJS 加 1,當 MJS 加到 200 時就為一秒的時間。具體程序如下:T
27、MOD=0 x10; /啟動中斷TL1=0 x78;TH1=0 xEC; TR1=1; ET1=1;EA=1;void T0ISR(void) interrupt 3/定時函數(shù) TL1=0 x78; TH1=0 xEC;MJS+;if(MJS=200) -DJSA;-DJSB;MJS=0; 4.4 車流量統(tǒng)計車流量統(tǒng)計車流量的統(tǒng)計采用的是中斷程序,當車輛壓過最前面的傳感器時產生低電平,促使主程序中斷,執(zhí)行中斷程序。中斷程序里進行了判斷,當短車經過時計數(shù)為 1,中等車為 2,長車為 3。具體程序如下:IP=0 x05; /啟動中斷IT0=1;IT1=1;EX0=1;EX1=1;EA=1;void
28、 ISR0(void) interrupt 0if(ZDJS10000)if(AHWc=0) /統(tǒng)計 A 車道車流量 NUMA3+;結束廣東省電子設計大賽13廣東省電子設計大賽 else if(AHWz=0) NUMA2+; else NUMA1+; numA=NUMA1+2*NUMA2+3*NUMA3;void ISR1(void) interrupt 2if(ZDJS10000) lastA=numA; lastB=numB; green=24+lastA-lastB;/計算倒計時時間 red=28-lastA+lastB; if(green38) green=38;red=14; lig
29、htA0=red; lightA1=green; lightA2=yellow; lightB0=green+4; lightB1=red-4; lightB2=yellow; 廣東省電子設計大賽14廣東省電子設計大賽 4.6 倒計時的時間切換倒計時的時間切換紅黃綠三個燈倒計時的時間切換是以數(shù)組為載體進行的,當?shù)褂嫊r的時間為零時,變量 w 加 1,實現(xiàn)倒計時的切換,具體程序如下:int lightA3,lightB3;lightA0=red; lightA1=green; lightA2=yellow; lightB0=red; lightB1=green; lightB2=yellow;if
30、(DJSA0) /A 車道倒計時 TempData1=dofly_DuanMa(DJSA/10); TempData0=dofly_DuanMa(DJSA%10); DisplayA();/從第一位顯示,共顯示 2 位 else if(wA=2) DJSA=lightA0;wA=0; else wA+;DJSA=lightAwA; if(DJSB0) /B 車道倒計時 TempData1=dofly_DuanMa(DJSB/10); TempData0=dofly_DuanMa(DJSB%10); DisplayB();/從第一位顯示,共顯示 2 位 else if(wB=2) DJSB=li
31、ghtB0;wB=0; else wB+;DJSB=lightBwB; 4.7 紅綠黃燈的顯示紅綠黃燈的顯示廣東省電子設計大賽15廣東省電子設計大賽 根據(jù)三種燈倒計時的切換,A、B 兩車道紅綠黃三種 LED 燈根據(jù)順序同步的循環(huán)切換,具體程序如下: if(wA=0) /A 車道紅綠燈 Aledred=0;Aledgreen=1;ledyellowA=1; else if(wA=1)Aledred=1;Aledgreen=0;ledyellowA=1; else if(wA=2)Aledred=1;Aledgreen=1;ledyellowA=0; if(wB=0) /B 車道紅綠燈Bledre
32、d=0;Bledgreen=1;ledyellowB=1; else if(wB=1)Bledred=1;Bledgreen=0;ledyellowB=1; else if(wB=2)Bledred=1;Bledgreen=1;ledyellowB=0;4.8 倒計時數(shù)碼管的顯示倒計時數(shù)碼管的顯示數(shù)碼管的顯示采用循環(huán)掃描的方式,每隔一秒顯示的秒數(shù)減少 1,具體程序如下:if(DJSA0) /A 車道倒計時 TempData1=dofly_DuanMa(DJSA/10); TempData0=dofly_DuanMa(DJSA%10); DisplayA();/從第一位顯示,共顯示 2 位 el
33、se if(wA=2) DJSA=lightA0;wA=0; else wA+;DJSA=lightAwA; if(DJSB0) /B 車道倒計時 TempData1=dofly_DuanMa(DJSB/10); TempData0=dofly_DuanMa(DJSB%10); DisplayB();/從第一位顯示,共顯示 2 位 else if(wB=2)廣東省電子設計大賽16廣東省電子設計大賽 DJSB=lightB0;wB=0; else wB+;DJSB=lightBwB; void DisplayA() 數(shù)碼顯示函數(shù) CH1=1;CH2=0;DataPort=TempData0; D
34、elay(200); CH1=0;CH2=1;DataPort=TempData1; Delay(200); CH1=1;CH2=1;void DisplayB() CH3=1;CH4=0;DataPort=TempData0; Delay(200); CH3=0;CH4=1;DataPort=TempData1; Delay(200); CH3=1;CH4=1;4.9 液晶屏顯示液晶屏顯示液晶屏的顯示包括了顯示 A、B 兩車道的動態(tài)統(tǒng)計車輛數(shù)和 50 秒統(tǒng)計的最終車流量,具體的程序如下: if(ZDJS10000) lastA=numA;lastB=numB; LCD_Init(); LCD
35、_Write_String(0,0, EW SN);LCD_Write_String(1,1,LCar:); shuliang1=lastA;shuliang2=lastB; a=shuliang1/10;b=shuliang1%10;c=shuliang2/10;d=shuliang2%10;LCD_Write_Char(6,1,dofly_codea);/依次顯示輸入字符 LCD_Write_Char(7,1,dofly_codeb); LCD_Write_Char(11,1,dofly_codec);LCD_Write_Char(12,1,dofly_coded);廣東省電子設計大賽17
36、廣東省電子設計大賽 else LCD_Init(); LCD_Write_String(0,0, EW SN);LCD_Write_String(1,1,Car:); shuliang1=numA;shuliang2=numB; a=shuliang1/10;b=shuliang1%10;c=shuliang2/10;d=shuliang2%10; / if(i=0)&(j=0)/回到第一個字符時清屏/LCD_Clear();/清屏 LCD_Write_Char(6,1,dofly_codea);/依次顯示輸入字符 LCD_Write_Char(7,1,dofly_codeb); LC
37、D_Write_Char(11,1,dofly_codec);LCD_Write_Char(12,1,dofly_coded);五五 軟硬件聯(lián)合調試軟硬件聯(lián)合調試5.1 傳感器調試傳感器調試 接通傳感器電源,將其引腳與指示燈相連,用模型車在其上面經過,通過觀察指示燈亮滅判斷是否工作正常??煞磸停啻卧囼?,確保傳感器符合設計要求。5.2 交通燈電路的調試交通燈電路的調試通過單片機 P0.P2 系列管腳將設計好的數(shù)據(jù)輸入到數(shù)碼管與LED 燈,觀察其是否符合邏輯要求。反復進行調試,找出各種可能出現(xiàn)的顯示不正確,無法顯示等問題。5.3 系統(tǒng)總調試系統(tǒng)總調試通過設計一模擬方案進行調試(說明:系統(tǒng)調試時由
38、于模型車限制,車輛數(shù),紅綠燈的秒數(shù)等作了適當簡化處理,在實際應用中通過更廣東省電子設計大賽18廣東省電子設計大賽 改軟件數(shù)據(jù)可以方便地進行調節(jié)。同時,更直觀的調試請參照視頻演示。 ) 系統(tǒng)調試方案:一,設定系統(tǒng)初始值為紅燈 28 秒,黃燈 4 秒,綠燈 24 秒,兩車道相同;二 設定一道路車流量為 16 輛/MIN,另一道路車流量為 6 輛/MIN,用模型車給傳感器輸入數(shù)據(jù);三 一分鐘統(tǒng)計車流量結束,系統(tǒng)根據(jù)車流量差值 10 輛,改變其中16 輛車的車道紅綠燈變?yōu)椋杭t燈 18 秒,黃燈 4 秒,綠燈 34 秒,另一車道紅綠燈變?yōu)椋杭t燈 38 秒,黃燈 4 秒,綠燈 18 秒。5.45.4 結果
39、分析結果分析本系統(tǒng)已 STC89C52 為核心,開發(fā)調試階段采用軟硬件相互調試,課大大提高調試效率。設計的交通燈采用 2 位 10 段數(shù)碼管,可用于城市中比較繁忙的交通十字路口。對調試的結果表明,該系統(tǒng)提前統(tǒng)計車流量,實時動態(tài)變化功能完全實現(xiàn),可實際作用于城市交通系統(tǒng)中,動態(tài)改變交通燈的模式,達到最大化的道路暢通。六六 結論結論本系統(tǒng)就是充分利用了 STC89C52 與其他功能芯片的引腳。系統(tǒng)采用STC89C52 系列單片機和可編程并行 I/O 接口芯片為中心器件來設計交通燈控制器,實現(xiàn)了紅黃綠燈循環(huán)點亮,提前感知車流量變化,并預先作出動態(tài)調整的功能。廣東省電子設計大賽19廣東省電子設計大賽
40、由于使用的是單片機作為核心的控制元件,使得電路的可靠性比較高,功能也比較強大,而且可以隨時的更新系統(tǒng),進行不同狀態(tài)的組合。但是在我們設計和調試的過程中,也發(fā)現(xiàn)了一些問題,例如紅燈和綠燈的切換還不夠迅速,紅綠燈規(guī)則的效率還不是很高,這需要在實踐中進一步完善。參考文獻參考文獻1 李朝青,單片機原理及接口技術(修訂版).北京:北京航空航天大學出版社19982 韓太林,李紅,于林韜;單片機原理及應用(第3版) 。電子工業(yè)出版社,20053 劉樂善,歐陽星明,劉學清;微型計算機接口技術及應用。華中理工大學出版社,20034 胡漢才,單片機原理及其接口技術。清華大學出版社,20005 李廣弟,單片機基礎.
41、北京:北京航空航天大學出版社,20006 何立民,單片機應用技術大全.北京:北京航空航天大學出版社, 19987 張毅坤,單片微型計算機原理及應用,西安電子科技大學出版社 1998 8 余錫存,曹國華.單片機原理及接口技術M.陜西:西安電子科技大學出版社,2000.79 雷麗文,微機原理與接口技術M.北京:電子工業(yè)出版社,1997.210 肖洪兵,跟我學用單片機. 北京:北京航空航天大學出版社,2002.8 11 何立民,單片機高級教程 第1版北京:北京航空航天大學出版社,2001 12 趙曉安,MCS-51單片機原理及應用. 天津:天津大學出版社,2001.3 13 徐惠民、安德寧,單片微型
42、計算機原理接口與應用 第1版 北京:北廣東省電子設計大賽20廣東省電子設計大賽 京郵電大學出版社,1996附錄附錄 I I 作品外觀圖(圖作品外觀圖(圖 1212)廣東省電子設計大賽21廣東省電子設計大賽 圖圖 1212 作品成型外觀圖作品成型外觀圖附錄附錄 IIII 程序清單程序清單#include 廣東省電子設計大賽22廣東省電子設計大賽 #define DataPort P1sbit AHWc=P21;sbit AHWz=P02;sbit BHWc=P20;sbit BHWz=P07;sbit CH1=P34;/定義高位使能端口 sbit CH2=P35;/定義低位使能端口sbit CH
43、3=P36;/定義高位使能端口 sbit CH4=P37;/定義低位使能端口sbit Aledred=P24;sbit Aledgreen=P25;sbit Bledred=P26;sbit Bledgreen=P27;sbit ledyellowA=P30;sbit ledyellowB=P31;int red=28,green=24,yellow=4,DJSA=28,DJSB=24,wA=0,wB=1;unsigned char code dofly_DuanMa10=0 xC0,0 xF9,0 xA4,0 xB0,0 x99,0 x92,0 x82,0 xF8,0 x80,0 x90;/
44、 顯示段碼值 09unsigned char TempData2; /存儲顯示值的全局變量void DisplayA();/數(shù)碼管動態(tài)掃描廣東省電子設計大賽23廣東省電子設計大賽 void DisplayB();/數(shù)碼管動態(tài)掃描int NUMA1=0,NUMA2=0,NUMA3=0,NUMB1=0,NUMB2=0,NUMB3=0,numA=0,numB=0,lastA=0,lastB=0,ZDJS=0,MJS=0;int lightA3,lightB3;void Delay(unsigned int t); /延時函數(shù)void T0ISR(void) interrupt 3/定時函數(shù) TL1=
45、0 x78; TH1=0 xEC; ZDJS+; MJS+;if(ZDJS=22400)ZDJS=0;NUMA1=0;NUMA2=0;NUMA3=0;NUMB1=0;NUMB2=0;NUMB3=0;numA=0;numB=0;if(MJS=200) -DJSA;-DJSB;MJS=0; /*主函數(shù)*/void main()廣東省電子設計大賽24廣東省電子設計大賽 TMOD=0 x10;TL1=0 x78;TH1=0 xEC; TR1=1; ET1=1;IP=0 x05;IT0=1;IT1=1;EX0=1;EX1=1;EA=1;lightA0=red;lightA1=green;lightA2=
46、yellow;lightB0=red;lightB1=green;lightB2=yellow;while(1) if(ZDJS10000) lastA=numA;廣東省電子設計大賽25廣東省電子設計大賽 lastB=numB; green=24+lastA-lastB;/計算倒計時時間 red=28-lastA+lastB; if(green38) green=38;red=14; lightA0=red; lightA1=green; lightA2=yellow; lightB0=green+4; lightB1=red-4; lightB2=yellow; if(wA=0) /A 車道
47、紅綠燈 Aledred=0;Aledgreen=1;ledyellowA=1; else if(wA=1)Aledred=1;Aledgreen=0;ledyellowA=1; else if(wA=2)Aledred=1;Aledgreen=1;ledyellowA=0; 廣東省電子設計大賽26廣東省電子設計大賽 if(wB=0) /B 車道紅綠燈Bledred=0;Bledgreen=1;ledyellowB=1; else if(wB=1)Bledred=1;Bledgreen=0;ledyellowB=1; else if(wB=2)Bledred=1;Bledgreen=1;ledy
48、ellowB=0; if(DJSA0) /A 車道倒計時 TempData1=dofly_DuanMa(DJSA/10); TempData0=dofly_DuanMa(DJSA%10); DisplayA();/從第一位顯示,共顯示 2 位 else if(wA=2) DJSA=lightA0;wA=0; else wA+;DJSA=lightAwA; if(DJSB0) /B 車道倒計時 廣東省電子設計大賽27廣東省電子設計大賽 TempData1=dofly_DuanMa(DJSB/10); TempData0=dofly_DuanMa(DJSB%10); DisplayB();/從第一
49、位顯示,共顯示 2 位 else if(wB=2) DJSB=lightB0;wB=0; else wB+;DJSB=lightBwB; void Delay(unsigned int t)/延時函數(shù) while(-t);/*-數(shù)碼顯示函數(shù)-*/void DisplayA() CH1=1;CH2=0;DataPort=TempData0;廣東省電子設計大賽28廣東省電子設計大賽 Delay(200); CH1=0;CH2=1;DataPort=TempData1; Delay(200); CH1=1;CH2=1;void DisplayB() CH3=1;CH4=0;DataPort=Temp
50、Data0; Delay(200); CH3=0;CH4=1;DataPort=TempData1; Delay(200); CH3=1;CH4=1;void ISR0(void) interrupt 0if(ZDJS10000)if(AHWc=0) /統(tǒng)計 A 車道車流量 NUMA3+; else if(AHWz=0) NUMA2+;else NUMA1+;廣東省電子設計大賽29廣東省電子設計大賽 numA=NUMA1+2*NUMA2+3*NUMA3;void ISR1(void) interrupt 2if(ZDJS10000)if(BHWc=0) /統(tǒng)計 B 車道車流量 NUMB3+;
51、else if(BHWz=0) NUMB2+; else NUMB1+; numB=NUMB1+2*NUMB2+3*NUMB3;/*分隔線*/#include #include#define DataPort P0#define RS_CLR RS=0 #define RS_SET RS=1#define RW_CLR RW=0 #define RW_SET RW=1 廣東省電子設計大賽30廣東省電子設計大賽 #define EN_CLR EN=0#define EN_SET EN=1int shuliang1,shuliang2,a,b,c,d; sbit RS = P24; /定義端口 s
52、bit RW = P25;sbit EN = P26;sbit AHWc=P21;sbit BHWc=P20;sbit AHWd=P23;sbit BHWd=P22;sbit AHWz=P12;sbit BHWz=P17;sbit BZD=P33;sbit AZD=P32;int NUMA1=0,NUMA2=0,NUMA3=0,NUMB1=0,NUMB2=0,NUMB3=0,numA,numB,lastA=0,lastB=0,ZDJS=0; void T0ISR(void) interrupt 3/定時函數(shù) TL1=0 x78; TH1=0 xEC; ZDJS+; MJS+;廣東省電子設計大賽
53、31廣東省電子設計大賽 if(ZDJS=22400)ZDJS=0;NUMA1=0;NUMA2=0;NUMA3=0;NUMB1=0;NUMB2=0;NUMB3=0;numA=0;numB=0; unsigned char code dofly_code=0,1,2,3,4,5,6,7,8,9,a,B,C,D,E,F;/轉換成液晶顯示的字符/*- uS 延時函數(shù),含有輸入?yún)?shù) unsigned char t,無返回值 unsigned char 是定義無符號字符變量,其值的范圍是 0255 這里使用晶振 12M,精確延時請使用匯編,大致延時 長度如下 T=tx2+5 uS -*/void Dela
54、yUs2x(unsigned char t) while(-t);/*- mS 延時函數(shù),含有輸入?yún)?shù) unsigned char t,無返回值 unsigned char 是定義無符號字符變量,其值的范圍是 0255 這里使用晶振 12M,精確延時請使用匯編-*/void DelayMs(unsigned char t) 廣東省電子設計大賽32廣東省電子設計大賽 while(t-) /大致延時 1mS DelayUs2x(245); DelayUs2x(245); /*- 判斷函數(shù)-*/ bit LCD_Check_Busy(void) DataPort= 0 xFF; RS_CLR; RW
55、_SET; EN_CLR; _nop_(); EN_SET; return (bit)(DataPort & 0 x80); /*- 寫入命令函數(shù)-*/廣東省電子設計大賽33廣東省電子設計大賽 void LCD_Write_Com(unsigned char com) while(LCD_Check_Busy(); /忙則等待 RS_CLR; RW_CLR; EN_SET; DataPort= com; _nop_(); EN_CLR; /*- 寫入數(shù)據(jù)函數(shù)-*/ void LCD_Write_Data(unsigned char Data) while(LCD_Check_Busy(); /忙則等待 RS_SET; RW_CLR; EN_SET; DataPort= Data; _nop_(); EN_CLR; 廣東省電子設計大賽34廣東省電子設計大賽 /*- 清屏函數(shù)-*/void LCD_Clear(void) / /LCD_Write_Com(0 x01); /DelayMs(1); /*- 寫入字符串函數(shù)-*/ void LCD_Write_String(unsigned char x,unsigned char y,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 自建樓房買賣合同
- 房產抵押反擔保合同
- 企業(yè)信息化管理系統(tǒng)建設與維護合同
- 體育賽事活動策劃與執(zhí)行合同
- 養(yǎng)豬場生產經營合同
- 重慶護理職業(yè)學院《化工儀表自動化》2023-2024學年第二學期期末試卷
- Unit 2 Topic 1 Section C 教學設計 2024-2025學年仁愛科普版八年級英語上冊
- 沈陽科技學院《漆畫創(chuàng)作》2023-2024學年第二學期期末試卷
- 《人的正確的思想從哪里來》教學設計
- 哈爾濱學院《文化創(chuàng)意理論與實踐》2023-2024學年第二學期期末試卷
- 《會計信息系統(tǒng)應用》-課件 王新惠 模塊二 供應鏈管理系統(tǒng)
- 美容院會員積分營銷方案
- 水利水電工程金屬結構制作與安裝安全技術規(guī)程
- DL5000-火力發(fā)電廠設計技術規(guī)程
- 第一節(jié)-原核生物與真核生物DNA的復制課件
- 2024年4月自考03708中國近現(xiàn)代史綱要試題
- 深部熱療與免疫治療聯(lián)合治療腫瘤
- 2024年貴銀金融租賃公司招聘筆試參考題庫附帶答案詳解
- 眼電生理在視網(wǎng)膜疾病診斷中的應用
- 《汽車電氣設備構造與維修》 (第4版) 課件 第四章 發(fā)動機電器
- 部編版語文六年級下冊第五單元大單元教學設計核心素養(yǎng)目標
評論
0/150
提交評論