自動化畢業(yè)設(shè)計(jì)基于-單片機(jī)交通燈系統(tǒng)設(shè)計(jì)_第1頁
自動化畢業(yè)設(shè)計(jì)基于-單片機(jī)交通燈系統(tǒng)設(shè)計(jì)_第2頁
自動化畢業(yè)設(shè)計(jì)基于-單片機(jī)交通燈系統(tǒng)設(shè)計(jì)_第3頁
自動化畢業(yè)設(shè)計(jì)基于-單片機(jī)交通燈系統(tǒng)設(shè)計(jì)_第4頁
自動化畢業(yè)設(shè)計(jì)基于-單片機(jī)交通燈系統(tǒng)設(shè)計(jì)_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、-. z化工職業(yè)技術(shù)學(xué)院畢業(yè)設(shè)計(jì)論文 基于單片機(jī)的交通燈設(shè)計(jì)姓 名:*所在系部:自動控制系專業(yè)班級:自動化*指導(dǎo)教師:*2021年12月Nanjing College of Chemical TechnologyGraduation project:Based on SCM traffic light designCandidate:*Supervisor:Q*Dec,2021 目 錄HYPERLINK l _Toc5117摘 要4HYPERLINK l _Toc5117第一章 引言5HYPERLINK l _Toc12160第二章交通管理方案論證6HYPERLINK l _Toc322802

2、.1設(shè)計(jì)任務(wù)6HYPERLINK l _Toc88392.2方案介紹6HYPERLINK l _Toc25219第三章 交通燈系統(tǒng)硬件設(shè)計(jì)73.1單片機(jī)概述73.2芯片選擇與介紹7HYPERLINK l _Toc322803.2.1 MCS-51芯片的簡介7HYPERLINK l _Toc88393.2.2 8255芯片簡介10HYPERLINK l _Toc83273.2.3 74LS373芯片簡介11HYPERLINK l _Toc2504第四章 控制器的軟件設(shè)計(jì)12HYPERLINK l _Toc243194.1 每秒鐘的設(shè)定12HYPERLINK l _Toc57454.2 計(jì)數(shù)器硬件

3、延時12HYPERLINK l _Toc202964.3 軟件延時14HYPERLINK l _Toc202964.4 時間及信號的顯示15HYPERLINK l _Toc202964.5 程序設(shè)計(jì)17HYPERLINK l _Toc9360第五章 結(jié)論26HYPERLINK l _Toc9360第六章 參考文獻(xiàn)27摘 要近年來隨著科技的飛速開展,單片機(jī)的應(yīng)用正在不斷深入,同時帶動傳統(tǒng)控制檢測技術(shù)日益更新。在實(shí)時檢測和自動控制的單片機(jī)應(yīng)用系統(tǒng)中,單片機(jī)往往作為一個核心部件來使用,僅單片機(jī)方面知識是不夠的,還應(yīng)根據(jù)具體硬件構(gòu)造軟硬件結(jié)合,加以完善。十字路口車輛穿梭,行人熙攘,車行車道,人行人道,

4、有條不紊。則靠什么來實(shí)現(xiàn)這井然秩序呢.靠的就是交通信號燈的自動指揮系統(tǒng)。交通信號燈控制方式很多。本系統(tǒng)采用MSC-51系列單片機(jī)ATSC51和可編程并行I/O接口芯片8255A為中心器件來設(shè)計(jì)交通燈控制器,實(shí)現(xiàn)了能根據(jù)實(shí)際車流量通過8051芯片的P1口設(shè)置紅、綠燈燃亮?xí)r間的功能;紅綠燈循環(huán)點(diǎn)亮,倒計(jì)時剩5秒時黃燈閃爍警示交通燈信號通過PA口輸出,顯示時間直接通過8255的PC口輸出至雙位數(shù)碼管;車輛闖紅燈報(bào)警;綠燈時間可檢測車流量并可通過雙位數(shù)碼管顯示。本系統(tǒng)實(shí)用性強(qiáng)、操作簡單、擴(kuò)展功能強(qiáng)。 關(guān)鍵詞:單片機(jī) 交通燈 闖紅燈 檢測車流量 第一章 引言當(dāng)今,紅綠燈安裝在各個道口上,已經(jīng)成為疏導(dǎo)交通

