版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 摘 要</b></p><p> 當(dāng)前,在世界范圍內(nèi),一個(gè)以微電子技術(shù),計(jì)算機(jī)和通信技術(shù)為先導(dǎo)的,以信息技術(shù)和信息產(chǎn)業(yè)為中心的信息革命方興未艾。而計(jì)算機(jī)技術(shù)怎樣與實(shí)際應(yīng)用更有效的結(jié)合并有效的發(fā)揮其作用是科學(xué)界最熱門(mén)的話(huà)題,也是當(dāng)今計(jì)算機(jī)應(yīng)用中空前活躍的領(lǐng)域。本文研究的是以AT89C51單片機(jī)為控制器的智能交通燈控制系統(tǒng),該系統(tǒng)通過(guò)紅外接收器接收信號(hào)實(shí)現(xiàn)特種車(chē)
2、輛(119、120等)自動(dòng)放行;通過(guò)車(chē)輛檢測(cè)電路采集路況信號(hào),經(jīng)單片機(jī)處理后,分配各車(chē)道的綠燈時(shí)間,實(shí)現(xiàn)車(chē)流動(dòng)態(tài)調(diào)節(jié),并由74HC244驅(qū)動(dòng)LED數(shù)碼管顯示通行倒計(jì)時(shí);左拐、右拐、直行及行人的通行指示燈采用雙色高亮度發(fā)光二極管,設(shè)計(jì)中還添加了聲音提示電路,方便盲人過(guò)人行道。本設(shè)計(jì)是以軟件和硬件相結(jié)合的方式來(lái)實(shí)現(xiàn),文中給出了具體的硬件電路圖和軟件流程圖及程序源碼。</p><p> 關(guān) 鍵 詞:智能交通燈,A
3、T89C51,車(chē)輛檢測(cè),LED</p><p> Abstract </p><p> At present, in the world scope, a microelectronics technology, computer and communication technology as the forerunner, information technology and in
4、formation industry as the center of the information revolution is in the ascendant. And how computer technology and practical application is the combination of more effective and effective play its role is the scientific
5、 community the most popular topic, also is the computer application in unprecedented active field.This study is based on AT89C51 as</p><p> Keywords: intelligent traffic light, AT89C51, vehicle detection, L
6、ED</p><p><b> 第一章 引言</b></p><p> 交通燈的歷史要追溯到19世紀(jì)初,在英國(guó)中部的約克城,紅、綠裝分別代表女性的不同身份。其中,著紅裝的女人表示我已結(jié)婚,而著綠裝的女人則是未婚者。后來(lái),英國(guó)倫敦議會(huì)大廈 前經(jīng)常發(fā)生馬車(chē)軋人的事故,于是人們受到紅綠裝啟發(fā),1868年12月10日,信號(hào)燈家族的第一個(gè)成員就在倫敦議會(huì)大廈的廣場(chǎng)上誕生了
7、,由當(dāng)時(shí)英國(guó)機(jī)械師 德?哈特設(shè)計(jì)、制造的燈柱高7米,身上掛著一盞紅、綠兩色的提燈--煤氣交通信號(hào)燈,這是城市街道的第一盞信號(hào)燈。在燈的腳下,一名手持長(zhǎng)桿的警察隨心所 欲地牽動(dòng)皮帶轉(zhuǎn)換提燈的顏色。后來(lái)在信號(hào)燈的中心裝上煤氣燈罩 ,它的前面有兩塊紅、綠玻璃交替遮擋。不幸的是只面世23天的煤氣燈突然爆炸自滅,使一位正在值勤的警察也因此斷送了性命。</p><p> 從此,城市的交通信號(hào)燈被取締了。直到1914年,在美
8、國(guó)的克利夫蘭市才率先恢復(fù)了紅綠燈,不過(guò),這時(shí)已是“電氣信號(hào)燈”。稍后又在紐約和芝加哥等城市,相繼重新出現(xiàn)了交通信號(hào)燈。</p><p> 在人類(lèi)的生活、工作環(huán)境中,交通扮演著極其重要的角色,人們無(wú)時(shí)無(wú)刻不與交通打交道。隨著我國(guó)國(guó)民經(jīng)濟(jì)的迅速發(fā)展和人口的快速增加,人們對(duì)各種交通車(chē)輛的需求更是越來(lái)越大,交通工具的迅猛發(fā)展以及道路資源的局限性,給城市交通帶來(lái)巨大的壓力,交通擁堵問(wèn)題已成為影響現(xiàn)代城市可持續(xù)發(fā)展的重要因
9、素。要保證高效安全的交通秩序,除了制定一系列的交通規(guī)則,還必須通過(guò)一定的技術(shù)手段加以實(shí)現(xiàn)。</p><p> 作為車(chē)輛通行瓶頸所在的十字路口,通過(guò)研究其車(chē)輛通行規(guī)律,找出提高其車(chē)輛通行效率,對(duì)緩解交通擁堵,提高道路暢通率具有十分現(xiàn)實(shí)的意義。國(guó)內(nèi)的在十字路口的交通燈,一般用紅 、綠 、黃三種顏色的指示燈和一個(gè)倒計(jì)時(shí)的顯示計(jì)時(shí)器來(lái)控制行車(chē)。且絕大多數(shù)交通燈的時(shí)間都是設(shè)定好的。</p><p>
10、; 現(xiàn)在十字路口的交通燈存在著兩車(chē)道的車(chē)輛輪流放行時(shí)間相同且固定,一般主干道車(chē)輛較多,放行時(shí)間長(zhǎng)些;副干道車(chē)輛較少 ,放行時(shí)間短些的問(wèn)題,甚至可能出現(xiàn)一條車(chē)道上排著很長(zhǎng)的車(chē)隊(duì),而另一條車(chē)道上沒(méi)有車(chē)輛的情況;再者沒(méi)有考慮到當(dāng)有緊急車(chē)輛(如119、120)通過(guò)時(shí),兩車(chē)道應(yīng)自動(dòng)轉(zhuǎn)為特種車(chē)輛放行,其他車(chē)輛禁止通行的狀態(tài);還有欠缺對(duì)盲人這個(gè)特殊群體穿過(guò)道口時(shí)所遇困難的考慮。傳統(tǒng)的交通燈控制系統(tǒng)存在的這些缺點(diǎn),說(shuō)明傳統(tǒng)的交通燈控制系統(tǒng)已經(jīng)不能適應(yīng)
11、當(dāng)前城市交通發(fā)展的要求,不能最高效地利用城市的交通道路資源。</p><p> 城市交通控制系統(tǒng)是一個(gè)綜合度高而又復(fù)雜的問(wèn)題,關(guān)系到政策、機(jī)構(gòu)、體制、管理、成本、基礎(chǔ)設(shè)施建設(shè)和投資各方面問(wèn)題。道路交通控制系統(tǒng)在近百年的發(fā)展中,經(jīng)歷了從手動(dòng)到自動(dòng)、從無(wú)感應(yīng)控制到有感應(yīng)控制、從固定配時(shí)到靈活配時(shí)、從單點(diǎn)控制到干線(xiàn)控制、從區(qū)域控制到網(wǎng)絡(luò)控制的長(zhǎng)遠(yuǎn)發(fā)展歷程。我國(guó)的交通是從新中國(guó)成立之后才開(kāi)始發(fā)展的,起步較晚,但隨著我國(guó)
12、經(jīng)濟(jì)和社會(huì)高速發(fā)展對(duì)交通的需求急劇增加,對(duì)原有交通控制系統(tǒng)提出了嚴(yán)峻的挑戰(zhàn)。城市交通發(fā)展的規(guī)劃應(yīng)在廣泛借鑒和吸取國(guó)外先進(jìn)經(jīng)驗(yàn)的基礎(chǔ)上,結(jié)合我國(guó)城市交通運(yùn)輸?shù)默F(xiàn)狀和存在的問(wèn)題,建立并健全適合我國(guó)交通的城市交通控制系統(tǒng)。</p><p> 近年來(lái),國(guó)家雖然不斷加大城市道路建設(shè)的力度,但仍趕不上城市機(jī)動(dòng)車(chē)的增長(zhǎng)速度,我國(guó)城市仍普遍存在道路面積偏低的問(wèn)題,這也是制約著我國(guó)大城市發(fā)展的一個(gè)重要原因。隨著交通需求越來(lái)越旺盛
13、,車(chē)多、路多了,但運(yùn)營(yíng)成了瓶頸,運(yùn)輸效率逐步下降。我國(guó)與發(fā)達(dá)國(guó)家在車(chē)輛、道路、交通管理系統(tǒng)、人工智能技術(shù)在交通管制中的應(yīng)用、信息采集和提取等方面存在著很大的差距。由于交通控制系統(tǒng)不健全等原因,我國(guó)交通道口的交通事故率居高不下,且隨著城市交通運(yùn)量逐年的增長(zhǎng),城市車(chē)流行駛速度逐年下降,這些都是由于交通通行不佳。</p><p> 針對(duì)整個(gè)交通控制系統(tǒng)的發(fā)展?fàn)顩r,本設(shè)計(jì)根據(jù)道路交通擁擠,十字路口經(jīng)常出現(xiàn)擁堵的情況,運(yùn)
14、用智能、集成,且功能強(qiáng)大的單片機(jī)芯片為控制核心,設(shè)計(jì)出了十字路口智能交通燈控制系統(tǒng),以改善十字路口實(shí)時(shí)通行狀況。</p><p> 本設(shè)計(jì)與傳統(tǒng)交通燈比較,有以下幾點(diǎn)改進(jìn)措施:1)可根據(jù)十字路口的各道口車(chē)流量自動(dòng)調(diào)節(jié)通行時(shí)間;2)擁有車(chē)流量檢測(cè)電路和特種車(chē)輛自動(dòng)通行控制模塊,設(shè)計(jì)緊急切換開(kāi)關(guān);3)設(shè)置盲人提示音電路,考慮到社會(huì)弱勢(shì)群體通行問(wèn)題;4)進(jìn)行軟件系統(tǒng)的設(shè)計(jì),采用匯編語(yǔ)言編寫(xiě),簡(jiǎn)單、方便。</p&
15、gt;<p> 智能交通燈控制系統(tǒng)將有效地解決日趨嚴(yán)重的道路擁擠現(xiàn)象,緩解城市的交通壓力,減少交通事故發(fā)生率;減少了交通管理人員的大部分工作量,并為人們的出行節(jié)省了大量時(shí)間,創(chuàng)造出更多的社會(huì)價(jià)值,提高經(jīng)濟(jì)效益。</p><p> 第二章 方案設(shè)計(jì)及論證</p><p> 2.1 方案設(shè)計(jì)論證</p><p> 2.1.1 交通燈控制方法簡(jiǎn)
16、介</p><p> 目前,國(guó)內(nèi)的交通燈設(shè)計(jì)方案有很多,有應(yīng)用PLC對(duì)交通燈控制系統(tǒng)實(shí)現(xiàn)控制的設(shè)計(jì);有應(yīng)用CPLD實(shí)現(xiàn)對(duì)交通燈控制系統(tǒng)的設(shè)計(jì);有應(yīng)用單片機(jī)對(duì)交通燈控制系統(tǒng)實(shí)現(xiàn)控制的設(shè)計(jì)[4]。交通燈一般設(shè)置在十字路口,用紅、綠兩種顏色的指示燈,并加上顯示倒計(jì)時(shí)的計(jì)時(shí)器來(lái)控制車(chē)輛通行。本設(shè)計(jì)采用標(biāo)準(zhǔn)AT89C51單片機(jī)作為控制器,采用3位LED數(shù)碼管顯示通行倒計(jì)時(shí);左拐、右拐、直行及行人的通行指示燈采用的是高亮發(fā)
17、光二極管;LED顯示采用動(dòng)態(tài)掃描,以節(jié)省端口數(shù)。特種車(chē)輛通行采用紅外線(xiàn)發(fā)射及接收識(shí)別方法實(shí)施中斷完成,采用霍爾車(chē)輛檢測(cè)傳感器檢測(cè)電路完成車(chē)流量大小的檢測(cè)。由于AT89C51單片機(jī)自身帶有2個(gè)定時(shí)/計(jì)數(shù)器、5個(gè)中斷源,端口剛好滿(mǎn)足要求。該系統(tǒng)具有電路簡(jiǎn)單,設(shè)計(jì)方便,顯示亮度高,耗電少,可靠性高等優(yōu)點(diǎn)。</p><p> 2.1.2 交通燈控制系統(tǒng)的總體方案設(shè)計(jì)</p><p> 本設(shè)計(jì)
18、研究的是基于AT89C51單片機(jī)的交通燈智能控制系統(tǒng)。根據(jù)交通控制系統(tǒng)的設(shè)計(jì)原理,闡述了硬件和軟件方面開(kāi)發(fā)的整個(gè)過(guò)程。主控系統(tǒng)采用AT89C51單片機(jī)作為控制器,控制通行倒計(jì)時(shí)及右拐、右拐、直行、行人的通行,占用端口少,耗電也最小。系統(tǒng)電源采用獨(dú)立的+5V穩(wěn)壓電源,有各種成熟電路可供選用,使此方案可靠穩(wěn)定[5]。該設(shè)計(jì)可直接在I/O口上接按鍵開(kāi)關(guān),精簡(jiǎn)并優(yōu)化了電路。結(jié)合實(shí)際情況,顯示界面采用點(diǎn)陣LED數(shù)碼管動(dòng)態(tài)掃描的方法,滿(mǎn)足了倒計(jì)時(shí)的
19、時(shí)間顯示輸出和狀態(tài)燈提示信息輸出的要求,減少系統(tǒng)的復(fù)雜度。</p><p> 2.2 交通燈控制系統(tǒng)硬件框圖</p><p> 該交通燈控制系統(tǒng)有以下幾個(gè)部分組成:車(chē)輛檢測(cè)、緊急控制、單片機(jī)、驅(qū)動(dòng)和顯示電路[6]。如圖2.1所示:</p><p> 圖 2.1系統(tǒng)硬件組成總框圖</p><p> 2.3 交通燈控制系統(tǒng)工作原理&l
20、t;/p><p> 本系統(tǒng)運(yùn)用單片機(jī)對(duì)交通燈控制系統(tǒng)實(shí)施控制,通過(guò)直接控制信號(hào)燈的狀態(tài)變化,指揮交通的具體運(yùn)行,運(yùn)用了LED數(shù)碼管顯示倒計(jì)時(shí)以提醒行駛者,更添加了盲人提示音電路,方便視力障礙群體通行,更具人性化。在此基礎(chǔ)上,加入了特種車(chē)輛自動(dòng)通行控制模塊和車(chē)流量檢測(cè)電路為系統(tǒng)采集數(shù)據(jù),經(jīng)單片機(jī)進(jìn)行具體處理,及時(shí)調(diào)整通行方向。由此,本設(shè)計(jì)系統(tǒng)以單片機(jī)為控制核心,構(gòu)成最小系統(tǒng),根據(jù)特種車(chē)輛自動(dòng)通行控制模塊、車(chē)輛檢測(cè)模塊
21、和按鍵設(shè)置模塊等產(chǎn)生輸入,由信號(hào)燈狀態(tài)模塊,LED倒計(jì)時(shí)模塊和盲人提示音模塊輸出[7]。系統(tǒng)進(jìn)入工作狀態(tài),LED數(shù)碼管實(shí)時(shí)顯示數(shù)據(jù)倒計(jì)時(shí),執(zhí)行交通燈狀態(tài)顯示控制,在此過(guò)程中若有控制信號(hào)和實(shí)時(shí)車(chē)流量檢測(cè)信號(hào),可對(duì)異常狀態(tài)進(jìn)行實(shí)時(shí)控制,隨時(shí)調(diào)用中斷,達(dá)到修正通行時(shí)間滿(mǎn)足不同時(shí)間不同路況的需求。</p><p> 第三章 交通燈控制系統(tǒng)硬件設(shè)計(jì)</p><p> 3.1 系統(tǒng)硬件組成及原
22、理圖</p><p> 根據(jù)要實(shí)現(xiàn)的具體功能,經(jīng)過(guò)比較,我選用AT89C51單片機(jī)及外圍器件構(gòu)成最小控制系統(tǒng),4組雙色燈構(gòu)成信號(hào)燈指示模塊,東西南北方向分別構(gòu)成倒計(jì)時(shí)顯示模塊,CCD采集車(chē)輛數(shù)量數(shù)據(jù),紅外線(xiàn)接收器接收中斷信號(hào),使實(shí)時(shí)中斷來(lái)響應(yīng)特種車(chē)輛的通行要求,接LED顯示器[8]。硬件原理圖如圖3.1所示:</p><p> 圖3.1硬件電路原理圖</p><p&
23、gt; 3.2 單片機(jī)AT89C51</p><p> 3.2.1單片機(jī)的發(fā)展歷程</p><p> 單片機(jī)微型計(jì)算機(jī)是微型計(jì)算機(jī)的一個(gè)重要分支,也是頗具生命力的機(jī)種。單片機(jī)微型計(jì)算機(jī)簡(jiǎn)稱(chēng)單片機(jī),特別適用于控制領(lǐng)域,故又稱(chēng)為微控制器。</p><p> 在MCS-51系列單片機(jī)中,有兩個(gè)子系列:51子系列和52子系列。每個(gè)子系列有諾干中型號(hào)。51系列有80
24、51、8751和8031三個(gè)型號(hào),后來(lái)經(jīng)過(guò)改進(jìn)產(chǎn)生了80c51、87c51、80c31三個(gè)型號(hào);52系列有5021、8752、8032三個(gè)型號(hào),改進(jìn)后的型號(hào)是80c52/87c52、</p><p> 80c32。改進(jìn)后的型號(hào)更加省電。52系列比對(duì)應(yīng)的51系列增加了定時(shí)器T2并將內(nèi)部程序存貯器增加到8KB。Inter公司停止生產(chǎn)MCS-51系列單片機(jī)之后將生產(chǎn)權(quán)轉(zhuǎn)讓給了許多其他公司,于是出現(xiàn)了許多與Mcs-51
25、兼容的單片機(jī)?,F(xiàn)在生產(chǎn)mcs-51兼容單片機(jī)的公司對(duì)其進(jìn)行了不同程度的改進(jìn)和提高。我們現(xiàn)在使用比較的多的是AT89C51/AT89s51等。</p><p> 通常,單片機(jī)由單塊集成電路芯片構(gòu)成,內(nèi)部包含有計(jì)算機(jī)的基本功能部件:中央處理器、存儲(chǔ)器和I/O接口電路等。因此,單片機(jī)只需要和適當(dāng)?shù)能浖巴獠吭O(shè)備相結(jié)合,便可成為一個(gè)單片機(jī)控制系統(tǒng)。</p><p> 單片機(jī)經(jīng)過(guò)1、2、3、3代
26、的發(fā)展,目前單片機(jī)正朝著高性能和多品種方向發(fā)展,它們的CPU功能在增強(qiáng),內(nèi)部資源在增多,引角的多功能化,以及低電壓底功耗。</p><p> 3.2.2單片機(jī)的特點(diǎn)</p><p> ?。?)性?xún)r(jià)比高,開(kāi)發(fā)周期短,易于產(chǎn)品化,</p><p> ?。?)集成度高,可靠性好,抗干擾性強(qiáng),</p><p> ?。?)功能完善,接口多樣,<
27、/p><p> ?。?)低功耗、低電壓</p><p> 一般電源供電電壓在5~3V范圍內(nèi)單片機(jī)都能正常工作,供電的下限可達(dá)1~2V。</p><p> (5)總線(xiàn)多樣,易于擴(kuò)展</p><p> 單片機(jī)外部的典型三總線(xiàn)結(jié)構(gòu),方便系統(tǒng)構(gòu)擴(kuò)展,構(gòu)成各種規(guī)模的應(yīng)用系統(tǒng)。外部總線(xiàn)增加了I2C及SPI等串行總線(xiàn)方式, 可根據(jù)需要進(jìn)行并行或者串行擴(kuò)展
28、。</p><p> 3.2.3 AT89C51的主要性能</p><p> 內(nèi)含4Kb可重編程的FPEROM;</p><p> 與MCS-51產(chǎn)品指令系統(tǒng)完全兼容;</p><p> 128×8位的內(nèi)部RAM;</p><p> 4個(gè)8位(32根)雙向可位尋址的I/O端口;</p>
29、<p> 2個(gè)16位的計(jì)數(shù)/定時(shí)器;</p><p> 全雙工方式的串行通道(UART);</p><p><b> 6個(gè)中斷源;</b></p><p> 5個(gè)向量二級(jí)中斷結(jié)構(gòu);</p><p> 最高時(shí)鐘振蕩頻率可達(dá)12MHz;</p><p> 指令集中64條為單周期
30、指令,支持6種尋址方式,共111條指令;</p><p> 低功耗空閑和掉電方式;</p><p> 片內(nèi)振蕩器和時(shí)鐘電路。</p><p> 3.2.4 單片機(jī)的引腳</p><p> AT89C51為雙列直插(DIP)式封裝的51單片機(jī)芯片,有40條引腳,其引腳示意及功能分類(lèi)如圖3.2所示。</p><p>
31、; 圖3.2 89C51單片機(jī)引腳圖</p><p> 各引腳功能說(shuō)明如下:</p><p><b> (1)主電源引腳</b></p><p> Vcc(40腳):接+5(1±20﹪)V電源正端;</p><p> Vss(20腳):接地。</p><p><b>
32、; ?。?)I/O引腳</b></p><p> P0口(39~32腳):P0.0~P0.7統(tǒng)稱(chēng)為P0口。P0口是一組8位漏極開(kāi)路型雙向I/O口,分時(shí)復(fù)用為低8位地址總線(xiàn)和雙向數(shù)據(jù)總線(xiàn)。作為輸出口用時(shí),每位能吸收電流的方式驅(qū)動(dòng)8個(gè)邏輯門(mén)電路,對(duì)端口P0寫(xiě)“1”時(shí),可作為高阻抗輸入端用。在訪(fǎng)問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這組端口線(xiàn)分時(shí)轉(zhuǎn)換地址(低8位)和數(shù)據(jù)總線(xiàn)復(fù)用,在訪(fǎng)問(wèn)期間激活內(nèi)部上拉電阻。在FLASH編程
33、時(shí),P0口作為原碼輸入口,當(dāng)Flash進(jìn)行校驗(yàn)時(shí),P0口輸出原碼,此時(shí)P0外部必須被拉高。</p><p> P1口(1~8腳):P1.0~P1.7統(tǒng)稱(chēng)為P1口,可作為準(zhǔn)雙向I/O口使用。P1是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門(mén)電流。對(duì)端口寫(xiě)“1”,通過(guò)內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。P1口被外部下拉為低電平時(shí),輸出電流,是因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部
34、信號(hào)拉低時(shí)會(huì)輸出一個(gè)電流。在Flash編程和校驗(yàn)時(shí),P1口作為第八位地址接收。</p><p> P2口(21~28腳):P2.0~P2.7統(tǒng)稱(chēng)為P2口,一般作為準(zhǔn)雙向I/O使用。P2是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口。P2的輸出緩沖器可驅(qū)動(dòng)4個(gè)TTL邏輯門(mén)電路。當(dāng)對(duì)P2端口寫(xiě)“1”時(shí),內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。作輸入口使用時(shí),由于內(nèi)部存在上拉電阻,某個(gè)引腳被外部信號(hào)拉低時(shí)會(huì)輸出一個(gè)電
35、流(IIL)。在接有片外存儲(chǔ)器或擴(kuò)展I/O口且尋址范圍超過(guò)256B時(shí),P2口用作高8位地址總線(xiàn)。當(dāng)給出地址為“1”時(shí),它就利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀/寫(xiě)時(shí),P2口便輸出其特殊功能寄存器的內(nèi)容。在FLASH編程和校驗(yàn)時(shí),P2口接收高八位地址信號(hào)和控制信號(hào)。</p><p> P3口(10~17腳):P3.0~P3.7統(tǒng)稱(chēng)為P3口。P3口是一組帶有內(nèi)部上拉電阻的8位雙向I/O口。P3口的輸出
36、緩沖器可驅(qū)動(dòng)4個(gè)TTL邏輯門(mén)電路接收輸出電流。當(dāng)P3口寫(xiě)“1”時(shí),通過(guò)內(nèi)部的上拉電阻上拉為高電平并作為輸入口。此時(shí)由于外部下拉為低電平,P3口將輸出電流(IIL)。除作為準(zhǔn)雙向I/O口使用外,還可以將每一位用于第二功能,而且P3口的每一條引腳均可獨(dú)立定義為第一功能的輸入輸出或第二功能。P3口第二功能祥見(jiàn)表3.1 :</p><p> 表 3.1 P3口第二功能表</p><p>&l
37、t;b> ?。?)外接晶體引腳</b></p><p> XTAL1(19腳):它在單片機(jī)內(nèi)部是一個(gè)反向放大器的輸入端,構(gòu)成了片內(nèi)振蕩器。當(dāng)采用外部時(shí)鐘時(shí),HMOS單片機(jī)的該引腳應(yīng)接地;CHMOS單片機(jī)的該引腳作為外部振蕩信號(hào)的輸入端。</p><p> XTAL2(18腳):它在單片機(jī)內(nèi)部是片內(nèi)振蕩器的反向放大器的輸出端。當(dāng)采用外部時(shí)鐘時(shí),HMOS單片機(jī)的該引腳作為
38、外部振蕩信號(hào)的輸入端;CHMOS單片機(jī)的該引腳應(yīng)懸空不接。</p><p><b> (4)控制線(xiàn)</b></p><p> ALE/PROG (30腳):地址鎖存允許/編程信號(hào)。在訪(fǎng)問(wèn)片外程序存儲(chǔ)器期間,此信號(hào)可用于控制鎖存P0輸出地址總線(xiàn)的低8位,ALE以每機(jī)器周期兩次進(jìn)行信號(hào)輸出;在FLASH編程期間,此引腳用作編程脈沖PROG的輸入端。在平時(shí),ALE端以不
39、變的頻率周期輸出正脈沖信號(hào),此頻率為振蕩器頻率fosc的1/6,可作為對(duì)外輸出的時(shí)鐘脈沖或用于定時(shí)目的。但要注意的是:在訪(fǎng)問(wèn)片外數(shù)據(jù)存儲(chǔ)器期間,ALE脈沖會(huì)跳空一個(gè)。若想禁止ALE的輸出可在SFR8EH地址上置0。此時(shí), ALE執(zhí)行MOVX,MOVC指令使ALE起作用。另外,該引腳將被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無(wú)效。</p><p> PSEN(29腳):片外程序存儲(chǔ)器讀選通信號(hào)輸出端
40、,低電平有效。在由外部程序存儲(chǔ)器讀取指令或常數(shù)期間,每個(gè)機(jī)器周期內(nèi)PSEN兩次有效,P0口讀回指令或常數(shù)。當(dāng)訪(fǎng)問(wèn)內(nèi)部程序存儲(chǔ)器時(shí),PSEN信號(hào)不跳變。</p><p> RST/VPD (9腳):RST即RESET,VPD為備用電源,該引腳為單片機(jī)的上電復(fù)位或掉電保護(hù)端。當(dāng)單片機(jī)振蕩器工作時(shí),該引腳上出現(xiàn)持續(xù)兩個(gè)機(jī)器周期的高電平,就可實(shí)現(xiàn)復(fù)位操作,使單片機(jī)回復(fù)到初始狀態(tài)。上電時(shí),考慮到振蕩器有一定的起振時(shí)間,該
41、引腳上高電平必須持續(xù)10ms以上才能保證有效復(fù)位。</p><p> 當(dāng)VCC發(fā)生故障,降低到低電平規(guī)定值或掉電時(shí),該引腳可接上備用電源VPD(+5V)為內(nèi)部RAM供電,以保證RAM中的數(shù)據(jù)不丟失。</p><p> EA/VPP(30腳):EA為片外程序存儲(chǔ)器選用端,訪(fǎng)問(wèn)內(nèi)部程序存儲(chǔ)器控制信號(hào)。當(dāng)EA端接高電平時(shí),CPU訪(fǎng)問(wèn)內(nèi)部程序存儲(chǔ)器。當(dāng)EA接低電平時(shí),則在此期間外部程序存儲(chǔ)器(
42、0000H-FFFFH),則強(qiáng)調(diào)CPU訪(fǎng)問(wèn)外部存儲(chǔ)器,而不管程序計(jì)數(shù)器的內(nèi)容是多少。此外,該引腳還用做EPROM編程電壓的輸入端。在編程期間,此引腳用作21V編程電源VPP的輸入端。</p><p> 3.2.5 AT89C51的內(nèi)部結(jié)構(gòu)</p><p> 89C51單片機(jī)內(nèi)部組成結(jié)構(gòu)中包含運(yùn)算器和控制器(CPU)、片內(nèi)存儲(chǔ)器、4個(gè)并行I/O接、串行口、定時(shí)/計(jì)數(shù)器、中斷系統(tǒng)、振蕩器等
43、功能部件[10]。其內(nèi)部結(jié)構(gòu)框圖如圖3.3所示。圖中PC是程序計(jì)數(shù)器;PSW是程序狀態(tài)字寄存器;DPTR是數(shù)據(jù)指針寄存器。</p><p> 圖3.3 AT89C51單片機(jī)內(nèi)部結(jié)構(gòu)框圖</p><p><b> ·運(yùn)算器和控制器</b></p><p> 89C51的運(yùn)算器和控制器功能類(lèi)似于一般微機(jī)中的微處理器(CPU),是單片
44、機(jī)的核心部件,它決定了單片機(jī)的主要功能特性。它完成邏輯算術(shù)運(yùn)算并協(xié)調(diào)單片機(jī)其它各部分的工作。各種算術(shù)、邏輯運(yùn)算所涉及到的寄存器包括:累加器ACC、寄存器B、暫存器1(TEMP1)和暫存器2(TEMP2)、程序狀態(tài)字寄存器PSW,程序計(jì)數(shù)器PC,堆棧指針SP,數(shù)據(jù)指針寄存器DPTR等。它們位于CPU內(nèi)部,又稱(chēng)CPU專(zhuān)用寄存器,以區(qū)別于I/O接口專(zhuān)用寄存器。</p><p><b> ·存儲(chǔ)器&
45、lt;/b></p><p> MCS-51系列單片機(jī)存儲(chǔ)器組成是所謂的哈佛結(jié)構(gòu),存儲(chǔ)器的組織方式與通用單片機(jī)系統(tǒng)不同,包含程序存儲(chǔ)器與數(shù)據(jù)存儲(chǔ)器,其地址空間是相互獨(dú)立的,而不是程序存儲(chǔ)器與數(shù)據(jù)存儲(chǔ)器統(tǒng)一編址。在89C51單片機(jī)中,程序存儲(chǔ)器采用EEPROM,而數(shù)據(jù)存儲(chǔ)器采用RAM。它們又可以進(jìn)一步分成內(nèi)部或外部?jī)深?lèi)。</p><p> ①程序存儲(chǔ)器 程序存儲(chǔ)器內(nèi)部和外部是統(tǒng)一
46、連續(xù)編址的,內(nèi)部占用地址空間的低4KB,地址0000H~0FFFH,外部地址范圍1000H~FFFFH,共60KB。程序存儲(chǔ)器主要用來(lái)存放程序和常數(shù)。當(dāng)程序計(jì)數(shù)器PC由內(nèi)部ROM開(kāi)始執(zhí)行到外部ROM時(shí),會(huì)自動(dòng)尋址外接程序存儲(chǔ)器。</p><p> 程序地址空間原則上可由用戶(hù)任意安排,但復(fù)位和中斷源的程序入口地址在51系列單片機(jī)中是固定的,用戶(hù)不能改變。入口地址見(jiàn)表3.2。復(fù)位后,CPU從0000H地址開(kāi)始執(zhí)行程
47、序。其他地址為中斷服務(wù)程序入口地址,響應(yīng)某個(gè)中斷時(shí),將自動(dòng)從其對(duì)應(yīng)的入口地址執(zhí)行中斷服務(wù)程序。</p><p> 表 3.2 51單片機(jī)復(fù)位、中斷入口地址</p><p> ②數(shù)據(jù)存儲(chǔ)器 MCS-51系列單片機(jī)數(shù)據(jù)存儲(chǔ)器也有內(nèi)部、外部之分。但與程序存儲(chǔ)器不同,片內(nèi)、片外存儲(chǔ)器是分別獨(dú)立編址的,片內(nèi)數(shù)據(jù)存儲(chǔ)器除RAM塊外,還有特殊功能寄存器(SFR)塊,其中片內(nèi)數(shù)據(jù)存儲(chǔ)器有128個(gè)字
48、節(jié),其編制為00H~FFH;特殊功能寄存器也占128個(gè)字節(jié),其編制為80H~FFH;二者連續(xù)而不重疊。外部RAM地址范圍0000H~FFFFH,共64KB。內(nèi)部存儲(chǔ)器可直接尋址。盡管片內(nèi)、片外地址空間的低256B有重疊,但尋址并不會(huì)造成混亂。這是因?yàn)槠瑑?nèi)、片外存儲(chǔ)器使用不同的指令(MOV和MOVX)。擴(kuò)展的I/O地址也占用數(shù)據(jù)存儲(chǔ)器空間。對(duì)I/O端口操作無(wú)須特殊指令且訪(fǎng)問(wèn)程序存儲(chǔ)器是用PESN信號(hào)選通,而訪(fǎng)問(wèn)片外數(shù)據(jù)存儲(chǔ)器時(shí),由RD信號(hào)
49、(讀)和WR信號(hào)(寫(xiě))選通。</p><p> ③寄存器區(qū) 內(nèi)部數(shù)據(jù)存儲(chǔ)器分為4個(gè)區(qū)域,數(shù)據(jù)RAM用于存放臨時(shí)變量,下面介紹其他三個(gè)寄存器區(qū):</p><p> a) 工作寄存器區(qū) 它占用地址00~FFH的32個(gè)內(nèi)存單元,又分成4個(gè)區(qū)。每個(gè)區(qū)有R0~R7共8個(gè)工作寄存器。工作寄存器區(qū)的選擇又由程序狀態(tài)寄存器PSW的第4位和第3位(RS1和RS0)共同指定。單片機(jī)復(fù)位時(shí),RS1和RS
50、0為零,故指向0區(qū)。通過(guò)位操作改變RS1和RS0的值,可以方便地指向任一個(gè)區(qū)間。</p><p> b) 位尋址區(qū) 每位都有一個(gè)獨(dú)立的8位地址(占據(jù)空間00~7F),共128位。此外,在專(zhuān)用寄存器SFR中還有一部分是可以位尋址的(有些位可能無(wú)定義)。</p><p> c) 專(zhuān)用寄存器區(qū) 共有21個(gè)專(zhuān)用寄存器SFR,位于80~FFH地址空間。這些寄存器又可以分為CPU專(zhuān)用寄存器和接
51、口專(zhuān)用寄存器。CPU專(zhuān)用寄存器前面己經(jīng)提過(guò),而接口專(zhuān)用寄存器包括兩部分。一部分就是單片機(jī)的I/O端口P0~P3,分別編址為80H、90H、A0H、B0H,共4個(gè)單元,32位,每一位都可以獨(dú)立尋址。另一部分為定時(shí)/計(jì)數(shù)器,串行口、中斷的一些控制寄存器。</p><p><b> ·定時(shí)/計(jì)數(shù)器</b></p><p> 89C51有兩個(gè)16位定時(shí)/計(jì)數(shù)器(
52、T0,T1)。在定時(shí)功能中,每個(gè)機(jī)器周期定時(shí)器加1,由于l個(gè)機(jī)器周期包含12個(gè)振蕩周期,因而它的計(jì)數(shù)頻率為1/12,即由定時(shí)器計(jì)數(shù)到的脈沖為振蕩周期頻率的1/12。</p><p> 在計(jì)數(shù)器功能中,在外部事件相應(yīng)輸入腳(T0或T1)產(chǎn)生負(fù)跳變時(shí),計(jì)數(shù)器加1。由于計(jì)數(shù)器的計(jì)數(shù)過(guò)程需要2個(gè)機(jī)器周期(24個(gè)振蕩周期),所以,最高的計(jì)數(shù)頻率為振蕩頻率的1/24。</p><p> 這兩個(gè)定時(shí)
53、/計(jì)數(shù)器的工作狀態(tài)(定時(shí)/計(jì)數(shù))及工作方式(方式0~方式3)的選擇是由定時(shí)/計(jì)數(shù)器方式寄存器(TMOD)中的每位值所決定的。定時(shí)/計(jì)數(shù)器的控制由控制寄存器(TCON)完成。</p><p><b> ·I/O口 </b></p><p> 89C51不僅有4個(gè)8位并行口,供單片機(jī)和外部RAM、EEPROM等擴(kuò)展連接用或與其它設(shè)備交換信息用,它還有一個(gè)全雙
54、工串行口,能同時(shí)發(fā)送和接收數(shù)據(jù)。在前面的引腳功能中已對(duì)并行口作了簡(jiǎn)要介紹,在此就主要介紹一下串行口。</p><p> 串行口也就是P3.0和P3.1的第二功能。它既能工作在異步方式,又能工作在同步方式。該串行口是全雙工的,它在物理上分為兩個(gè)獨(dú)立的發(fā)送緩沖器和接收緩沖器SBUF,但它們占用一個(gè)特殊功能寄存器的地址99H,只需對(duì)SBUF進(jìn)行寫(xiě)或讀的操作,就可以同時(shí)發(fā)送和接收了。串行口的工作方式選擇、波特率選擇、串
55、行通信協(xié)議的完成,由兩個(gè)特殊功能寄存器,即串行口控制寄存器SCON和功耗控制寄存器PCON完成。</p><p><b> ·中斷</b></p><p> 89C51單片機(jī)提供了6個(gè)中斷源,而每一個(gè)中斷源都能被程控為高優(yōu)先級(jí)或低優(yōu)先級(jí)。其中5個(gè)中斷源包括2個(gè)外部中斷和3個(gè)內(nèi)部中斷。兩個(gè)外部中斷源為INT0和INT1,外部設(shè)備的中斷請(qǐng)求信號(hào)、掉電等故障信
56、號(hào)都可以從INT0而和INT1引腳輸入,向CPU提出中斷申請(qǐng),INT0和INT1的中斷請(qǐng)求標(biāo)志IE0、IE1分別設(shè)在TCON寄存器的TCON.1、TCON.3。3個(gè)內(nèi)部中斷源為T(mén)0、Tl溢出中斷源及片內(nèi)串行發(fā)送或接收中斷源,T0、Tl中斷請(qǐng)求標(biāo)志TF0和TF1分別設(shè)在TCON寄存器的TCON.5、TCON.7,串行發(fā)送或接收中斷標(biāo)志TI或RI設(shè)在SCON寄存器的第SCON.0、SCON.1。5個(gè)中斷源中的一個(gè)、幾個(gè)或全部中斷源的開(kāi)、關(guān)由
57、中斷允許寄存器(IE)完成,而每個(gè)中斷源的優(yōu)先級(jí)別的高低由中斷優(yōu)先級(jí)控制寄存器(IP)完成。89C51單片機(jī)中斷源簡(jiǎn)要特性見(jiàn)表3.3。</p><p> 表3.3 中斷源特性表</p><p><b> 3.3各模塊電路</b></p><p> 3.3.1 protel介紹</p><p> PROTEL是P
58、ORTEL公司在80年代末推出的EDA軟件,在電子行業(yè)的CAD軟件中,它當(dāng)之無(wú)愧地排在眾多EDA軟件的前面,是電子設(shè)計(jì)者的首選軟 件,它較早就在國(guó)內(nèi)開(kāi)始使用,在國(guó)內(nèi)的普及率也最高,有些高校的電子專(zhuān)業(yè)還專(zhuān)門(mén)開(kāi)設(shè)了課程來(lái)學(xué)習(xí)它,幾乎所有的電子公司都要用到它,許多大公司在招聘電子 設(shè)計(jì)人才時(shí)在其條件欄上常會(huì)寫(xiě)著要求會(huì)使用PROTEL。早期的PROTEL主要作為印制板自動(dòng)布線(xiàn)工具使用,運(yùn)行在DOS環(huán)境,對(duì)硬件的要求很低,在無(wú) 硬盤(pán)286機(jī)的1M
59、內(nèi)存下就能運(yùn)行,但它的功能也較少,只有電原理圖繪制與印制板設(shè)計(jì)功能,其印制板自動(dòng)布線(xiàn)的布通率也低,而現(xiàn)今的PROTEL已發(fā)展到 PROTEL99(網(wǎng)絡(luò)上可下載到它的測(cè)試板),是個(gè)龐大的EDA軟件,完全安裝有200多M,它工作在WINDOWS95環(huán)境下,是個(gè)完整的板級(jí)全方位 電子設(shè)計(jì)系統(tǒng),它包含了電原理圖繪制、模擬電路與數(shù)字電路混合信號(hào)仿真、多層印制電路板設(shè)計(jì)(包含印制電路板自動(dòng)布線(xiàn))、可編程邏輯器件設(shè)計(jì)、圖表生成、 電子表格生成、支持宏
60、操作等功能,本設(shè)計(jì)用protel99se繪制電路原理圖。</p><p> 3.3.2主控制系統(tǒng)</p><p> 主控器采用AT89C51,是美國(guó)ATMEL公司生產(chǎn)的一款性能穩(wěn)定、低功耗的單片機(jī),兼容MCS-51系列產(chǎn)品指令系統(tǒng)及引腳。片內(nèi)含4KB的可重復(fù)編程的Flash程序存儲(chǔ)器,器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),使用5(1±20﹪)V的電源電壓, 1
61、28×8位的內(nèi)部RAM,4個(gè)8位的雙向可位尋址的I/O端口,2個(gè)16位定時(shí)/計(jì)數(shù)器,6個(gè)中斷源,AT89C51單片機(jī)可提供許多高性?xún)r(jià)比的應(yīng)用,靈活應(yīng)用于各種控制領(lǐng)域。</p><p> 單片機(jī)的P1口及P2口分別應(yīng)用于控制南北及東西方向的通行燈,P0口及P3.0~P3.2口應(yīng)用于4組LED計(jì)時(shí)器的控制,T0和T1分別作為東西方向和南北方向和車(chē)流量流量控制,INT0和INT1分別用于東西方向和南北方向的
62、特種車(chē)輛通行緊急轉(zhuǎn)換電路[11]。</p><p> 3.3.3 車(chē)輛檢測(cè)電路</p><p> 為了達(dá)到對(duì)紅綠燈開(kāi)啟時(shí)間的控制,需要對(duì)十字路口各個(gè)方向的車(chē)輛進(jìn)行檢測(cè),本文研究的是用CCD圖像傳感器實(shí)時(shí)拍攝(本文選取距十字路口100m內(nèi))路況,采用微分二支電路處理CCD信號(hào),使成二值化信號(hào),單片機(jī)再讀入數(shù)據(jù),判斷車(chē)隊(duì)長(zhǎng)度。實(shí)現(xiàn)對(duì)路口紅綠燈時(shí)間進(jìn)行動(dòng)態(tài)調(diào)節(jié)。這樣就可以大大提高車(chē)輛通過(guò)率
63、,有效緩解交通壓力。車(chē)輛檢測(cè)電路如圖3.4所示。</p><p> 圖3.4 車(chē)輛檢測(cè)電路</p><p> 3.3.4 通行燈輸出控制</p><p> 道口交通燈指示采用高亮度紅綠雙色發(fā)光二極管,左拐、右拐、直行及行人各一個(gè)。當(dāng)發(fā)光電流為6mA時(shí),可按公式R=(5-1.8)/0.006計(jì)算,限流電阻為510Ω。因?yàn)槟媳蓖ㄐ袝r(shí)雙向指示牌相同,所以每個(gè)端口應(yīng)
64、具有12mA的吸收電流的能力,而人行道口按4個(gè)燈算,因此需24mA的吸收電流,在單片機(jī)的輸出口接驅(qū)動(dòng)電路74HC244,保護(hù)單片機(jī)的輸出端口[12]。道口指示燈電路如圖3.5所示。</p><p> 圖3.5 城市道口交通指示燈電路</p><p> 3.3.5 時(shí)間顯示電路</p><p> 紅綠燈通行時(shí)間采用數(shù)碼管顯示,這是一種很好的方法。通行剩余時(shí)間
65、采用高亮7段LED發(fā)光數(shù)碼管,采用共陽(yáng)數(shù)碼管。由于每個(gè)道口時(shí)間顯示相同,4組三極管就需192mA,所以設(shè)計(jì)中采用三極管9012。因?yàn)槊慷屋敵隹谛栉?4mA電流,所以電路設(shè)計(jì)中使用驅(qū)動(dòng)集成塊74HC244。LED顯示接口硬件電路由74HC244緩沖器、LED顯示器組成。如圖3.9所示74HC244用來(lái)提高LED顯示器的驅(qū)動(dòng)能力。</p><p> 在實(shí)際使用中LED顯示器都是多位的。對(duì)多位LED顯示器,通常采用
66、動(dòng)態(tài)掃描的方法進(jìn)行顯示,即逐個(gè)循環(huán)點(diǎn)亮各位顯示器。雖然這樣在任一時(shí)刻只有一位顯示器被點(diǎn)亮,但由于視覺(jué)殘留效應(yīng),看起來(lái)與全部顯示器同時(shí)點(diǎn)亮效果完全一樣。為了顯示LED顯示器的動(dòng)態(tài)掃描,不僅要給顯示器提供段(字形代碼)的輸入之外,還要對(duì)顯示器加位控制,這就是通常所說(shuō)的段控和位控。因此多位LED顯示器接口電路需要有兩個(gè)輸出口,其中一個(gè)用于輸出8條段控線(xiàn)(有小數(shù)點(diǎn)顯示);另一個(gè)用于輸出位控線(xiàn),位控線(xiàn)的數(shù)目等于顯示器的位數(shù)。時(shí)間顯示驅(qū)動(dòng)電路如圖3
67、.6所示。</p><p> 圖3.6時(shí)間顯示驅(qū)動(dòng)電路</p><p> 3.3.6特種車(chē)輛自動(dòng)通行電路</p><p> 一般情況下交通燈都按車(chē)流量大小分配通行時(shí)間,按固有規(guī)律變化,但有特殊車(chē)輛(如119、120)急需通行時(shí),如何控制呢?本文中設(shè)計(jì)緊急通行開(kāi)關(guān),當(dāng)特種車(chē)輛到來(lái)時(shí)能自動(dòng)關(guān)閉所有綠燈,讓特種車(chē)輛通過(guò)。設(shè)計(jì)中特種車(chē)輛可采用紅外線(xiàn)發(fā)生器為發(fā)信器,用實(shí)
68、時(shí)中斷來(lái)響應(yīng)特種車(chē)的通行要求。接收的紅外信號(hào)通過(guò)內(nèi)部的集成電路來(lái)進(jìn)行放大、解調(diào),由輸出端的輸出編碼脈沖信號(hào)經(jīng)過(guò)三極管反相放大送至接收器,解調(diào)模塊再進(jìn)行譯碼。紅外接收器采用的是一體化紅外接收器,具有靈敏度高和抗干擾能力強(qiáng)的性質(zhì)[13]。紅外遙控接收電路原理框圖如圖3.7所示。</p><p> 圖3.7 紅外接收原理框圖</p><p> 3.3.7盲人提示音電路</p>
69、<p> 為方便盲人通過(guò)行人道,在道口自動(dòng)控制系統(tǒng)中設(shè)計(jì)了聲音提示電路,該聲音控制電路與人行道控制燈的綠燈是同步的,當(dāng)綠燈亮?xí)r響一次,在結(jié)束通行前10s綠燈閃爍,期間盲人提示音會(huì)間隔響5次,每次1s。盲人提示音采用的是悅耳、柔和的低音。盲人提示音電路如圖3.8所示。</p><p> 圖3.8 盲人提示音電路</p><p> 3.3.8 電源電路</p>
70、<p> 整個(gè)系統(tǒng)采用的是+5V電壓,因此采用不可調(diào)的3端穩(wěn)壓器件,用LM7850就可以滿(mǎn)足系統(tǒng)電源的要求。LM7850內(nèi)部是由基準(zhǔn)電壓回路、恒流源、過(guò)流保護(hù)、過(guò)壓保護(hù)和短路保護(hù)回路等8部分組成的三端集成穩(wěn)壓電源,且其低功耗,高效率,紋波系數(shù)小,輸出電壓穩(wěn)定。</p><p> 3.4 LED顯示接口電路</p><p> 3.4.1 LED顯示器簡(jiǎn)介</p&g
71、t;<p> 通常所說(shuō)的LED顯示器由7個(gè)發(fā)光二極管組成因此也稱(chēng)之為七段LED顯示器,其排列形狀如圖3.10所示。此外,顯示器中還有一個(gè)圓點(diǎn)型發(fā)光二極管(在圖中以dp表示),用于顯示小數(shù)點(diǎn)。通過(guò)七個(gè)發(fā)光二極管亮暗的不同組合,可以顯示多種數(shù)字、字母以及其他符號(hào)。LED顯示器中的發(fā)光二極管共有兩種連接方法:</p><p><b> (1) 共陽(yáng)極接法</b></p>
72、;<p> 把發(fā)光二極管的陽(yáng)極連在一起構(gòu)成公共陽(yáng)極。使用時(shí)公共陽(yáng)極接+5V。這樣陰極端輸入低電平的段發(fā)光二極管就導(dǎo)通點(diǎn)亮,而輸入高電平的則不點(diǎn)亮。</p><p><b> (2) 共陰極接法</b></p><p> 把發(fā)光二極管的陰極連在一起構(gòu)成公共陰極。使用時(shí)公共陰極接地,這樣陽(yáng)極端輸入高電平的段發(fā)光二極管就導(dǎo)通點(diǎn)亮,而輸入低電平的則不點(diǎn)亮。
73、</p><p> 圖3.9 LED顯示器結(jié)構(gòu)圖</p><p> 使用LED顯示器時(shí)要注意區(qū)分這兩種不同的接法。為了顯示數(shù)字或符號(hào),要為L(zhǎng)ED顯示器提供代碼,這些代碼是為顯示字形的,因此稱(chēng)之為字形代碼。七段發(fā)光二極管,再加上一個(gè)小數(shù)點(diǎn)位,共計(jì)八段。因此提供給LED顯示器的字形代碼正好一個(gè)字節(jié)。各代碼位的對(duì)應(yīng)關(guān)系如表3.4。</p><p> 表3.4 代碼
74、對(duì)應(yīng)關(guān)系表</p><p> 3.4.2 74HC244緩沖器芯片介紹</p><p><b> 7</b></p><p> 4HC244是一種三態(tài)輸出的八緩沖器和線(xiàn)驅(qū)動(dòng)器,該芯片的引腳圖如圖3-8所示。由圖可見(jiàn),該緩沖器有8個(gè)輸入端,分為兩路——1A1~1A4,2A1~2A4,同時(shí)8個(gè)輸出端,也分為兩路——1Y1~1Y4,2Y1~2
75、Y4,分別由1G和2G作為它們的選通工作信號(hào)。當(dāng)記為低電平時(shí),1Y1~1Y4的電平與1A1~1A4的電平相同,即輸出反映輸入電平的高低;同樣,當(dāng)2G為低電平時(shí),2Y1~2Y4的電平與2A1~2A4的電平相同。而當(dāng)1G(或2G)為高電平時(shí),呈高阻態(tài),輸出1A1~1A4(或2A1~2A4)為高阻態(tài)。經(jīng)74HC244緩沖后,輸入信號(hào)被驅(qū)動(dòng),輸出信號(hào)的驅(qū)動(dòng)能力加大了。</p><p><b> 、</b
76、></p><p> 圖3.10 74HC244引腳示意圖</p><p> 第四章 交通燈控制系統(tǒng)軟件設(shè)計(jì)</p><p> 4.1 軟件設(shè)計(jì)思路及流程圖</p><p> 交通道口交通燈控制系統(tǒng)的控制程序主要包括以下幾個(gè)部分:主程序、紅綠燈時(shí)間動(dòng)態(tài)調(diào)節(jié)程序、顯示程序、定時(shí)中斷程序、車(chē)輛檢測(cè)延時(shí)程序和特種車(chē)輛實(shí)時(shí)響應(yīng)程序等
77、。</p><p> 4.1.1 主程序</p><p> 主程序主要是負(fù)責(zé)總體程序的管理功能,實(shí)現(xiàn)人與機(jī)的交互設(shè)定。因?yàn)樵O(shè)計(jì)采用動(dòng)態(tài)掃描方式顯示時(shí)間,所以主程序大部分時(shí)間要調(diào)用掃描顯示程序。主程序流程圖如圖4.1所示。</p><p> 圖4.1主程序流程圖</p><p> ??; ***********************
78、***主 程 序*****************************</p><p> START: MOV SP,#80H</p><p> MOV R0,#00H ;清70H-7AH共11個(gè)內(nèi)存單元</p><p> MOV R7,#8FH </p><p>
79、 CLEARDISP: MOV @R0,#00H </p><p> INC R0 </p><p> DJNZ R7,CLEARDISP </p><p> MOV TIMED0,#78H ;單向最大定時(shí)時(shí)間,直行開(kāi)始,人行開(kāi)始(120s)</p><p
80、> MOV TIMED1,#6EH ; 各路右轉(zhuǎn)開(kāi)始時(shí)間(110s)</p><p> MOV TIMED2,#46H ; 前行結(jié)束提醒(70s)</p><p> MOV TIMED3,#3CH ; 前行結(jié)束,人行結(jié)束,左轉(zhuǎn)開(kāi)始(60s)</p><p> MOV TIMED4
81、,#0AH ; 左轉(zhuǎn)結(jié)束提醒</p><p> CLR SNEWFLAG ;南北先通行標(biāo)志位</p><p> MOV TMOD,#11H ;設(shè)T0、T1為16位定時(shí)器</p><p> MOV TL0,#0B0H ;50MS定時(shí)初值(T0計(jì)時(shí)用)</p>
82、<p> MOV TH0,#3CH ;50MS定時(shí)初值</p><p> MOV TL1,#0B0H ;50MS定時(shí)初值(T1閃爍定時(shí)用)</p><p> MOV TH1,#3CH ;50MS定時(shí)初值</p><p> JB SCAN.7,SSS
83、T ;120s秒管理</p><p><b> ?。灰韵聻?0秒管理</b></p><p> LCALL DL1MS</p><p> LCALL DL1MS</p><p> LCALL DL1MS</p><p> JB SCAN.7,SSS
84、T ;干擾</p><p> MOV TIMED0,#60 ;單向最大定時(shí)時(shí)間,直行開(kāi)始,人行開(kāi)始(60s)</p><p> MOV TIMED1,#55 ; 各路右轉(zhuǎn)開(kāi)始時(shí)間(55s)</p><p> MOV TIMED2,#35 ; 前行結(jié)束提醒(35s)</p>&
85、lt;p> MOV TIMED3,#30 ; 前行結(jié)束,人行結(jié)束,左轉(zhuǎn)開(kāi)始(30s)</p><p> MOV TIMED4,#05 ; 左轉(zhuǎn)結(jié)束提醒</p><p> SSWAIT: JNB SCAN.7,SSWAIT</p><p> LCALL DL1MS</p><p
86、> LCALL DL1MS</p><p> LCALL DL1MS</p><p> JNB SCAN.7,SSWAIT</p><p> SSST: MOV TIME,TIMED0 ;120秒</p><p> LCALL TUNBCD</p><p>
87、; MOV SN,#66H </p><p> MOV EW,#55H </p><p> SETB EA ;總中斷開(kāi)放</p><p> SETB PX1</p><p> SETB EX1</p><p>
88、 SETB ET0 ;允許T0中斷</p><p> SETB TR0 ;開(kāi)啟T0定時(shí)器</p><p> MOV R4,#14H ;1秒定時(shí)用初值(50MS×20)</p><p> MOV CONR5,#20</p><p&
89、gt; START1: LCALL DISPLAY ;調(diào)用顯示子程序</p><p> JNB SCAN.7,KEYFUN ;手動(dòng)狀態(tài)</p><p> SJMP START1 ;P1.0口為1時(shí)跳回START1</p><p> KEYFUN: LCALL DISPLAY<
90、/p><p> LCALL DISPLAY</p><p> JB SCAN.7,START1</p><p> CLR ET0</p><p> CLR TR0</p><p> MOV SN,#056H ;全車(chē)道停,行人通</p><p&g
91、t; MOV EW,#056H </p><p> MOV TIME,#00H ;時(shí)間顯示0</p><p> LCALL TUNBCD</p><p> KEYWAIT: LCALL DISPLAY </p><p> JNB SCAN.7,KEYWAIT
92、 </p><p> KEYY: LCALL DISPLAY ;等待按鍵按下</p><p> JB SCAN.7,KEYY</p><p> LCALL DISPLAY</p><p> JB SCAN.7,KEYY</p><p> KE
93、YWAIT1: LCALL DISPLAY </p><p> JNB SCAN.7,KEYWAIT1 </p><p> MOV TIME,TIMED0 ;從新開(kāi)始計(jì)時(shí)初值</p><p> LCALL TUNBCD</p><p> CLR SNEWFLAG
94、 ;南北先通行標(biāo)志位</p><p> SETB TR0</p><p> SETB ET0</p><p> AJMP START1</p><p> 4.1.2 定時(shí)中斷服務(wù)程序</p><p> 定時(shí)中斷服務(wù)程序是用于行車(chē)及行人通行的通行指示,按通行的規(guī)律,紅綠燈的控
95、制轉(zhuǎn)換邏輯如表4.1所示。</p><p> 表4.1 道口通行方式控制碼數(shù)據(jù)表</p><p><b> 通行規(guī)則如下:</b></p><p> (1)南北方向的行車(chē)直行,各路右拐,南北向行人通行,設(shè)置南北向通行時(shí)間為1min,且各路右拐比直行滯后10s放行。</p><p> ?。?)南北方向的行車(chē)向左拐,
96、各路右拐,行人禁止通行。通行時(shí)間為1min。</p><p> ?。?)東西方向的行車(chē)直行,各路右拐,東西方向的行人通行。東西方向通行時(shí)間為1min,且各路右拐比直行要滯后20s放行。</p><p> ?。?)東西方向的行車(chē)向左拐,各路右拐,行人禁止通行。通行時(shí)間為1min。</p><p> 上述的4種交通規(guī)則是通過(guò)控制紅綠燈端口送控制碼的方式來(lái)實(shí)現(xiàn)。其原理是
97、根據(jù)不同規(guī)則通行時(shí)各路口的紅綠燈亮滅情況轉(zhuǎn)換為單片機(jī)端口的控制碼。指示燈功能通過(guò)T0定時(shí)中斷服務(wù)程序?qū)崿F(xiàn)。定時(shí)器T0定時(shí)溢出的中斷周期設(shè)為50ms,中斷累計(jì)20次時(shí)對(duì)120s倒計(jì)時(shí)單元進(jìn)行減1操作。本設(shè)計(jì)中將4種通行規(guī)則分成幾種不同的亮燈方式,通過(guò)查詢(xún)秒倒計(jì)時(shí)單元的數(shù)據(jù),以實(shí)現(xiàn)在不同的時(shí)間段給控制端口送不同的控制數(shù)據(jù)碼。控制碼分為120s~110s、110s~70s、70s~60s、60s~10s、10s~0s這5個(gè)時(shí)間段。交通燈管理定
98、時(shí)功能程序流程圖如圖4.4所示。</p><p> 圖4.2 T0定時(shí)中斷服務(wù)程序流程圖</p><p><b> ?。籘0中斷服務(wù)程序</b></p><p> INTT0: PUSH ACC ;累加器入棧保護(hù)</p><p> PUSH PSW
99、 ;狀態(tài)字入棧保護(hù)</p><p> CLR ET0 ;關(guān)T0中斷允許</p><p> CLR TR0 ;關(guān)閉定時(shí)器T0</p><p> MOV A,#0B7H ;中斷響應(yīng)時(shí)間同步修正</p><p> AD
100、D A,TL0 ;低8位初值修正</p><p> MOV TL0,A ;重裝初值(低8位修正值)</p><p> MOV A,#3CH ;高8位初值修正</p><p> ADDC A,TH0 </p><p&
101、gt; MOV TH0,A ;重裝初值(高8位修正值)</p><p> SETB TR0 ;開(kāi)啟定時(shí)器T0</p><p> DJNZ R4, OUTT00 ;20次中斷未到中斷退出</p><p> MOV R4,#14H ;20次
102、中斷到(1秒)重賦初值</p><p> JB SNEWFLAG, INT22</p><p> DEC TIME</p><p> MOV A,TIME</p><p> CJNE A,TIMED1,LOOP11 ; 判斷是否小于110秒</p><p> LOOP11
103、: JC LOOP22 ; 120-110</p><p> MOV SN,#66H ; I</p><p> MOV EW,#55H ; I</p><p> LJMP OUTT0 ; 120-110</p
104、><p> LOOP22: MOV A,TIME</p><p> CJNE A,TIMED2,LOOP33 ; 判斷是否小于70秒</p><p> LOOP33: JC LOOP44 ; 110-70</p><p> MOV SN,#6AH
105、 ; I</p><p> MOV EW,#59H ; I</p><p> LJMP OUTT0 ; 110-70</p><p> LOOP44: MOV A,TIME</p><p> CJNE A,TIMED3,LOOP55
106、; 判斷是否小于60秒</p><p> LOOP55: JC LOOP66 ; 70-60</p><p> MOV 20H,SN </p><p> CPL 04H </p><p> CPL 00H</p>
107、<p> MOV SN,20H ;I</p><p> MOV EW,#59H ;I</p><p> LJMP OUTT0 ;70-60</p><p> LOOP66: MOV A,TIME</p><p&g
108、t; CJNE A,TIMED4,LOOP77 ;判斷是否小于10秒</p><p> LOOP77: JC LOOP88 ;60-10</p><p> MOV SN,#99H ;I</p><p> MOV EW,#59H
109、 ;I</p><p> LJMP OUTT0 ;60-10</p><p> LOOP88: MOV A,TIME</p><p> JZ OUT88</p><p> MOV 20H,SN </p><p>
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 交通信號(hào)智能控制系統(tǒng)畢業(yè)設(shè)計(jì)
- 溫室智能控制系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)--基于plc的智能交通燈控制系統(tǒng)設(shè)計(jì)
- 自適應(yīng)交通燈智能控制系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 基于plc的智能交通燈控制系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 智能水位控制系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)--智能門(mén)禁控制系統(tǒng)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)----智能溫度控制系統(tǒng)
- 智能交通控制系統(tǒng)設(shè)計(jì)
- 教室智能控制系統(tǒng)設(shè)計(jì)畢業(yè)設(shè)計(jì)
- 智能交通控制系統(tǒng)設(shè)計(jì)
- 節(jié)水灌溉智能控制系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)237智能溫度控制系統(tǒng)
- 城市交通控制系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)論文-智能溫度控制系統(tǒng)
- 智能控制系統(tǒng)畢業(yè)設(shè)計(jì)外文翻譯
- 畢業(yè)設(shè)計(jì)----交通燈控制系統(tǒng)
- 本科畢業(yè)設(shè)計(jì)(論文)-基于plc的智能交通控制系統(tǒng)設(shè)計(jì)
- 智能交通信號(hào)燈模擬控制系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---智能插座控制系統(tǒng)的設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論