下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、基于單片機的交通燈控制器1引言當今,紅綠燈安裝在各個道口上,已經(jīng)成為疏導交通車輛最常見和最有效的手段。但這一技術(shù)在19世紀就已出現(xiàn)了。1858年,在英國倫敦主要街頭安裝了以燃煤氣為光源的紅,藍兩色的機械扳手式信號燈,用以指揮馬車通行。這是世界上最早的交通信號燈。1868年,英國機械工程師納伊特在倫敦威斯敏斯特區(qū)的議會大廈前的廣場上,安裝了世界上最早的煤氣紅綠燈。它由紅綠兩以旋轉(zhuǎn)式方形玻璃提燈組成, 紅色表示 停止”,綠色表示 注意"。1869年1月2日,煤氣燈爆炸, 使警察受傷,遂被取消。電氣啟動的紅綠燈出現(xiàn)在美國,這種紅綠燈由紅綠黃三色圓形的投光器組成,1914年始安裝于紐約市5號
2、大街的一座高塔上。紅燈亮表示停止”,綠燈亮表示 通行”。1918年,又出現(xiàn)了帶控制的紅綠燈和紅外線紅綠燈。帶控制的紅綠燈,一種是把壓力探測器安在地下,車輛一接近紅燈便變?yōu)榫G燈; 另一種是用擴音器來啟動紅綠燈, 司機遇紅燈時 按一下嗽叭,就使紅燈變?yōu)榫G燈。紅外線紅綠燈當行人踏上對壓力敏感的路面時,它就能察覺到有人要過馬路。紅外光束能把信號燈的紅燈延長一段時間,推遲汽車放行,以免發(fā)生交通事故。信號燈的出現(xiàn),使交通得以有效管制,對于疏導交通流量、提高道路通行能力,減少交通事 故有明顯效果。1968年,聯(lián)合國道路交通和道路標志信號協(xié)定對各種信號燈的含義作 了規(guī)定。綠燈是通行信號,面對綠燈的車輛可以直行
3、,左轉(zhuǎn)彎和右轉(zhuǎn)彎,除非另一種標志禁 止某一種轉(zhuǎn)向。左右轉(zhuǎn)彎車輛都必須讓合法地正在路口內(nèi)行駛的車輛和過人行橫道的行人優(yōu) 先通行。紅燈是禁行信號,面對紅燈的車輛必須在交叉路口的停車線后停車。黃燈是警告信號,面對黃燈的車輛不能越過停車線,但車輛已十分接近停車線而不能安全停車時可以進入交叉路口。2單片機概述單片機微型計算機是微型計算機的一個重要分支,也是頗具生命力的機種。 單片機微型計算機簡稱單片機,特別適用于控制領(lǐng)域,故又稱為微控制器。通常,單片機由單塊集成電路芯片構(gòu)成,內(nèi)部包含有計算機的基本功能部件:中央處理器、 存儲器和I/O接口電路等。因此,單片機只需要和適當?shù)能浖巴獠吭O(shè)備相結(jié)合,便可成為
4、一個單片機控制系統(tǒng)。單片機經(jīng)過1、2、3、3代的發(fā)展,目前單片機正朝著高性能和多品種方向發(fā)展,它們的 CPU功能在增強,內(nèi)部資源在增多,引角的多功能化,以及低電壓底功耗。3芯片簡介3.1 MSC-51 芯片簡介MCS-51單片機內(nèi)部結(jié)構(gòu)8051是MCS-51系列單片機的典型產(chǎn)品,我們以這一代表性的機型進行系統(tǒng)的講解。8051單片機包含中央處理器、程序存儲器 (ROM)、數(shù)據(jù)存儲器(RAM)、定時/計數(shù)器、并行 接口、串行接口和中斷系統(tǒng)等幾大單元及數(shù)據(jù)總線、 地址總線和控制總線等三大總線, 現(xiàn)在 我們分別加以說明: ?中央處理器:中央處理器(CPU)是整個單片機的核心部件,是8位數(shù)據(jù)寬度的處理器
5、, 能處理8位二進制數(shù)據(jù)或彳t碼,CPU負責控制、指揮和調(diào)度整個單元系統(tǒng)協(xié)調(diào)的工作,完成運算和控制輸入 輸出功能等操作。激據(jù)存儲器(RAM)8051內(nèi)部有128個8位用戶數(shù)據(jù)存儲單元和128個專用寄存器單元,它們是統(tǒng)一編址的,專用寄存器只能用于存放控制指令數(shù)據(jù),用戶只能訪問,而不能用于存放用戶數(shù)據(jù),所以,用戶能使用的RAM只有128個,可存放讀寫的數(shù)據(jù),運算的中間結(jié)果或用戶定義的字型表。圖1短序存儲器(ROM):8051共有4096個8位掩膜ROM,用于存放用戶程序,原始數(shù)據(jù)或表格。出時/計數(shù)器(ROM):8051有兩個16位的可編程定時/計數(shù)器,以實現(xiàn)定時或計數(shù)產(chǎn)生中斷用于控制程序轉(zhuǎn)向。于行
6、輸入輸出(I/O) 口:8051共有4組8位I/O 口 (P0、 P1、P2或P3),用于對外部數(shù)據(jù)的傳輸。 注雙工串行口:8051內(nèi)置一個全雙工串行通信口,用于與其它設(shè)備間的串行數(shù)據(jù)傳送,該串行口既可以用 作異步通信收發(fā)器,也可以當同步移位器使用。?中斷系統(tǒng):8051具備較完善的中斷功能,有兩個外中斷、兩個定時/計數(shù)器中斷和一個串行中斷,可滿足不同的控制要求,并具有2級的優(yōu)先級別選擇。加鐘電路:8051內(nèi)置最高頻率達12MHz的時鐘電路,用于產(chǎn)生整個單片機運行的脈沖時序,但8051單片機需外置振蕩電容。單片機的結(jié)構(gòu)有兩種類型,一種是程序存儲器和數(shù)據(jù)存儲器分開的形式,即哈佛(Harvard)結(jié)
7、構(gòu),另一種是采用通用計算機廣泛使用的程序存儲器與數(shù)據(jù)存儲器合二為一的結(jié)構(gòu),即普林斯頓(Princeton)結(jié)構(gòu)。INTEL的MCS-51系列單片機采用的是哈佛結(jié)構(gòu)的形式,而后續(xù)產(chǎn)品16位的MCS-96系列單片機則采用普林斯頓結(jié)構(gòu)。下圖是MCS-51系列單片機的內(nèi)部結(jié)構(gòu)示意圖2。MCS-51的引腳說明:MCS-51系列單片機中的 8031、8051及8751均采用40Pin封裝的雙列直接 DIP結(jié)構(gòu),右 圖是它們的引腳配置,40個引腳中,正電源和地線兩根,外置石英振蕩器的時鐘線兩根,4組8位共32個I/O 口,中斷口線與 P3 口線復用?,F(xiàn)在我們對這些引腳的功能加以說明:MCS-51的引腳說明:
8、MCS-51系列單片機中的 8031、8051及8751均采用40Pin封裝的雙列直接 DIP結(jié)構(gòu),右 圖是它們的引腳配置,40個引腳中,正電源和地線兩根,外置石英振蕩器的時鐘線兩根,4組8位共32個I/O 口,中斷口線與 P3 口線復用?,F(xiàn)在我們對這些引腳的功能加以說明: 如圖3Pin9:RESET/Vpd 復位信號復用腳,當 8051通電,時鐘電路開始工作,在 RESET引腳上 出現(xiàn)24個時鐘周期以上的高電平, 系統(tǒng)即初始復位。初始化后,程序計數(shù)器PC指向0000H , P0-P3輸出口全部為高電平, 堆棧指針寫入07H ,其它專用寄存器被清 “Q" RESET由高電 平下降為低
9、電平后,系統(tǒng)即從 0000H地址開始執(zhí)行程序。然而,初始復位不改變 RAM (包 括工作寄存器R0-R7 )的狀態(tài),8051的初始態(tài)。8051的復位方式可以是自動復位,也可以是手動復位,見下圖 4。此外,RESET/Vpd還是 一復用腳,Vcc掉電其間,此腳可接上備用電源,以保證單片機內(nèi)部RAM的數(shù)據(jù)不丟失。?Pin30:ALE/當訪問外部程序器時,ALE(地址鎖存)的輸出用于鎖存地址的低位字節(jié)。而訪 問內(nèi)部程序存儲器時,ALE端將有一個1/6時鐘頻率的正脈沖信號, 這個信號可以用于識別 單片機是否工作,也可以當作一個時鐘向外輸出。更有一個特點,當訪問外部程序存儲器, ALE會跳過一個脈沖。如
10、果單片機是EPROM ,在編程其間,將用于輸入編程脈沖。?Pin29:當訪問外部程序存儲器時,此腳輸出負脈沖選通信號,PC的16位地址數(shù)據(jù)將出現(xiàn) 在P0和P2 口上,外部程序存儲器則把指令數(shù)據(jù)放到P0 口上,由CPU讀入并執(zhí)行。?Pin31:EA/Vpp程序存儲器的內(nèi)外部選通線,8051和8751單片機,內(nèi)置有 4kB的程序存儲器,當EA為高電平并且程序地址小于 4kB時,讀取內(nèi)部程序存儲器指令數(shù)據(jù),而超過 4kB地址則讀取外部指令數(shù)據(jù)。如 EA為低電平,則不管地址大小,一律讀取外部程序存儲 器指令。顯然,對內(nèi)部無程序存儲器的8031,EA端必須接地。在編程時,EA/Vpp腳還需加上21V的編
11、程電壓。3.2 8255芯片簡介8255可編程并行接口芯片簡介:8255可編程并行接口芯片有三個輸入輸出端口,即A 口、B 口和C 口,對應(yīng)于引腳PA7PA0、PB7PB0和PC7PC0。其內(nèi)部還有一個控制寄存器,即控制口。通常 A 口、B 口作為輸入輸出的數(shù)據(jù)端口。C 口作為控制或狀態(tài)信息的端口,它在方式字的控制下, 可以分成4位的端口,每個端口包含一個 4位鎖存器。它們分別與端口 A/B配合使用,可以用 作控制信號輸出或作為狀態(tài)信號輸入。8255可編程并行接口芯片方式控制字格式說明:8255有兩種控制命令字;一個是方式選擇控制字;另一個是C 口按位置位/復位控制字。其中C 口按位置位/復位
12、控制字方式使用較為繁難,說明也較冗長,故在此不作敘述,需 要時用戶可自行查找有關(guān)資料。方式控制字格式說明如表1 :表1D7 D6 D5 D4 D3 D2 D1 D0D7 :設(shè)定工作方式標志,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 口低4位功能 (1 =輸入,0=輸出)8255可編程并行接口芯片工作方式說明:方式0:基本輸入/輸出方式。適用于三個端口中的任何一個。每一
13、個端口都可以用作輸入或輸出。輸出可被鎖存,輸入不能鎖存。方式1 :選通輸入/輸出方式。這時 A 口或B 口的8位外設(shè)線用作輸入或輸出,C 口的4條線中三條用作數(shù)據(jù)傳輸?shù)穆?lián)絡(luò)信號和中斷請求信號。方式2 :雙向總線方式。只有 A 口具備雙向總線方式,8位外設(shè)線用作輸入或輸出,此時C 口的5條線用作通訊聯(lián)絡(luò)信號和中斷請求信號。3.3 74LS373 簡介74LS373是一種帶三態(tài)門的 8D鎖存器,其管腳示意圖如下示:其中:1D-8D為8個輸入端。1Q-8Q為8個輸出端。LE為數(shù)據(jù)打入端:當LE為“十寸,鎖存器輸出狀態(tài)同輸入狀態(tài);當 LE由“使"時,數(shù)據(jù)打入鎖存器OE為輸出允許端:當 OE=
14、0時,三態(tài)門打開;當OE=1時,三態(tài)門關(guān)閉,輸出高阻。4系統(tǒng)硬件設(shè)計1 .1交通管理的方案論證東西、南北兩干道交于一個十字路口,各干道有一組紅、黃、綠三色的指示燈,指揮車輛和行人安全通行。紅燈亮禁止通行,綠燈亮允許通行。黃燈亮提示人們注意紅、綠燈的狀態(tài)即將切換,且黃燈燃亮時間為東西、南北兩干道的公共停車時間。設(shè)東西道比南北道的車流量 大,指示燈燃亮的方案如表 2。60S 5s 80S 5s 東西道紅燈亮黃燈亮綠燈亮黃燈亮南北道 綠燈亮 黃燈亮 紅燈亮 黃燈亮 表2說明:(1)當東西方向為紅燈,此道車輛禁止通行,東西道行人可通過;南北道為綠燈,此道車輛通過,行人禁止通行。時間為 60秒。(2)黃
15、燈閃爍5秒,警示車輛和行人紅、綠燈的狀態(tài)即將切換。(3)當東西方向為綠燈,此道車輛通行;南北方向為紅燈,南北道車輛禁止通過,行人通行。時間為80秒。東西方向車流大通行時間長。(4)這樣如上表的時間和紅、綠、黃出現(xiàn)的順序依次出現(xiàn)這樣行人和車輛就能安全暢通的 通行。(5)此表可根據(jù)車流量動態(tài)設(shè)定紅綠燈初始值。2 .2系統(tǒng)硬件設(shè)計選用設(shè)備8031單片機一片選用設(shè)備:8031彈片機一片,8255并行通用接口芯片一片, 74LS07兩片,MAX692'看門狗一片,共陰極的七段數(shù)碼管兩個雙向晶閘管若干,7805三端穩(wěn)壓電源一個,紅、黃、綠交通燈各兩個,開關(guān)鍵盤、連線若干。4 . 2. 1系統(tǒng)總框圖
16、如下:5 . 2. 2交通燈硬件線路圖6 . 2. 3系統(tǒng)工作原理(1)開關(guān)鍵盤輸入交通燈初始時間,通過 8051單片機P1輸入到系統(tǒng)(2)由8051單片機的定時器每秒鐘通過P0 口向8255的數(shù)據(jù)口送信息,由8255的PA 口顯示紅、綠、黃燈的燃亮情況;由 8255的PC 口顯示每個燈的燃亮時間。8051通過 設(shè)置 各個信號等的燃亮時間、通過 8031設(shè)置,綠、紅時間分別為60秒、80秒循環(huán)由8051的P0 口向8255的數(shù)據(jù)口輸出。(4)通過8051單片機的P3.0位來控制系統(tǒng)是工作或設(shè)置初值,當 .牌位0就對系統(tǒng)進行 初始化,為1系統(tǒng)就開始工作。(5)紅燈倒計時時間,當有車輛闖紅燈時,啟
17、動蜂鳴器進行報警,3S后然后恢復正常。(6)增加每次綠燈時間車流量檢測的功能,并且通過查詢 P2.0端口的電平是否為低,開 關(guān)按下為低電平,雙位數(shù)碼管顯示車流量,直到下一次綠燈時間重新記入。(7)綠燈時間倒計時完畢,重新循環(huán)。7 .控制器的軟件設(shè)計7.1 每秒鐘的設(shè)定延時方法可以有兩種一中是利用MCS-51內(nèi)部定時器才生溢出中斷來確定1秒的時間,另一種是采用軟延時的方法。7.2 計數(shù)器硬件延時7.2.1 計數(shù)器初值計算定時器工作時必須給計數(shù)器送計數(shù)器初值,這個值是送到TH和TL中的。他是以加法記數(shù)的,并能從全1到全0時自動產(chǎn)生溢出中斷請求。因此,我們可以把計數(shù)器記滿為零所需 的計數(shù)值設(shè)定為C和
18、計數(shù)初值設(shè)定為 TC可得到如下計算通式:TC=M-C式中,M為計數(shù)器摸值,該值和計數(shù)器工作方式有關(guān)。在方式 0時M為213 ;在方式1時 M的值為216 ;在方式 2和3為287.2.2 計算公式T= (M-TC) T 計數(shù)或TC = M T/T計數(shù)T計數(shù)是單片機時鐘周期 TCLK的12倍;TC為定時初值如單片機的主脈沖頻率為 TCLK12MHZ ,經(jīng)過12分頻方式0 TMAX =213 * 1微秒=8. 192毫秒方式1 TMAX =216 * 1微秒=65. 536毫秒顯然1秒鐘已經(jīng)超過了計數(shù)器的最大定時間,所以我們只有采用定時器和軟件相結(jié)合的辦法才能解決這個問題.7.2.3 1秒的方法我
19、們采用在主程序中設(shè)定一個初值為20的軟件計數(shù)器和使 T0定時50毫秒.這樣每當T0到50毫秒時CPU就響應(yīng)它的溢出中斷請求,進入他的中斷服務(wù)子程序。在中斷服務(wù)子程序中,CPU先使軟件計數(shù)器減1,然后判斷它是否為零。為零表示1秒已到可以返回到輸出時間顯示程序。7.2.4 相應(yīng)程序代碼(1)主程序定時器需定時50毫秒,故T0工作于方式1。初值:TC=MT/ T計數(shù) =216 50ms/1us=15536=3CBOHORG 1000HSTART: MOV TMOD, #01H ; 令 TO 為定時器方式 1MOV TH0, #3CH ;裝入定時器初值MOV TL0, #BOH ;MOV IE, #8
20、2H ;開 T0 中斷SEBT TRO ;啟動T0計數(shù)器MOV RO, #14H ;軟件計數(shù)器賦初值LOOP: SJMP $;等待中斷(2)中斷服務(wù)子程序ORG 000BHAJMP BRT0ORG 00BHBRTO : DJNZ R0 , NEXTAJMP TIME ;跳轉(zhuǎn)到時間及信號燈顯示子程序DJNZ : MOV RO , # 14H ;恢復 R0 值MOV TH0, #3CH ;重裝入定時器初值MOV TL0, #BOH ;MOV IE, #82HRET1END7.3 軟件延時MCS-51的工作頻率為2-12MHZ ,我們選用的8031單片機的工作頻率為 6MHZ。機器周期 與主頻有關(guān),
21、機器周期是主頻的12倍,所以一個機器周期的時間為12* (1/6M) =2us。我們可以知道具體每條指令的周期數(shù),這樣我們就可以通過指令的執(zhí)行條數(shù)來確定1秒的時間。具體的延時程序分析:DELAY:MOV R4,#08H 延時1秒子程序DE2:LCALL DELAY1DJNZ R4,DE2RETDELAY1:MOV R6,#0 延時 125ms 子程序MOV R5,#0DE1: DJNZ R5,$DJNZ R6,DE1RETMOV RN , #DATA 字節(jié)數(shù)數(shù)為2機器周期數(shù)為1所以此指令的執(zhí)行時間為2msDELAY1為一個雙重循壞循環(huán)次數(shù)為256*256=65536 所以延時時間 =65536
22、*2=131072us 約為 125usDELAY R4設(shè)置的初值為8主延時程序循環(huán) 8次,所以125us*8= 1秒由于單片機的運行速度很快其他的指令執(zhí)行時間可以忽略不計。7.4 時間及信號燈的顯示7.4.1 8051并行口的擴展8051雖然有4個8位I/O端口,但真正能提供彳t用的只有P1 口,因為P2和P0 口通常用于傳送外部傳送地址和數(shù)據(jù),P3 口也有它的第二功能。因此, 8031通常需要擴展。由于我們 用外部輸入設(shè)定紅綠燈倒計時初值、數(shù)碼管的輸出顯示、紅綠黃信號燈的顯示都要用到一個I/O端口,顯然8031的端口是不夠,需要擴展。擴展的方法有兩種:(1)借用外部RAM地址來擴展I/O端
23、口; (2)采用I/O接口新片來 擴充。我們用8255并行接口信片來擴展I/O端口。7.4.2 顯示原理:當定時器定時為1秒,時程序跳轉(zhuǎn)到時間顯示及信號燈顯示子程序,它將依次顯示信號燈 時間,同時一直顯示信號燈的顏色,這時在返回定時子程序定時一秒,在顯示黃燈的下一 個時間,這樣依次把所有的燈色的時間顯示完后在重新給時間計數(shù)器賦初值,重新進入循環(huán)。7.4.3 8255PA 口輸出信號接信號燈:由于發(fā)光二極管為共陽極接法,輸出端口為低電平,對應(yīng)的二極管發(fā)光,所以可以用置位方法點亮紅,綠,黃發(fā)光二極管。7.4.4 8255輸出信號與數(shù)碼管的連接:LED燈的顯示原理:通過同名管腳上所加電平的高低來控制
24、發(fā)光二極管是否點量而顯示不 同的字形如 SP, g,f,e,d,c,b,a 管角上加上7FH所以SP上為0伏,不亮其余為TTL高電 平,全亮則顯示為 8 采用共陰級連接: 其中 PC0PB0-a,PC1PB1-b,PC2PB2-c,PC3PB3-d,PC4PB4-e,PC5PB5-f,PC6PB6-gPC7PB7 -SP 接地顯示數(shù)值 dop g f e d c b a 驅(qū)動代碼(16進制)0 0 0 1 1 1 1 1 1 3FH1 0 0 0 0 0 1 1 0 06H2 0 1 0 1 1 0 1 1 5BH3 0 1 0 0 1 1 1 1 4FH4 0 1 1 0 0 1 1 0 6
25、6H5 0 1 1 0 1 1 0 0 6DH6 0 1 1 1 1 1 0 0 7DH7 0 0 0 0 0 1 1 1 07H8 0 1 1 1 1 1 1 1 7FH表3驅(qū)動代碼表7.4.5 8255 與 8051 的連接: 用8051的P0 口的p0.7 連接8255的片選信號 當p0.7 =0時片選有效, 其他無效, p0.1 p0.1cs我們用8031的地址采用全譯碼方式, 用于選擇8255端口P0.7 p0.6 p0.5 p0.4 p0.3 p0.2 P0.1 P0.01 X X X X X 0 0 00H1 X X X X X 0 1 01H1 X X X X X 1 0 02
26、H1 X X X X X 1 1 03H為 8255 的 PA 口為 8255 的 PB 口為 8255 的 PC 口 為8255的控制口由于8051是分時對8255和儲存器進行訪問所以8051的P0 口不會發(fā)生沖突A7 A6 A5 A4 A3 A2 A1 A07.5 程序設(shè)計7.5.1 流程圖如圖所示圖9程序流程圖7.5.2 程序源代碼ORG 0000H ;主程序的入口地址LJMP MAIN ;跳轉(zhuǎn)到主程序的開始處ORG 0003H ;外部中斷0的中斷程序入口地址ORG 000BH ;定時器0的中斷程序入口地址LJMP T0_INT ;跳轉(zhuǎn)到中斷服務(wù)程序處ORG 0013H ;外部中斷1的中
27、斷程序入口地址MAIN : MOV SP,#50HMOV IE,#8EH ;CPU 開中斷,允許 T0中斷,T1中斷和外部中斷1中斷MOV TMOD,#51H ;設(shè)置T1為計數(shù)方式,T0為定時方式,且都工作于模式1MOV TH1,#00H ;T1 計數(shù)器清零MOV TL1,#00HSETB TR1 ;啟動T1計時器SETB EX1 ;允許INT1中斷SETB IT1 ;選擇邊沿觸發(fā)方式MOV DPTR ,#0003HMOV A, #80H ;給8255賦初值,8255工作于方式 0 MOVX DPTR, AAGAIN: JB P3.1,N0 ;判斷是否要設(shè)定東西方向紅綠燈時間的初值,若 P3.
28、1為1則跳轉(zhuǎn) MOV A,P1JB P1.7,RED ;判斷P1.7是否為1,若為1則設(shè)定紅燈時間,否則設(shè)定綠燈時間 MOV R0,#00H ;R0 清零MOV R0,A ;存入東西方向綠燈初始時間MOV R3,ALCALL DISP1LCALL DELAYAJMP AGAIN RED: MOV A,P1 ANL A,#7FH ;P1.7 置 0 MOV R7,#00H ;R7 清零MOV R7,A ;存入東西方向紅燈初始時間MOV R3,ALCALL DISP1 LCALL DELAYAJMP AGAIN ;N0: SETB TR0 ;啟動T0計時器 MOV 76H,R7 ;紅燈時間存入76
29、HN00: MOV A,76H ;東西方向禁止,南北方向通行MOV R3,AMOV DPTR,#0000H ;置8255A 口,東西方向紅燈亮,南北方向綠燈亮MOV A,#0DDHMOVX DPTR, A N01: JB P2.0,B0 N02: SETB P3.0CJNE R3,#00H,N01 ;比較R3中的值是否為0,不為0轉(zhuǎn)到當前指令處執(zhí)行 ;-黃燈閃爍5秒程序-N1: SETB P3.0MOV R3,#05HMOV DPTR,#0000H ; 置8255A 口,東西,南北方向黃燈亮MOV A,#0D4HMOVX DPTR,A N11: MOV R4,#00H N12: CJNE R4
30、,#7DH,$ ; 黃燈持續(xù)亮 0.5 秒N13: MOV DPTR,#0000H ; 置 8255A 口,南北方向黃燈滅MOV A,#0DDH MOVX DPTR,A N14: MOV R4,#00HCJNE R4,#7DH,$ ;黃燈持續(xù)滅 0.5秒CJNE R3,#00H,N1 ;閃爍時間達5秒則退出 ;N2: MOV R7,#00HMOV A,R0 ;東西通行,南北禁止MOV R3,AMOV DPTR,#0000H ; 置8255A 口,東西方向綠燈亮,南北方向紅燈亮MOV A,#0EBHMOVX DPTR,AN21: JB P2.0,T03N22: CJNE R3,#00H,N21;
31、-黃燈閃爍5秒程序-N3: MOV R3,#05HMOV DPTR,#0000H ; 置8255A 口,東西,南北方向黃燈亮MOV A,#0E2HMOVX DPTR,AN31: MOV R4,#00HCJNE R4,#7DH,$ ;黃燈持續(xù)亮0.5秒N32: MOV DPTR,#0000H ; 置 8255A 口,南北方向黃燈滅MOV A,#0EBHMOVX DPTR,AN33: MOV R4,#00HCJNE R4,#7DH,$ ;黃燈持續(xù)滅 0.5秒CJNE R3,#00H,N3 ;閃爍時間達5秒則退出SJMP N00;-闖紅燈報警程序-B0: MOV R2,#03H ;報警持續(xù)時間 3秒
32、B01: MOV A,R3JZ N1 ;若倒計時完畢,不再報警CLR P3.0 ;報警CJNE R2,#00H,B01 ; 判斷3秒是否結(jié)束SJMP N02;-1秒延時子程序N7: RETIT0_INT:MOV TL0,#9AH ; 給定日器 T0送定時10ms的初值MOV TH0,#0F1HINC R4INC R5CJNE R5,#0FAH,T01 ;判斷延時是否夠一秒,不夠則調(diào)用顯示子程序MOV R5,#00H ;R5 清零DEC R3 ;倒計時初值減一DEC R2 ;報警初值減一T01: ACALL DISP ;調(diào)用顯示子程序RETI ;中斷返回 ;顯示子程序DISP: JNB P2.4,T02DISP1: MOV B,#0AHMOV A,R3 ;R3 中值二轉(zhuǎn)十顯示轉(zhuǎn)換DIV ABMOV 79H,AMOV 7AH,BDIS: MOV A,79H ;顯示十位MOV DPTR,#TABMO
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 跨境電商商品上架制作準備工作(課件)
- 校園圖書館安全應(yīng)急預案修訂
- 肺部小結(jié)節(jié)的診療與處理精講課解讀 (1)課件
- 物理光的折射課件
- 2026年寧夏單招專升本銜接備考經(jīng)典題含答案職業(yè)本科方向
- 郴州博物館課件
- 2026年北京單招人工智能技術(shù)應(yīng)用專業(yè)基礎(chǔ)題庫含答案
- 2026年寧夏單招護理專業(yè)中職生技能操作模擬題含答案含靜脈輸液規(guī)范
- 校園食品安全:從源頭到餐桌
- 2026年廣西退役士兵單招技能測試零基礎(chǔ)專用題庫含答案
- 2025永豐街道平安工作服務(wù)站工作人員招聘7人模擬筆試試題及答案解析
- 2025西部科學城重慶高新區(qū)人才緊缺招聘35人筆試考試備考題庫及答案解析
- 2025云南省人民檢察院招聘22人筆試考試參考題庫及答案解析
- 2025年慢性阻塞性肺病藥物使用規(guī)范答案及解析
- 2026(人教版)數(shù)學五上期末復習大全(知識梳理+易錯題+壓軸題+模擬卷)
- DB3205-T 1123-2024 職業(yè)教育集團建設(shè)與運行規(guī)范
- 2025年政府財務(wù)崗面試題及答案
- 廣東省東華高級中學2026屆高一化學第一學期期末統(tǒng)考試題含解析
- 2025醫(yī)療器械檢測行業(yè)全面分析及質(zhì)量監(jiān)管與發(fā)展趨勢報告
- 口腔診所管理運營培訓課件
- 中國葡萄膜炎臨床診斷要點專家共識2025
評論
0/150
提交評論