5、車輛最常見和最有效的手段。但這一技術(shù)在19世紀(jì)就已出現(xiàn)了。1858年,在英國倫敦主要街頭安裝了以燃煤氣為光源的紅,藍(lán)兩色的機(jī)械扳手式信號燈,用以指揮馬車通行。這是世界上最早的交通信號燈。1868年,英國機(jī)械工程師納伊特在倫敦威斯敏斯特區(qū)的議會大廈前的廣場上,安裝了世界上最早的煤氣紅綠燈。它由紅綠兩以旋轉(zhuǎn)式方形玻璃提燈組成,紅色表示“停頓,綠色表示“注意。1869年1月2日,煤氣燈爆炸,使警察受傷,遂被取消。電氣啟動的紅綠燈出現(xiàn)在美國,這種紅綠燈由紅綠黃三色圓形的投光器組成,1914年始安裝于紐約市5號大街的一座高塔上。紅燈亮表示“停頓,綠燈亮表示“通行。1918年,又出現(xiàn)了帶控制的紅綠燈和紅外

6、線紅綠燈。帶控制的紅綠燈,一種是把壓力探測器安在地下,車輛一接近紅燈便變?yōu)榫G燈;另一種是用擴(kuò)音器來啟動紅綠燈,司機(jī)遇紅燈時按一下嗽叭,就使紅燈變?yōu)榫G燈。紅外線紅綠燈當(dāng)行人踏上對壓力敏感的路面時,它就能發(fā)覺到有人要過馬路。紅外光束能把信號燈的紅燈延長一段時間,推遲汽車放行,以免發(fā)生交通事故。信號燈的出現(xiàn),使交通得以有效管制,對于疏導(dǎo)交通流量、提高道路通行能力,減少交通事故有明顯效果。1968年,聯(lián)合國?道路交通和道路標(biāo)志信號協(xié)定?對各種信號燈的含義作了規(guī)定。綠燈是通行信號,面對綠燈的車輛可以直行,左轉(zhuǎn)彎和右轉(zhuǎn)彎,除非另一種標(biāo)志制止*一種轉(zhuǎn)向。左右轉(zhuǎn)彎車輛都必須讓合法地正在路口行駛的車輛和過人行橫

7、道的行人優(yōu)先通行。紅燈是禁行信號,面對紅燈的車輛必須在穿插路口的停車線后停車。黃燈是警告信號,面對黃燈的車輛不能越過停車線,但車輛已十分接近停車線而不能平安停車時可以進(jìn)入穿插路口。第二章 交通管理方案論證2.1設(shè)計(jì)任務(wù):東西、南北兩干道交于一個十字路口,各干道有一組紅、黃、綠三色的指示燈,指揮車輛和行人平安通行。紅燈亮制止通行,綠燈亮允許通行。黃燈亮提示人們注意紅、綠燈的狀態(tài)即將切換,且黃燈燃亮?xí)r間為東西、南北兩干道的公共停車時間。設(shè)東西道比南北道的車流量大,指示燈燃亮的方案如表2。表2 亮燈順序和間隔時間60S5S100S5S東西道紅燈亮黃燈亮綠燈亮黃燈亮南北道綠燈亮黃燈亮紅燈亮黃燈亮2.2

