版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
序號(hào)______學(xué)生畢業(yè)設(shè)計(jì)(論論文)課題名稱專業(yè)班級(jí)姓名系部指導(dǎo)教師設(shè)計(jì)周數(shù)摘要近年來(lái)隨著科技技的飛速發(fā)展展,單片機(jī)的的應(yīng)用正在不不斷深入,同同時(shí)帶動(dòng)傳統(tǒng)統(tǒng)控制檢測(cè)技技術(shù)日益更新新。在實(shí)時(shí)檢檢測(cè)和自動(dòng)控控制的單片機(jī)機(jī)應(yīng)用系統(tǒng)中中,單片機(jī)往往往作為一個(gè)個(gè)核心部件來(lái)來(lái)使用,僅單單片機(jī)方面知知識(shí)是不夠的的,還應(yīng)根據(jù)據(jù)具體硬件結(jié)結(jié)構(gòu)軟硬件結(jié)合,加加以完善。十字路口車輛穿穿梭,行人熙熙攘,車行車車道,人行人人道,有條不不紊。那么靠靠什么來(lái)實(shí)現(xiàn)現(xiàn)這井然秩序序呢?靠的就就是交通信號(hào)號(hào)燈的自動(dòng)指指揮系統(tǒng)。交交通信號(hào)燈控控制方式很多多。本系統(tǒng)采采用MSC-551系列單片機(jī)機(jī)ATSC551和可編程并并行I/O接口芯片8255A為中心器件件來(lái)設(shè)計(jì)交通通燈控制器,實(shí)實(shí)現(xiàn)了能根據(jù)據(jù)實(shí)際車流量量通過(guò)8051芯片的P1口設(shè)置紅、綠綠燈燃亮?xí)r間間的功能;紅紅綠燈循環(huán)點(diǎn)點(diǎn)亮,倒計(jì)時(shí)時(shí)剩5秒時(shí)黃燈閃閃爍警示(交交通燈信號(hào)通通過(guò)PA口輸出,顯示時(shí)間直直接通過(guò)8255的PC口輸出至雙位數(shù)數(shù)碼管);車輛闖紅燈燈報(bào)警;綠燈燈時(shí)間可檢測(cè)測(cè)車流量并可可通過(guò)雙位數(shù)數(shù)碼管顯示。本本系統(tǒng)實(shí)用性性強(qiáng)、操作簡(jiǎn)單、擴(kuò)擴(kuò)展功能強(qiáng)。關(guān)鍵詞單片機(jī)交通燈闖紅燈檢測(cè)車流量量目錄HYPERLINK\l"_Toc199260769"目錄-3--HYPERLINK\l"_Toc199260770"第一章緒論--3-HYPERLINK\l"_Toc199260771"第二章單片機(jī)機(jī)-4--HYPERLINK\l"_Toc199260772"第三章單片機(jī)機(jī)芯片簡(jiǎn)介--5-HYPERLINK\l"_Toc199260773"3.1MSCC-51芯片簡(jiǎn)介-5-HYPERLINK\l"_Toc199260774"3.282255芯片簡(jiǎn)介-8-HYPERLINK\l"_Toc199260775"3.374LLS373簡(jiǎn)介-9-HYPERLINK\l"_Toc199260776"第四章系統(tǒng)硬硬件設(shè)計(jì)-10-HYPERLINK\l"_Toc199260777"4.1交通管理理的方案論證證-10-HYPERLINK\l"_Toc199260778"4.2系統(tǒng)硬件件設(shè)計(jì)-111-HYPERLINK\l"_Toc199260779"4.2.1系統(tǒng)總框圖圖如下:-11-HYPERLINK\l"_Toc199260780"4.2.3系系統(tǒng)工作原理理-14-HYPERLINK\l"_Toc199260781"第五章控制器器的軟件設(shè)計(jì)計(jì)-15-HYPERLINK\l"_Toc199260782"5.1每秒鐘的的設(shè)定-115-HYPERLINK\l"_Toc199260783"5.2計(jì)數(shù)器硬硬件延時(shí)-15-HYPERLINK\l"_Toc199260784"5.2.1計(jì)計(jì)數(shù)器初值計(jì)計(jì)算-155-HYPERLINK\l"_Toc199260785"5.2.2計(jì)算公式-15-HYPERLINK\l"_Toc199260786"5.2.31秒的方法法-15-HYPERLINK\l"_Toc199260787"5.2.4相應(yīng)應(yīng)程序代碼--16--HYPERLINK\l"_Toc199260788"5.3軟件延延時(shí)-166-HYPERLINK\l"_Toc199260789"5.4時(shí)間及及信號(hào)燈的顯顯示-177-HYPERLINK\l"_Toc199260790"5.4.18051并行口的擴(kuò)擴(kuò)展-177-HYPERLINK\l"_Toc199260791"5.4.2顯示示原理-118-HYPERLINK\l"_Toc199260792"5.4.38255PPA口輸出信號(hào)號(hào)接信號(hào)燈--18--HYPERLINK\l"_Toc199260793"5.4.488255輸出信號(hào)與與數(shù)碼管的連連接-188-HYPERLINK\l"_Toc199260794"5.4.588255與8051的連接-119-HYPERLINK\l"_Toc199260795"5.5程序設(shè)設(shè)計(jì)-199-HYPERLINK\l"_Toc199260796"5.5.1流程程圖如圖所示示-19-HYPERLINK\l"_Toc199260797"5.5.2程程序源代碼--20--HYPERLINK\l"_Toc199260798"第六章結(jié)論--27--HYPERLINK\l"_Toc199260799"參考文獻(xiàn)-228-第一章緒論當(dāng)今,紅綠燈安安裝在各個(gè)道道口上,已經(jīng)經(jīng)成為疏導(dǎo)交交通車輛最常常見(jiàn)和最有效效的手段。但但這一技術(shù)在19世紀(jì)就已出出現(xiàn)了。1858年,在在英國(guó)倫敦主主要街頭安裝裝了以燃煤氣氣為光源的紅紅,藍(lán)兩色的的機(jī)械扳手式式信號(hào)燈,用用以指揮馬車車通行。這是是世界上最早早的交通信號(hào)號(hào)燈。1868年,英國(guó)機(jī)機(jī)械工程師納納伊特在倫敦敦威斯敏斯特特區(qū)的議會(huì)大大廈前的廣場(chǎng)場(chǎng)上,安裝了了世界上最早早的煤氣紅綠綠燈。它由紅紅綠兩以旋轉(zhuǎn)轉(zhuǎn)式方形玻璃璃提燈組成,紅紅色表示“停止”,綠色表示“注意”。1869年1月2日,煤氣燈燈爆炸,使警警察受傷,遂遂被取消。電氣啟動(dòng)的紅綠綠燈出現(xiàn)在美美國(guó),這種紅紅綠燈由紅綠綠黃三色圓形形的投光器組組成,1914年始安裝于于紐約市5號(hào)大街的一一座高塔上。紅紅燈亮表示“停止”,綠燈亮表表示“通行”。1918年,又又出現(xiàn)了帶控控制的紅綠燈燈和紅外線紅紅綠燈。帶控控制的紅綠燈燈,一種是把把壓力探測(cè)器器安在地下,車車輛一接近紅紅燈便變?yōu)榫G綠燈;另一種種是用擴(kuò)音器器來(lái)啟動(dòng)紅綠綠燈,司機(jī)遇遇紅燈時(shí)按一一下嗽叭,就就使紅燈變?yōu)闉榫G燈。紅外外線紅綠燈當(dāng)當(dāng)行人踏上對(duì)對(duì)壓力敏感的的路面時(shí),它它就能察覺(jué)到到有人要過(guò)馬馬路。紅外光光束能把信號(hào)號(hào)燈的紅燈延延長(zhǎng)一段時(shí)間間,推遲汽車車放行,以免免發(fā)生交通事事故。信號(hào)燈的出現(xiàn),使使交通得以有有效管制,對(duì)對(duì)于疏導(dǎo)交通通流量、提高高道路通行能能力,減少交交通事故有明明顯效果。1968年,聯(lián)合國(guó)國(guó)《道路交通通和道路標(biāo)志志信號(hào)協(xié)定》對(duì)對(duì)各種信號(hào)燈燈的含義作了了規(guī)定。綠燈燈是通行信號(hào)號(hào),面對(duì)綠燈燈的車輛可以以直行,左轉(zhuǎn)轉(zhuǎn)彎和右轉(zhuǎn)彎彎,除非另一一種標(biāo)志禁止止某一種轉(zhuǎn)向向。左右轉(zhuǎn)彎彎車輛都必須須讓合法地正正在路口內(nèi)行行駛的車輛和和過(guò)人行橫道道的行人優(yōu)先先通行。紅燈燈是禁行信號(hào)號(hào),面對(duì)紅燈燈的車輛必須須在交叉路口口的停車線后后停車。黃燈燈是警告信號(hào)號(hào),面對(duì)黃燈燈的車輛不能能越過(guò)停車線線,但車輛已已十分接近停停車線而不能能安全停車時(shí)時(shí)可以進(jìn)入交交叉路口。第二章單片機(jī)機(jī)單片機(jī)微型計(jì)算算機(jī)是微型計(jì)計(jì)算機(jī)的一個(gè)個(gè)重要分支,也也是頗具生命命力的機(jī)種。單單片機(jī)微型計(jì)計(jì)算機(jī)簡(jiǎn)稱單單片機(jī),特別別適用于控制制領(lǐng)域,故又又稱為微控制制器。通常,單單片機(jī)由單塊塊集成電路芯芯片構(gòu)成,內(nèi)內(nèi)部包含有計(jì)計(jì)算機(jī)的基本本功能部件::中央處理器器、存儲(chǔ)器和和I/O接口電路等等。因此,單單片機(jī)只需要要和適當(dāng)?shù)能涇浖巴獠吭O(shè)設(shè)備相結(jié)合,便便可成為一個(gè)個(gè)單片機(jī)控制制系統(tǒng)。單片機(jī)機(jī)經(jīng)過(guò)1、2、3、3代的發(fā)展,目目前單片機(jī)正正朝著高性能能和多品種方方向發(fā)展,它它們的CPU功能在增強(qiáng)強(qiáng),內(nèi)部資源源在增多,引引角的多功能能化,以及低低電壓底功耗耗。第三章單片機(jī)機(jī)芯片簡(jiǎn)介3.1MSCC-51芯片簡(jiǎn)介MCS-51單單片機(jī)內(nèi)部結(jié)結(jié)構(gòu)8051是MCCS-51系列單片機(jī)機(jī)的典型產(chǎn)品品,我們以這這一代表性的的機(jī)型進(jìn)行系系統(tǒng)的講解。
8051單片機(jī)包含中央處理器、程序存儲(chǔ)器(ROM)、數(shù)據(jù)存儲(chǔ)器(RAM)、定時(shí)/計(jì)數(shù)器、并行接口、串行接口和中斷系統(tǒng)等幾大單元及數(shù)據(jù)總線、地址總線和控制總線等三大總線,現(xiàn)在我們分別加以說(shuō)明:·中央處理器::
中央處處理器(CPU)是整個(gè)單片片機(jī)的核心部部件,是8位數(shù)據(jù)寬度度的處理器,能能處理8位二進(jìn)制數(shù)數(shù)據(jù)或代碼,CPU負(fù)責(zé)控制、指指揮和調(diào)度整整個(gè)單元系統(tǒng)統(tǒng)協(xié)調(diào)的工作作,完成運(yùn)算算和控制輸入入輸出功能等等操作?!?shù)據(jù)存儲(chǔ)器((RAM)
80551內(nèi)部有128個(gè)8位用戶數(shù)據(jù)據(jù)存儲(chǔ)單元和和128個(gè)專用寄存存器單元,它它們是統(tǒng)一編編址的,專用用寄存器只能能用于存放控控制指令數(shù)據(jù)據(jù),用戶只能能訪問(wèn),而不不能用于存放放用戶數(shù)據(jù),所所以,用戶能能使用的RAM只有128個(gè),可存放放讀寫(xiě)的數(shù)據(jù)據(jù),運(yùn)算的中中間結(jié)果或用用戶定義的字字型表。 ·程序存儲(chǔ)器((ROM):8051共有44096個(gè)8位掩膜ROM,用于存放放用戶程序,原原始數(shù)據(jù)或表表格?!ざ〞r(shí)/計(jì)數(shù)器器(ROM):8051有兩個(gè)個(gè)16位的可編程程定時(shí)/計(jì)數(shù)器,以以實(shí)現(xiàn)定時(shí)或或計(jì)數(shù)產(chǎn)生中中斷用于控制制程序轉(zhuǎn)向?!げ⑿休斎胼敵龀?I/O)口:8051共有44組8位I/O口(P0、P1、P2或P3),用于對(duì)外外部數(shù)據(jù)的傳傳輸。·全雙工串行口口:8051內(nèi)置一一個(gè)全雙工串串行通信口,用用于與其它設(shè)設(shè)備間的串行行數(shù)據(jù)傳送,該該串行口既可可以用作異步步通信收發(fā)器器,也可以當(dāng)當(dāng)同步移位器器使用。·中斷系統(tǒng):8051具備較較完善的中斷斷功能,有兩兩個(gè)外中斷、兩兩個(gè)定時(shí)/計(jì)數(shù)器中斷斷和一個(gè)串行行中斷,可滿滿足不同的控控制要求,并并具有2級(jí)的優(yōu)先級(jí)級(jí)別選擇?!r(shí)鐘電路:8051內(nèi)置最最高頻率達(dá)12MHz的時(shí)鐘電路路,用于產(chǎn)生生整個(gè)單片機(jī)機(jī)運(yùn)行的脈沖沖時(shí)序,但8051單片機(jī)需外外置振蕩電容容。單片機(jī)的結(jié)構(gòu)有有兩種類型,一一種是程序存存儲(chǔ)器和數(shù)據(jù)據(jù)存儲(chǔ)器分開(kāi)開(kāi)的形式,即即哈佛(Harvvard)結(jié)構(gòu),另一一種是采用通通用計(jì)算機(jī)廣廣泛使用的程程序存儲(chǔ)器與與數(shù)據(jù)存儲(chǔ)器器合二為一的的結(jié)構(gòu),即普普林斯頓(Prinncetonn)結(jié)構(gòu)。INTEL的MCS-551系列單片機(jī)機(jī)采用的是哈哈佛結(jié)構(gòu)的形形式,而后續(xù)續(xù)產(chǎn)品16位的MCS-996系列單片機(jī)機(jī)則采用普林林斯頓結(jié)構(gòu)。下圖是MCS--51系列單片機(jī)機(jī)的內(nèi)部結(jié)構(gòu)構(gòu)示意圖。MCS-51的的引腳說(shuō)明::MCS-51系系列單片機(jī)中中的8031、8051及8751均采用40Pin封裝的雙列列直接DIP結(jié)構(gòu),右圖圖是它們的引引腳配置,40個(gè)引腳中,正正電源和地線線兩根,外置置石英振蕩器器的時(shí)鐘線兩兩根,4組8位共32個(gè)I/O口,中斷口口線與P3口線復(fù)用?,F(xiàn)現(xiàn)在我們對(duì)這這些引腳的功功能加以說(shuō)明明:MCS-51的的引腳說(shuō)明::MCS-51系系列單片機(jī)中中的8031、8051及8751均采用40Pin封裝的雙列列直接DIP結(jié)構(gòu),右圖圖是它們的引引腳配置,40個(gè)引腳中,正正電源和地線線兩根,外置置石英振蕩器器的時(shí)鐘線兩兩根,4組8位共32個(gè)I/O口,中斷口口線與P3口線復(fù)用?,F(xiàn)現(xiàn)在我們對(duì)這這些引腳的功功能加以說(shuō)明明:如右圖Pin9:REESET/VVpd復(fù)位信號(hào)號(hào)復(fù)用腳,當(dāng)當(dāng)8051通電,時(shí)鐘鐘電路開(kāi)始工工作,在RESET引腳上出現(xiàn)24個(gè)時(shí)鐘周期期以上的高電電平,系統(tǒng)即即初始復(fù)位。初初始化后,程程序計(jì)數(shù)器PC指向0000H,P0-P3輸出口全部部為高電平,堆堆棧指針寫(xiě)入07H,其它專用用寄存器被清清“0”。RESET由高電平下下降為低電平平后,系統(tǒng)即即從0000H地址開(kāi)始執(zhí)執(zhí)行程序。然然而,初始復(fù)復(fù)位不改變RAM(包括工作作寄存器R0-R7)的狀態(tài),8051的初始態(tài)。8051的復(fù)位位方式可以是是自動(dòng)復(fù)位,也也可以是手動(dòng)動(dòng)復(fù)位,見(jiàn)下下圖4。此外,RESETT/Vpd還是一復(fù)復(fù)用腳,Vcc掉電其間間,此腳可接接上備用電源源,以保證單單片機(jī)內(nèi)部RAM的數(shù)據(jù)不丟丟失。圖4·Pin30::ALE/當(dāng)當(dāng)訪問(wèn)外部程程序器時(shí),ALE(地址鎖存)的輸出用于于鎖存地址的的低位字節(jié)。而而訪問(wèn)內(nèi)部程程序存儲(chǔ)器時(shí)時(shí),ALE端將有一個(gè)1/6時(shí)鐘頻率的的正脈沖信號(hào)號(hào),這個(gè)信號(hào)號(hào)可以用于識(shí)識(shí)別單片機(jī)是是否工作,也也可以當(dāng)作一一個(gè)時(shí)鐘向外外輸出。更有有一個(gè)特點(diǎn),當(dāng)當(dāng)訪問(wèn)外部程程序存儲(chǔ)器,ALE會(huì)跳過(guò)一個(gè)個(gè)脈沖。如果單片機(jī)是EEPROM,在編程其其間,將用于于輸入編程脈脈沖?!in29::當(dāng)訪問(wèn)外部部程序存儲(chǔ)器器時(shí),此腳輸輸出負(fù)脈沖選選通信號(hào),PC的16位地址數(shù)據(jù)據(jù)將出現(xiàn)在P0和P2口上,外部部程序存儲(chǔ)器器則把指令數(shù)數(shù)據(jù)放到P0口上,由CPU讀入并執(zhí)行行?!in31::EA/Vppp程序存儲(chǔ)儲(chǔ)器的內(nèi)外部部選通線,8051和8751單片機(jī),內(nèi)內(nèi)置有4kB的程序存儲(chǔ)儲(chǔ)器,當(dāng)EA為高電平并并且程序地址址小于4kB時(shí),讀取內(nèi)內(nèi)部程序存儲(chǔ)儲(chǔ)器指令數(shù)據(jù)據(jù),而超過(guò)4kB地址則讀取取外部指令數(shù)數(shù)據(jù)。如EA為低電平,則則不管地址大大小,一律讀讀取外部程序序存儲(chǔ)器指令令。顯然,對(duì)對(duì)內(nèi)部無(wú)程序序存儲(chǔ)器的8031,,EA端必須接地地。在編程時(shí),EAA/Vpp腳還需加加上21V的編程電壓壓。3.282255芯片簡(jiǎn)介8255可編程程并行接口芯芯片簡(jiǎn)介:82555可編程并行行接口芯片有有三個(gè)輸入輸輸出端口,即即A口、B口和C口,對(duì)應(yīng)于于引腳PA7~PA0、PB7~PB0和PC7~PC0。其內(nèi)部還還有一個(gè)控制制寄存器,即即控制口。通通常A口、B口作為輸入入輸出的數(shù)據(jù)據(jù)端口。C口作為控制制或狀態(tài)信息息的端口,它它在方式字的的控制下,可可以分成4位的端口,每每個(gè)端口包含含一個(gè)4位鎖存器。它它們分別與端端口A/B配合使使用,可以用用作控制信號(hào)號(hào)輸出或作為為狀態(tài)信號(hào)輸輸入。8255可編程程并行接口芯芯片方式控制制字格式說(shuō)明明:8255有兩種種控制命令字字;一個(gè)是方方式選擇控制制字;另一個(gè)個(gè)是C口按位置位位/復(fù)位控制制字。其中C口按位置位位/復(fù)位控制制字方式使用用較為繁難,說(shuō)說(shuō)明也較冗長(zhǎng)長(zhǎng),故在此不不作敘述,需需要時(shí)用戶可可自行查找有有關(guān)資料。方式控制字格式式說(shuō)明如表1:表1D7D6D5D4D3D2D1D0D7::設(shè)定工作方方式標(biāo)志,1有效。D6、D5:A口方式選擇擇00—方式001—方式11×—方式2D4::A口功能(1=輸入,0=輸出)D3::C口高4位功能(1=輸入,0=輸出)D2::B口方式選擇(0=方式0,1=方式1)D1::B口功能(1=輸入,0=輸出)D0:C口低44位功能(1=輸入,0=輸出)8255可編程程并行接口芯芯片工作方式式說(shuō)明:方式0:基本輸輸入/輸出方方式。適用于于三個(gè)端口中中的任何一個(gè)個(gè)。每一個(gè)端端口都可以用用作輸入或輸輸出。輸出可可被鎖存,輸輸入不能鎖存存。方式1:選通輸輸入/輸出方方式。這時(shí)A口或B口的8位外設(shè)線用用作輸入或輸輸出,C口的4條線中三條條用作數(shù)據(jù)傳傳輸?shù)穆?lián)絡(luò)信信號(hào)和中斷請(qǐng)請(qǐng)求信號(hào)。方式2:雙向向總線方式。只只有A口具備雙向向總線方式,8位外設(shè)線用用作輸入或輸輸出,此時(shí)C口的5條線用作通通訊聯(lián)絡(luò)信號(hào)號(hào)和中斷請(qǐng)求求信號(hào)。3.374LLS373簡(jiǎn)簡(jiǎn)介74LS3733是一種帶三三態(tài)門(mén)的8D鎖存器,其其管腳示意圖圖如下示:其中:1D-88D為8個(gè)輸入端。11Q-8Q為8個(gè)輸出端。LE為數(shù)據(jù)打入入端:當(dāng)LE為“1”時(shí),鎖存器器輸出狀態(tài)同輸輸入狀態(tài);當(dāng)當(dāng)LE由“1”變“0”時(shí),數(shù)據(jù)打打入鎖存器OE為輸出允許許端:當(dāng)OE=0時(shí),三態(tài)門(mén)門(mén)打開(kāi);當(dāng)當(dāng)OE=1時(shí),三態(tài)門(mén)門(mén)關(guān)閉,輸出出高阻。第四章系統(tǒng)硬硬件設(shè)計(jì)4.1交通管理理的方案論證證東西、南北兩干干道交于一個(gè)個(gè)十字路口,各各干道有一組組紅、黃、綠綠三色的指示示燈,指揮車車輛和行人安安全通行。紅紅燈亮禁止通通行,綠燈亮亮允許通行。黃黃燈亮提示人人們注意紅、綠綠燈的狀態(tài)即即將切換,且且黃燈燃亮?xí)r時(shí)間為東西、南北兩干道的的公共停車時(shí)時(shí)間。設(shè)東西西道比南北道的車流流量大,指示示燈燃亮的方方案如下表。60S5S80S5S……東西道紅燈亮黃燈亮綠燈亮黃燈亮……南北道綠燈亮黃燈亮紅燈亮黃燈亮……表2說(shuō)明:(1)當(dāng)東西方方向?yàn)榧t燈,此此道車輛禁止止通行,東西西道行人可通通過(guò);南北道道為綠燈,此此道車輛通過(guò)過(guò),行人禁止止通行。時(shí)間間為60秒。(2)黃燈閃爍爍5秒,警示車車輛和行人紅紅、綠燈的狀狀態(tài)即將切換換。(3)當(dāng)東西方方向?yàn)榫G燈,此此道車輛通行行;南北方向向?yàn)榧t燈,南南北道車輛禁禁止通過(guò),行行人通行。時(shí)時(shí)間為80秒。東西方向車車流大通行時(shí)間長(zhǎng)長(zhǎng)。(4)這樣如上上表的時(shí)間和和紅、綠、黃黃出現(xiàn)的順序序依次出現(xiàn)這這樣行人和車車輛就能安全全暢通的通行行。(5)此表可根根據(jù)車流量動(dòng)動(dòng)態(tài)設(shè)定紅綠綠燈初始值。4.2系統(tǒng)硬件件設(shè)計(jì)選用設(shè)備80331單片機(jī)一片片:8031單片機(jī)一片片,8255并行通用接接口芯片,74LS007兩片,MAX6992‘看門(mén)狗’一片,陰極的七段段數(shù)碼管兩個(gè)個(gè)雙向晶閘管管若干,7805三段穩(wěn)壓一一個(gè),紅、黃黃、綠交通燈燈各兩個(gè),開(kāi)開(kāi)關(guān)鍵盤(pán)、連連線若干。4.2.1系統(tǒng)總框圖圖如下:圖4.2.3系系統(tǒng)工作原理理(1)開(kāi)關(guān)鍵盤(pán)盤(pán)輸入交通燈燈初始時(shí)間,通通過(guò)8051單片機(jī)P1輸入到系統(tǒng)統(tǒng)(2)由88051單片機(jī)的定定時(shí)器每秒鐘鐘通過(guò)P0口向8255的數(shù)據(jù)口送送信息,由8255的PA口顯示紅、綠綠、黃燈的燃燃亮情況;由由8255的PC口顯示每每個(gè)燈的燃亮亮?xí)r間。(3)80551通過(guò)設(shè)置各個(gè)信號(hào)等等的燃亮?xí)r間間、通過(guò)8031設(shè)置,綠、紅紅時(shí)間分別為60秒、80秒循環(huán)由80051的P0口向8255的數(shù)據(jù)口輸輸出。(4)通過(guò)88051單片機(jī)的P3.0位來(lái)控制系系統(tǒng)是工作或或設(shè)置初值,當(dāng).牌位0就對(duì)系統(tǒng)進(jìn)行初始化,為1系統(tǒng)就開(kāi)始工作。(5)紅燈倒計(jì)計(jì)時(shí)時(shí)間,當(dāng)當(dāng)有車輛闖紅紅燈時(shí),啟動(dòng)動(dòng)蜂鳴器進(jìn)行行報(bào)警,3S后然后恢復(fù)正正常。(6)增加每次次綠燈時(shí)間車車流量檢測(cè)的的功能,并且且通過(guò)查詢P2.0端口的電平平是否為低,開(kāi)開(kāi)關(guān)按下為低低電平,雙位位數(shù)碼管顯示示車流量,直直到下一次綠綠燈時(shí)間重新新記入。(7)綠燈時(shí)間間倒計(jì)時(shí)完畢畢,重新循環(huán)環(huán)。第五章控制器器的軟件設(shè)計(jì)計(jì)5.1每秒鐘的的設(shè)定延時(shí)方法法可以有兩種種一中是利用用MCS-551內(nèi)部定時(shí)器器才生溢出中中斷來(lái)確定1秒的時(shí)間,另另一種是采用用軟延時(shí)的方方法。5.2計(jì)數(shù)器硬硬件延時(shí)計(jì)數(shù)器初值計(jì)計(jì)算定時(shí)器工作時(shí)時(shí)必須給計(jì)數(shù)數(shù)器送計(jì)數(shù)器器初值,這個(gè)個(gè)值是送到TH和TL中的。他是是以加法記數(shù)數(shù)的,并能從從全1到全0時(shí)自動(dòng)產(chǎn)生生溢出中斷請(qǐng)請(qǐng)求。因此,我我們可以把計(jì)計(jì)數(shù)器記滿為為零所需的計(jì)計(jì)數(shù)值設(shè)定為為C和計(jì)數(shù)初值值設(shè)定為T(mén)C可得到如下下計(jì)算通式::TCC=M-C式中,M為計(jì)數(shù)數(shù)器摸值,該該值和計(jì)數(shù)器器工作方式有有關(guān)。在方式式0時(shí)M為213;在方式1時(shí)M的值為216;在方式2和3為28計(jì)算公式T=(M-TTC)T計(jì)數(shù)或TC=M-TT/T計(jì)數(shù)T計(jì)數(shù)是單片片機(jī)時(shí)鐘周期期TCLK的122倍;TC為為定時(shí)初值如單片機(jī)的主脈脈沖頻率為TTCLK12MMHZ,經(jīng)經(jīng)過(guò)12分頻頻方式0TMAX==213*1微秒==8.1922毫秒方式1TMAX==216*1微秒==65.5336毫秒顯然1秒鐘已已經(jīng)經(jīng)超過(guò)了計(jì)計(jì)數(shù)數(shù)器的最大大定定時(shí)間,所所以以我們只有有采采用定時(shí)器器和和軟件相結(jié)結(jié)合合的辦法才才能能解決這個(gè)個(gè)問(wèn)問(wèn)題.5.2.311秒的方法法我們采用在在主主程序中設(shè)設(shè)定定一個(gè)初值值為為20的軟軟件件計(jì)數(shù)器和和使使T0定時(shí)時(shí)550毫秒..這這樣每當(dāng)TT00到50毫毫秒秒時(shí)CPUU就就響應(yīng)它的的溢溢出中斷請(qǐng)請(qǐng)求求,進(jìn)入他他的的中斷服務(wù)務(wù)子子程序。在在中中斷服務(wù)子子程程序中,CCPPU先使軟軟件件計(jì)數(shù)器減減11,然后判判斷斷它是否為為零零。為零表表示示1秒已到可可以返回到到輸輸出時(shí)間顯顯示示程序。相應(yīng)程序代碼(1)主程序定時(shí)器需需定定時(shí)50毫毫秒秒,故T00工工作于方式式11。初值值::TC==MM-T/T計(jì)數(shù)=216-50ms/1uus=1555536=33CCBOHORRGG100000HSSTTART::MOVTMODD,,#0011H;令TO為定定時(shí)器方式式11MOVTH0,,##33CH;裝入定時(shí)器器初值MOVTL0,,##BBOH;MOVIE,#82H;開(kāi)T0中斷斷SEBTTTRO;啟啟動(dòng)動(dòng)T0計(jì)數(shù)數(shù)器器MOVRO,#14H;軟件計(jì)數(shù)器器賦初值LOOP:SSJJMP$;;等待中斷斷(2)中斷服務(wù)務(wù)子子程序ORG00000BHAAJMPBRT00OORG0000BHBRTO:DDJJNZR0,NEEXTAAJJMPTIMEE;跳轉(zhuǎn)到時(shí)間間及信號(hào)燈燈顯顯示子程序DJNZ:MOOVVRO,###14H;;恢復(fù)R00值值MOVTH0,,##33CH;重裝入定時(shí)時(shí)器初值MMOVTTL0,#BBOOH;MMOVIIE,#82HRET1END5.3軟件延延時(shí)時(shí)MCS-5511的工作頻率率為2-12MMHZ,我們選用用的8031單片機(jī)的工工作頻率為6MHZ。機(jī)器周期期與主頻有有關(guān)關(guān),機(jī)器周周期期是主頻的12倍,所以一一個(gè)機(jī)器周周期期的時(shí)間為12*(1/6M)=2us。我們可以知知道具體每每條條指令的周周期期數(shù),這樣樣我我們就可以以通通過(guò)指令的的執(zhí)執(zhí)行條數(shù)來(lái)來(lái)確確定1秒的時(shí)間。具體的延時(shí)時(shí)程序分分析:DELAY::MMOVRR44,#088HH延時(shí)1秒子程序DE2:LCCAALLDDEELAY11DDJJNZRR44,DE22RREETDELAY1::MMOVRR66,#0延時(shí)125mss子程序MOVR55,,#0DE1:DDJNZRR5,$DJNZRR66,DE11RETMOVRN,##DATAA字節(jié)數(shù)數(shù)為2機(jī)器周期數(shù)數(shù)為1所以此指令的執(zhí)執(zhí)行行時(shí)間為2msDELAY1為為一個(gè)雙重重循循壞循環(huán)次數(shù)為256*2256=6655536所以延時(shí)時(shí)時(shí)間=655336*2==113107722us約為125ussDELAYRR4設(shè)置的初值值為8主延時(shí)程序序循環(huán)8次,所以125uss*8=11秒由于單片機(jī)的的運(yùn)行行速度很快快其其他的指令令執(zhí)執(zhí)行時(shí)間可可以以忽略不計(jì)計(jì)。5.4時(shí)間及及信信號(hào)燈的顯顯示示5.4.188051并行口的擴(kuò)擴(kuò)展80511雖雖然有4個(gè)8位I/O端口,但真正能提提供借用的的只只有P1口,因?yàn)镻2和P0口通常用于于傳送外部部傳傳送地址和和數(shù)數(shù)據(jù),P3口也有它的的第二功能能。因因此,8031通常常需要擴(kuò)展展。由由于我們用用外外部輸入設(shè)設(shè)定定紅綠燈倒倒計(jì)計(jì)時(shí)初值、數(shù)碼管的輸輸出顯示、紅綠黃信號(hào)燈燈的顯示都都要要用到一個(gè)I/O端口,顯然8031的端口是不不夠,需要要擴(kuò)擴(kuò)展。擴(kuò)展的方方法法有兩種::(1)借用外部RAM地址來(lái)擴(kuò)展I/O端口;(2)采用I/O接口新新片來(lái)擴(kuò)充充。我們用8255并行接口信信片來(lái)擴(kuò)展I/O端口。顯示原理當(dāng)定時(shí)器定時(shí)為為11秒,時(shí)程序序跳轉(zhuǎn)到時(shí)時(shí)間間顯示及信信號(hào)號(hào)燈顯示子子程程序,它將將依依次顯示信號(hào)號(hào)燈時(shí)間,同時(shí)一直直顯示信號(hào)號(hào)燈燈的顏色,這這這時(shí)在返回回定定時(shí)子程序序定定時(shí)一秒,在在在顯示黃燈燈的的下一個(gè)時(shí)時(shí)間間,這樣依依次次把所有的的燈燈色的時(shí)間間顯顯示完后在在重重新給時(shí)間間計(jì)計(jì)數(shù)器賦初初值值,重新進(jìn)入入循環(huán)。5.4.388255PPAA口輸出信號(hào)號(hào)接信號(hào)燈燈由于發(fā)光二極管管為為共陽(yáng)極接接法法,輸出端端口口為低電平平,對(duì)對(duì)應(yīng)的二極極管管發(fā)光,所所以以可以用置置位位方法點(diǎn)亮亮紅紅,綠,黃黃發(fā)發(fā)光二極管管。5.4.4882255輸出信號(hào)與與數(shù)碼管的的連連接LEDD燈的顯示原原理:通過(guò)同名管管腳上所加加電電平的高低低來(lái)來(lái)控制發(fā)光光二二極管是否否點(diǎn)點(diǎn)量而顯示示不不同的字形形如如SP,g,f,ee,d,cc,,b,a管角上加加上7FHH所所以SPP上上為0伏,不不不亮其余為為TTTL高電電平平,全亮則則顯顯示為8采用共陰級(jí)連接接::其中PC00\\PB0--aa,PC1\PB11-b,,PC2\PB22-c,,PC3\PB33-d,,PC4\PB44-e,,PC5\PB55-f,,PC6\PB66-gPC7\PB77-SSP接地顯示數(shù)值dopgffedccbaa驅(qū)動(dòng)代碼(166進(jìn)進(jìn)制)000111111113FH10000001110006H2010011001115BH3010001111114FH40111001110066H5011101110006DH6011111110007DH70000001111107H8011111111117FH表3驅(qū)動(dòng)動(dòng)代碼碼表5.4.5882255與8051的連連接用8051的PP0口的p0.77連接8255的片選信號(hào)cs我們用8031的地址采用用全譯碼方方式式,當(dāng)p0.7=0時(shí)片選有效效,其他無(wú)效,p0..1p00..1用于選擇8255端口P0.7pp00.6pp00.5pp00.4pp00.3pp00.2PP00.1PP00.0A7AA6A55A44A33A22A11A01XXXXXXXXXX000000H為8255的PA口1XXXXXXXXXX001101HH為8255的PB口1XXXXXXXXXX110002HH為8255的PC口1XXXXXXXXXX111103HH為8255的控制口由于8051是是分分時(shí)對(duì)8255和儲(chǔ)存器進(jìn)進(jìn)行訪問(wèn)所所以以8051的P0口不會(huì)發(fā)生生沖突5.5程序設(shè)設(shè)計(jì)計(jì)流程圖如圖所示示開(kāi)始開(kāi)始初始化初始化等待鍵盤(pán)事件等待鍵盤(pán)事件顯示程序處理鍵盤(pán)事件處理顯示程序處理鍵盤(pán)事件處理圖8圖9程序流流程圖圖程序源代碼OORG000000H;主程序的入入口地址LLJMPMMAIN;跳轉(zhuǎn)到主程程序的開(kāi)始始處處OORG000003H;外部中斷0的中斷程序序入口地址OORG00000BH;定時(shí)器0的中斷程序序入口地址址LLJMPTT0_INNTT;跳轉(zhuǎn)到中斷斷服務(wù)程序序處處OORG000013H;外部中斷1的中斷程序序入口地址MAIN:MMOVSSPP,#500HHMMOVIIEE,#8EEHH;CCPPU開(kāi)中斷,允允許T0中斷,T1中斷和外部部中斷1中斷MMOVTTMMOD,##551H;設(shè)置T1為計(jì)數(shù)方式,T0為定時(shí)方式式,且都工工作作于模式1MMOVTTHH1,#0000H;TT11計(jì)數(shù)器清零零MMOVTTLL1,#0000HSSETBTTR1;啟動(dòng)T1計(jì)時(shí)器SSETBEEX1;允許INT1中斷SSETBIIT1;選擇邊沿觸觸發(fā)方式MMOVDDPPTR,,##00033HHMMOVAA,,#800HH;給8255賦初值,8255工作于方式0MMOVX@@DPTRR,,AAGAIN:JJBP33..1,N00;判斷是否要要設(shè)定東西西方方向紅綠燈燈時(shí)時(shí)間的初值值,若P3.1為1則跳轉(zhuǎn)MMOVAA,,P1JJBP11..7,REEDD;判斷P1.7是否為1,若為1則設(shè)定紅燈燈時(shí)間,否否則則設(shè)定綠燈燈時(shí)時(shí)間MMOVRR00,#000HH;R0清零MMOVRR00,A;存入東西方方向綠燈初初始始時(shí)間MMOVRR33,ALLCALLLDISPP11LLCALLLDELAAYYAAJMPAAGAINNRED:MMOVAA,,P1AANLAA,,#7FHH;P1..77置0MMOVRR77,#000HH;R7清零MMOVRR77,A;存入東西方方向紅燈初初始始時(shí)間MMOVRR33,ALLCALLLDISPP11LLCALLLDELAAYYAAJMPAAGAINN;N0:SSETBTTR0;啟動(dòng)T0計(jì)時(shí)器MMOV7766H,R77;紅燈時(shí)間存存入76HN00:MMOVAA,,76H;東西方向禁禁止,南北北方方向通行MMOVRR33,AMMOVDDPPTR,##00000HH;置8255AA口,東西方方向紅燈亮亮,南南北方向綠綠燈燈亮MMOVAA,,#0DDDHHMMOVX@@DPTRR,,AN01:JJBP22..0,B00N02:SSETBPP3.0CCJNERR3,#0000H,N0011;比較R3中的值是否否為0,不為0轉(zhuǎn)到當(dāng)前指指令處執(zhí)行行;黃黃燈閃爍5秒程序N1:SSETBPP3.0MMOVRR33,#055HHMMOVDDPPTR,##00000HH;置8255AA口,東西,南南南北方向黃黃燈燈亮MMOVAA,,#0D44HHMMOVX@@DPTRR,,AN11:MMOVRR44,#000HHN12:CCJNERR4,#77DDH,$;黃燈持續(xù)亮0.5秒N13:MMOVDDPPTR,##00000HH;置8255AA口,南北方方向黃燈滅滅MMOVAA,,#0DDDHHMMOVX@@DPTRR,,AN14:MMOVRR44,#000HHCCJNERR4,#77DDH,$;黃燈持續(xù)滅0.5秒CCJNERR3,#0000H,N11;閃爍時(shí)間達(dá)5秒則退出;N2:MMOVRR77,#000HHMMOVAA,,R0;東西通行,南南南北禁止MMOVRR33,AMMOVDDPPTR,##00000HH;置8255AA口,東西方方向綠燈亮亮,南南北方向紅紅燈燈亮MMOVAA,,#0EBBHHMMOVX@@DPTRR,,AN21:JJBP22..0,T0033N22:CCJNERR3,#0000H,N2211;黃黃燈閃爍5秒程序N3:MMOVRR33,#055HHMMOVDDPPTR,##00000HH;置8255AA口,東西,南南南北方向黃黃燈燈亮MMOVAA,,#0E22HHMMOVX@@DPTRR,,AN31:MMOVRR44,#000HHCCJNERR4,#77DDH,$;黃燈持續(xù)亮0.5秒N32:MMOVDDPPTR,##00000HH;置8255AA口,南北方方向黃燈滅滅MMOVAA,,#0EBBHHMMOVX@@DPTRR,,AN33:MMOVRR44,#000HHCCJNERR4,#77DDH,$;黃燈持續(xù)滅0.5秒CCJNERR3,#0000H,N33;閃爍時(shí)間達(dá)5秒則退出SSJMPNN00;闖闖紅燈報(bào)警警程程序B0:MMOVRR22,#033HH;報(bào)警持續(xù)時(shí)時(shí)間3秒B01:MMOVAA,,R3JJZN11;若倒計(jì)時(shí)完完畢,不再再報(bào)報(bào)警CCLRPP33.0;報(bào)警CCJNERR2,#0000H,B0011;判斷3秒是否結(jié)束束SSJMPN02;11秒延時(shí)子程程序N7:RRETIT0_INT::MMOVTTLL0,#99AAH;給定時(shí)器T0送定時(shí)10ms的初值MMOVTTHH0,#00FF1HIINCRR44IINCRR55CCJNERR5,#00FFAH,TT001;判斷延時(shí)是是否夠一秒秒,不不夠則調(diào)用用顯顯示子程序序MMOVRR55,#000HH;;RR5清零DDECRR33;倒計(jì)時(shí)初值值減一DDECRR22;報(bào)警初值減減一T01:AACALLLDISPP;調(diào)用顯示子子程序RRETI;中斷返回;顯顯示子程序DISP:JJNBPP22.4,TT002DISP1:MMOVBB,,#0AHHMMOVAA,,R3;;R3中值二轉(zhuǎn)十十顯示轉(zhuǎn)換換DDIVAABBMMOV7799H,AMMOV77AAH,BDIS:MMOVAA,,79H;;顯示十位MMOVDDPPTR,##TTABMMOVCAA,@A++DDPTRMMOVDDPPTR,##00002HHMMOVX@@DPTRR,,AMMOVDDPPTR,##00001HHMMOVAA,,#0F77HMMOVX@@DPTRR,,ALLCALLLDELLAAYDS2:MMOVAA,,7AH;;顯示個(gè)位MMOVDDPPTR,##TTABMMOVCAA,@A++DDPTRMMOVDDPPTR,##00002HHMMOVX@@DPTRR,,AMMOVDDPPTR,##00001HHMMOVAA,,#0FBBHHMMOVX@@DPTRR,,ARRET;東東西方向車車流流量檢測(cè)程程序序T03:MMOVAA
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 成都醫(yī)學(xué)院《信息設(shè)計(jì)》2023-2024學(xué)年第一學(xué)期期末試卷
- 成都農(nóng)業(yè)科技職業(yè)學(xué)院《日本文學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 成都航空職業(yè)技術(shù)學(xué)院《中學(xué)思想政治課程教學(xué)設(shè)計(jì)》2023-2024學(xué)年第一學(xué)期期末試卷
- 成都工業(yè)職業(yè)技術(shù)學(xué)院《金屬熱處理》2023-2024學(xué)年第一學(xué)期期末試卷
- 成都紡織高等專科學(xué)?!都呻娐返膽?yīng)用電路》2023-2024學(xué)年第一學(xué)期期末試卷
- 混凝土地面修復(fù)施工方案
- 油田鋼結(jié)構(gòu)施工方案
- 2025年度民間標(biāo)準(zhǔn)借貸合同金融科技創(chuàng)新與金融服務(wù)3篇
- 山西礦山治理施工方案
- 2025版跨境電商商品購(gòu)銷合同擔(dān)保抵押執(zhí)行書(shū)3篇
- 隱患排查治理管理規(guī)定
- 2025材料供貨合同樣本
- 豪華酒店翻新工程協(xié)議
- 經(jīng)濟(jì)學(xué)原理模擬題含參考答案
- 科技強(qiáng)國(guó)建設(shè)視域下拔尖創(chuàng)新人才價(jià)值觀引導(dǎo)研究
- 馬鞍山酒柜定制合同范例
- 《電梯曳引系統(tǒng)設(shè)計(jì)技術(shù)要求》
- 【MOOC】中國(guó)天氣-南京信息工程大學(xué) 中國(guó)大學(xué)慕課MOOC答案
- 2025年攻讀博士學(xué)位期間擬開(kāi)展的研究計(jì)劃
- 2025版國(guó)家開(kāi)放大學(xué)法學(xué)本科《國(guó)際私法》歷年期末紙質(zhì)考試總題庫(kù)
- 職業(yè)道德試題及答案
評(píng)論
0/150
提交評(píng)論