8、方案介紹: 1當(dāng)東西方向?yàn)榧t燈,此道車輛制止通行,東西道行人可通過;南北道為綠燈,此道車輛通過,行人制止通行。時間為60秒。2黃燈閃爍5秒,警示車輛和行人紅、綠燈的狀態(tài)即將切換。 3當(dāng)東西方向?yàn)榫G燈,此道車輛通行;南北方向?yàn)榧t燈,南北道車輛制止通過,行人通行。時間為100秒。 東西方向車流大 通行時間長。4這樣如上表的時間和紅、綠、黃出現(xiàn)的順序依次出現(xiàn)這樣行人和車輛就能平安暢通的通行。5此表可根據(jù)車流量動態(tài)設(shè)定紅綠燈初始值。第三章 交通燈系統(tǒng)硬件設(shè)計(jì)3.1單片機(jī)的概述:單片機(jī)是一塊集成電路芯片上集中了控制器、存儲器、運(yùn)算器和輸入輸出端口的單片微型計(jì)算機(jī),它體積小,耗電省,主要用于構(gòu)成工業(yè)控制單

9、元,在過程控制、智能儀表、機(jī)電一體化和家用電器等領(lǐng)域起著重要的控制作用,所以準(zhǔn)確反映單片機(jī)本質(zhì)的叫法應(yīng)是微控制器Micro Controller Unit,MCU。通常,單片機(jī)由單個集成電路芯片構(gòu)成,部包含有計(jì)算機(jī)的根本功能部件:中央處理器、存儲器和I/O接口電路等。因此,單片機(jī)只需要和適當(dāng)?shù)能浖巴獠吭O(shè)備相結(jié)合,便可成為一個單片機(jī)控制系統(tǒng)。單片機(jī)自1976年由美國Inter公司推出MCS-48系列以來,從技術(shù)到應(yīng)用都有了相當(dāng)大的開展。經(jīng)過4個階段的開展,目前單片機(jī)正朝著高性能和多品種方向開展,它們的CPU功能在增強(qiáng),部資源在增多,引腳的多功能化,以及低電壓、低功耗??梢哉f,二十一世紀(jì)跨越了三

10、個“電的時代,即電氣時代、電子時代和現(xiàn)已進(jìn)入的電腦時代。不過,這種電腦通常是指個人計(jì)算機(jī),簡稱PC機(jī)。它由主機(jī)、鍵盤、顯示器等組成?,F(xiàn)在,單片機(jī)的使用領(lǐng)域已十分廣泛,如智能儀表、實(shí)時工控、通訊設(shè)備、導(dǎo)航系統(tǒng)、家用電器等。3.2芯片的選擇與介紹3.2.1 MSC-51芯片簡介MCS-51單片機(jī)部構(gòu)造8051是MCS-51系列單片機(jī)的典型產(chǎn)品,我們以這一代表性的機(jī)型進(jìn)展系統(tǒng)的講解。8051單片機(jī)包含中央處理器、程序存儲器(ROM)、數(shù)據(jù)存儲器(RAM)、定時/計(jì)數(shù)器、并行接口、串行接口和中斷系統(tǒng)等幾大單元及數(shù)據(jù)總線、地址總線和控制總線等三大總線,現(xiàn)在我們分別加以說明:中央處理器:中央處理器(CPU

11、)是整個單片機(jī)的核心部件,是8位數(shù)據(jù)寬度的處理器,能處理8位二進(jìn)制數(shù)據(jù)或代碼,CPU負(fù)責(zé)控制、指揮和調(diào)度整個單元系統(tǒng)協(xié)調(diào)的工作,完成運(yùn)算和控制輸入輸出功能等操作4。數(shù)據(jù)存儲器(RAM)8051部有128個8位用戶數(shù)據(jù)存儲單元和128個專用存放器單元,它們是統(tǒng)一編址的,專用存放器只能用于存放控制指令數(shù)據(jù),用戶只能,而不能用于存放用戶數(shù)據(jù),所以,用戶能使用的RAM只有128個,可存放讀寫的數(shù)據(jù),運(yùn)算的中間結(jié)果或用戶定義的字型表4。圖1 8051部構(gòu)造圖程序存儲器(ROM):8051共有4096個8位掩膜ROM,用于存放用戶程序,原始數(shù)據(jù)或表格4。定時/計(jì)數(shù)器(ROM):8051有兩個16位的可編程

12、定時/計(jì)數(shù)器,以實(shí)現(xiàn)定時或計(jì)數(shù)產(chǎn)生中斷用于控制程序轉(zhuǎn)向4。并行輸入輸出(I/O)口:8051共有4組8位I/O口(P0、 P1、P2或P3),用于對外部數(shù)據(jù)的傳輸4。全雙工串行口:8051置一個全雙工串行通信口,用于與其它設(shè)備間的串行數(shù)據(jù)傳送,該串行口既可以用作異步通信收發(fā)器,也可以當(dāng)同步移位器使用4。中斷系統(tǒng):8051具備較完善的中斷功能,有兩個外中斷、兩個定時/計(jì)數(shù)器中斷和一個串行中斷,可滿足不同的控制要求,并具有2級的優(yōu)先級別選擇2。時鐘電路:8051置最高頻率達(dá)12MHz的時鐘電路,用于產(chǎn)生整個單片機(jī)運(yùn)行的脈沖時序,但8051單片機(jī)需外置振蕩電容。單片機(jī)的構(gòu)造有兩種類型,一種是程序存儲

13、器和數(shù)據(jù)存儲器分開的形式,即哈佛(Harvard)構(gòu)造,另一種是采用通用計(jì)算機(jī)廣泛使用的程序存儲器與數(shù)據(jù)存儲器合二為一的構(gòu)造,即普林斯頓(Princeton)構(gòu)造。INTEL的MCS-51系列單片機(jī)采用的是哈佛構(gòu)造的形式,而后續(xù)產(chǎn)品16位的MCS-96系列單片機(jī)則采用普林斯頓構(gòu)造7。下列圖是MCS-51系列單片機(jī)的部構(gòu)造示意圖3.2.2 8255芯片簡介8255可編程并行接口芯片簡介: 8255可編程并行接口芯片有三個輸入輸出端口,即A口、B口和C口,對應(yīng)于引腳PA7PA0、PB7PB0和PC7PC0。其部還有一個控制存放器,即控制口。通常A口、B口作為輸入輸出的數(shù)據(jù)端口。C口作為控制或狀態(tài)信

14、息的端口,它在方式字的控制下,可以分成4位的端口,每個端口包含一個4位鎖存器。它們分別與端口A/B配合使用,可以用作控制信號輸出或作為狀態(tài)信號輸入6。8255可編程并行接口芯片方式控制字格式說明:8255有兩種控制命令字;一個是方式選擇控制字;另一個是C口按位置位/復(fù)位控制字。其中C口按位置位/復(fù)位控制字方式使用較為繁難,說明也較冗長,故在此不作表達(dá),需要時用戶可自行查找有關(guān)資料。方式控制字格式說明如表1:表1、方式選擇控制格式D7D6D5D4D3D2D1D0D7:設(shè)定工作方式標(biāo)志,1有效。D6、D5:A口方式選擇 0 0 方式00 1 方式11 方式2D4:A口功能 1=輸入,0=輸出D3:

15、C口高4位功能 1=輸入,0=輸出D2:B口方式選擇 0=方式0,1=方式1D1:B口功能 1=輸入,0=輸出D0:C口低4位功能 1=輸入,0=輸出8255可編程并行接口芯片工作方式說明:方式0:根本輸入/輸出方式。適用于三個端口中的任何一個。每一個端口都可以用作輸入或輸出。輸出可被鎖存,輸入不能鎖存6。方式1:選通輸入/輸出方式。這時A口或B口的8位外設(shè)線用作輸入或輸出,C口的4條線中三條用作數(shù)據(jù)傳輸?shù)穆?lián)絡(luò)信號和中斷請求信號6。方式2 :雙向總線方式。只有A口具備雙向總線方式,8位外設(shè)線用作輸入或輸出,此時C口的5條線用作通訊聯(lián)絡(luò)信號和中斷請求信號6。2.3.3 74LS373簡介74LS

16、373 是一種帶三態(tài)門的8D鎖存器,其管腳示意圖如下示:其中:1D-8D為8個輸入端。 1Q-8Q為8個輸出端。LE為數(shù)據(jù)打入端:當(dāng)LE為“1時,鎖存器輸出 狀態(tài)同輸入狀態(tài);當(dāng)LE由“1變“0時,數(shù)據(jù)打入鎖存器OE為輸出允許端:當(dāng)OE=0時,三態(tài)門翻開; 當(dāng)OE=1時,三態(tài)門關(guān)閉,輸出高阻。第四章 控制器的軟件設(shè)計(jì)4.1每秒鐘的設(shè)定延時方法可以有兩種一中是利用MCS-51部定時器才生溢出中斷來確定1秒的時間,另一種是采用軟延時的方法。4.2計(jì)數(shù)器硬件延時4.2.1 計(jì)數(shù)器初值計(jì)算定時器工作時必須給計(jì)數(shù)器送計(jì)數(shù)器初值,這個值是送到TH和TL中的。他是以加法記數(shù)的,并能從全1到全0時自動產(chǎn)生溢出中

17、斷請求。因此,我們可以把計(jì)數(shù)器記滿為零所需的計(jì)數(shù)值設(shè)定為C和計(jì)數(shù)初值設(shè)定為TC 可得到如下計(jì)算通式: TC=M-C式中,M為計(jì)數(shù)器摸值,該值和計(jì)數(shù)器工作方式有關(guān)。在方式0時M為213 ;在方式1時M的值為216;在方式2和3為28。4.2.2 計(jì)算公式 T=MTCT計(jì)數(shù)或TCM-TT計(jì)數(shù)T計(jì)數(shù)是單片機(jī)時鐘周期TCLK的12倍;TC為定時初值如單片機(jī)的主脈沖頻率為TCLK12MHZ,經(jīng)過12分頻方式0TMA*2131微秒8.192毫秒方式1TMA*2161微秒65.536毫秒顯然1秒鐘已經(jīng)超過了計(jì)數(shù)器的最大定時間,所以我們只有采用定時器和軟件相結(jié)合的方法才能解決這個問題1。4.2.3 1秒的方法

18、我們采用在主程序中設(shè)定一個初值為20的軟件計(jì)數(shù)器和使TO定時50毫秒這樣每當(dāng)TO到50毫秒時CPU就響應(yīng)它的溢出中斷請求,進(jìn)入他的中斷效勞子程序。在中斷效勞子程序中,CPU先使軟件計(jì)數(shù)器減1,然后判斷它是否為零,為零表示1秒已到可以返回到輸出時間顯示程序1。4.2.4 相應(yīng)程序代碼主程序定時器需定時50毫秒,故T0工作于方式1。初值:TCM-T T計(jì)數(shù)21650ms/1us=15536=3CBOHORG 1000HSTART: MOV TMOD, *01H ; 令T0為定時器方式1 MOV TH0, *3CH ; 裝入定時器初值 MOV TL0, *BOH ; MOV IE,*82H ; 開T

19、0中斷 SEBT TRO ; 啟動T0計(jì)數(shù)器 MOV RO,*14H; 軟件計(jì)數(shù)器賦初值LOOP:SJMP $; 等待中斷中斷效勞子程序 ORG 000BH AJMP BRTO ORG 00BH BRTO:DJNZ RO,NE*T AJMP TIME ; 跳轉(zhuǎn)到時間及信號燈顯示子程序 DJNZ:MOVRO,*14H; 恢復(fù)RO值 MOV TH0, *3CH ; 重裝入定時器初值MOV TL0, *BOHMOV IE, *82HRET1END4.3 軟件延時MCS-51的工作頻率為2-12MHZ,我們選用的8051單片機(jī)的工作頻率為6MHZ。機(jī)器周期與主頻有關(guān),機(jī)器周期是主頻的12倍,所以一個機(jī)

20、器周期的時間為12*1/6M=2us。我們可以知道具體每條指令的周期數(shù),這樣我們就可以通過指令的執(zhí)行條數(shù)來確定1秒的時間。 具體的延時程序分析:DELAY: MOV R4,*08H ;延時1秒子程序DE2:LCALL DELAY1 DJNZ R4,DE2RETDELAY1:MOV R6,*0 ;延時125ms 子程序MOV R5,*0DE1: DJNZ R5,$DJNZ R6,DE1RETMOV RN,*DATA 字節(jié)數(shù)數(shù)為2 ;機(jī)器周期數(shù)為1所以此指令的執(zhí)行時間為2ms DELAY1 為一個雙重循壞 循環(huán)次數(shù)為256*256=65536 所以延時時間=65536*2=131072us 約為1

21、25us DELAY R4設(shè)置的初值為8 主延時程序循環(huán)8次,所以125us*8= 1秒 由于單片機(jī)的運(yùn)行速度很快其他的指令執(zhí)行時間可以忽略不計(jì)4。4.4 時間及信號燈的顯示4.4.1 8051并行口的擴(kuò)展8051雖然有4個8位I/O端口,但真正能提供借用的只有P1口,因?yàn)镻2和P0口通常用于傳送外部傳送地址和數(shù)據(jù),P3口也有它的第二功能。因此,8031通常需要擴(kuò)展。由于我們用外部輸入設(shè)定紅綠燈倒計(jì)時初值、數(shù)碼管的輸出顯示、紅綠黃信號燈的顯示都要用到一個I/O端口,顯然8031的端口是不夠,需要擴(kuò)展。擴(kuò)展的方法有兩種:1借用外部RAM地址來擴(kuò)展I/O端口;2采用I/O接口新片來擴(kuò)大。我們用82

22、55并行接口信片來擴(kuò)展I/O端口10。4.4.2顯示原理:當(dāng)定時器定時為1秒,時程序跳轉(zhuǎn)到時間顯示及信號燈顯示子程序,它將依次顯示信號燈時間 ,同時一直顯示信號燈的顏色,這時在返回定時子程序定時一秒,在顯示黃燈的下一個時間,這樣依次把所有的燈色的時間顯示完后在重新給時間計(jì)數(shù)器賦初值 ,重新進(jìn)入循環(huán)。 4.4.3 8255PA口輸出信號接信號燈由于發(fā)光二極管為共陽極接法,輸出端口為低電平,對應(yīng)的二極管發(fā)光,所以可以用置位方法點(diǎn)亮紅,綠,黃發(fā)光二極管。8255輸出信號與數(shù)碼管的連接LED 燈的顯示原理:通過同名管腳上所加電平的上下來控制發(fā)光二極管是否點(diǎn)量而顯示不同的字形如 SP,g,f,e,d,c

23、,b,a管角上加上所以上為伏,不亮其余為高電平,全亮則顯示為10。采用共陰級連接:其中 PC0PB0-a,PC1PB1-b, PC2PB2-c,PC3PB3-d,PC4PB4-e, PC5PB5-f,PC6PB6-gPC7PB7 -SP接地表 3 驅(qū)動代碼表顯示數(shù)值dop g f e d c b a 驅(qū)動代碼16進(jìn)制00 0 1 1 1 1 1 1 3FH1 0 0 0 0 0 1 1 006H2 0 1 0 1 1 0 1 15BH3 0 1 0 0 1 1 1 14FH4 0 1 1 0 0 1 1 066H5 0 1 1 0 1 1 0 06DH6 0 1 1 1 1 1 0 07DH7

24、 0 0 0 0 0 1 1 107H8 0 1 1 1 1 1 1 17FH4.4.4 8255與8051的連接用8051的P0 口的 p0.7 連接8255的片選信號CS我們用8031的地址采用全譯碼方式,當(dāng)p0.7 =0 時片選有效, 其他無效, p0.1 用于選擇8255端口。P0.7 p0.6 p0.5 p0.4 p0.3 p0.2 P0.1 P0.0A7 A6 A5 A4 A3 A2 A1 A01 * * 0 0 00H為8255 的PA口1 * * 0 1 01H 為8255的PB口1 * * 1 0 02H 為8255的PC口1 * * 1 1 03H 為8255的控制口由于8

25、051是分時對8255和儲存器進(jìn)展所以8051的P0口不會發(fā)生沖突10。4.5 程序設(shè)計(jì)4.5.1流程圖如下圖11 圖9 程序流程圖4.5.2 程序源代碼11ORG 0000H ;主程序的入口地址LJMP MAIN ;跳轉(zhuǎn)到主程序的開場處ORG 0003H ;外部中斷0的中斷程序入口地址 ORG 000BH ;定時器0的中斷程序入口地址 LJMP T0_INT ;跳轉(zhuǎn)到中斷效勞程序處 ORG 0013H ;外部中斷1的中斷程序入口地址 MAIN : MOV SP,*50H MOV IE,*8EH ;CPU開中斷,允許T0中斷,T1中斷和外部中斷1中斷 MOV TMOD,*51H ;設(shè)置T1為計(jì)

26、數(shù)方式,T0為定時方式,且都工作于模式1 MOV TH1,*00H ;T1計(jì)數(shù)器清零 MOV TL1,*00H SETB TR1 ;啟動T1計(jì)時器 SETB E*1 ;允許INT1中斷 SETB IT1 ;選擇邊沿觸發(fā)方式 MOV DPTR ,*0003H MOV A, *80H ;給8255賦初值,8255工作于方式0 MOV* DPTR, AAGAIN: P3.1,N0 ;判斷是否要設(shè)定東西方向紅綠燈時間的初值,假設(shè)P3.1為1 則跳轉(zhuǎn) MOV A,P1 P1.7,RED ;判斷P1.7是否為1,假設(shè)為1則設(shè)定紅燈時間,否則設(shè)定綠燈時間 MOV R0,*00H ;R0清零 MOV R0,A

27、 ;存入東西方向綠燈初始時間 MOV R3,A LCALL DISP1 LCALL DELAY AJMP AGAINRED: MOV A,P1 ANL A,*7FH ;P1.7置0 MOV R7,*00H ;R7清零 MOV R7,A ;存入東西方向紅燈初始時間 MOV R3,A LCALL DISP1 LCALL DELAY AJMP AGAIN;-N0: SETB TR0 ;啟動T0計(jì)時器 MOV 76H,R7 ;紅燈時間存入76HN00: MOV A,76H ;東西方向制止,南北方向通行 MOV R3,A MOV DPTR,*0000H ;置8255A口,東西方向紅燈亮,南北方向綠燈亮

28、MOV A,*0DDH MOV* DPTR, AN01: P2.0,B0N02: SETB P3.0 CJNE R3,*00H,N01 ;比擬R3中的值是否為0,不為0轉(zhuǎn)到當(dāng)前指令處執(zhí)行;-黃燈閃爍5秒程序-N1: SETB P3.0 MOV R3,*05H MOV DPTR,*0000H ;置8255A口,東西,南北方向黃燈亮 MOV A,*0D4H MOV* DPTR,AN11: MOV R4,*00HN12: CJNE R4,*7DH,$ ;黃燈持續(xù)亮0.5秒N13: MOV DPTR,*0000H ; 置8255A口,南北方向黃燈滅 MOV A,*0DDH MOV* DPTR,AN14

29、: MOV R4,*00H CJNE R4,*7DH,$ ;黃燈持續(xù)滅0.5秒 CJNE R3,*00H,N1 ;閃爍時間達(dá)5秒則退出;-N2: MOV R7,*00H MOV A,R0 ;東西通行,南北制止 MOV R3,A MOV DPTR,*0000H ; 置8255A口,東西方向綠燈亮,南北方向紅燈亮 MOV A,*0EBH MOV* DPTR,AN21: P2.0,T03N22: CJNE R3,*00H,N21;-黃燈閃爍5秒程序-N3: MOV R3,*05H MOV DPTR,*0000H ;置8255A口,東西,南北方向黃燈亮 MOV A,*0E2H MOV* DPTR,AN

30、31: MOV R4,*00H CJNE R4,*7DH,$ ;黃燈持續(xù)亮0.5秒N32: MOV DPTR,*0000H ; 置8255A口,南北方向黃燈滅 MOV A,*0EBH MOV* DPTR,AN33: MOV R4,*00H CJNE R4,*7DH,$ ;黃燈持續(xù)滅0.5秒 CJNE R3,*00H,N3 ;閃爍時間達(dá)5秒則退出 SJMP N00;-闖紅燈報(bào)警程序-B0: MOV R2,*03H ;報(bào)警持續(xù)時間3秒B01: MOV A,R3 JZ N1 ;假設(shè)倒計(jì)時完畢,不再報(bào)警 CLR P3.0 ;報(bào)警 CJNE R2,*00H,B01 ;判斷3秒是否完畢SJMP N02;-

31、1秒延時子程序-N7: RETIT0_INT:MOV TL0,*9AH ;給定時器T0送定時10ms的初值 MOV TH0,*0F1H INC R4 INC R5 CJNE R5,*0FAH,T01 ;判斷延時是否夠一秒,不夠則調(diào)用顯示子程序 MOV R5,*00H ;R5清零 DEC R3 ;倒計(jì)時初值減一 DEC R2 ;報(bào)警初值減一T01: ACALL DISP ;調(diào)用顯示子程序 RETI ;中斷返回;-顯示子程序-DISP: JNB P2.4,T02DISP1: MOV B,*0AH MOV A,R3 ;R3中值二轉(zhuǎn)十顯示轉(zhuǎn)換 DIV AB MOV 79H,A MOV 7AH,BDIS

32、: MOV A,79H ;顯示十位 MOV DPTR,*TAB MOVC A,A+DPTR MOV DPTR,*0002H MOV* DPTR,A MOV DPTR,*0001H MOV A,*0F7H MOV* DPTR,ALCALL DELAYDS2: MOV A,7AH ;顯示個位 MOV DPTR,*TAB MOVC A,A+DPTR MOV DPTR,*0002H MOV* DPTR,A MOV DPTR,*0001H MOV A,*0FBH MOV* DPTR,A RET;-東西方向車流量檢測程序-T03: MOV A,R3 SUBB A,*00H ;假設(shè)綠燈倒計(jì)時完畢,不再檢測車流量 JZ N3 P2.0,T03 INC R7 CJNE R7,*64H,E1 MOV R7,*00H ;中斷到100次則清零E1: SJMP N22;-東西方向車流量顯示程序-T02: MOV B,*0AHMOV A,R7 ;R7中值二轉(zhuǎn)十顯示轉(zhuǎn)換 DIV AB MOV 79H,A MOV 7AH,BDIS3: MOV A,79H ;顯示十位 MOV DPTR,*TAB MOVC A,A+DPTR MOV DPTR,*0002H MOV* DPTR,A MOV DPTR,*0001H MOV A,*0F7H MOV* DPTR,A LCALL DELAYDS4: MOV A,7

溫馨提示

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

評論

0/150

提交評論