交通燈設(shè)計論文_第1頁
交通燈設(shè)計論文_第2頁
交通燈設(shè)計論文_第3頁
交通燈設(shè)計論文_第4頁
交通燈設(shè)計論文_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、摘要 近年來隨著科技的飛速開展,單片機的應(yīng)用正在不斷地走向深入,同時帶動傳統(tǒng)控制檢測日新月異更新。十字路口車輛穿梭,行人熙攘,車行車道,人行人道,有條不紊。那么靠什么來實現(xiàn)這井然秩序呢?靠的是交通信號燈的自動指揮系統(tǒng)。交通信號燈控制方式很多。本系統(tǒng)采用MSC-51系列單片機Intel8031和可編程并行I/O接口芯片8255A為中心器件來設(shè)計交通燈控制器,實現(xiàn)了能根據(jù)實際車流量通過8031芯片的P1口設(shè)置紅、綠燈燃亮?xí)r間的功能;為了系統(tǒng)穩(wěn)定可靠采用了MAX629“看門狗芯片,防止了系統(tǒng)因為死機而停止工作的情況發(fā)生;顯示時間直接通過8255的PA、PB口輸出;交通燈信號通過PC口輸出;交通燈的點

2、亮采用VT雙向晶閘管來控制,直接采用220V交流電源驅(qū)動,系統(tǒng)實用性強、操作簡單、擴展性強。在實時檢測和自動控制的單片機應(yīng)用系統(tǒng)中,單片機往往是作為一個核心部件來使用,僅單片機方面知識是不夠的,還應(yīng)根據(jù)具體硬件結(jié)構(gòu),以及針對具體應(yīng)用對象特點的軟件結(jié)合,加以完善。關(guān)鍵詞:單片機 交通燈 控制器 設(shè)計 實現(xiàn)ABSTRACTIn recent years along with science and technology develop fast, the application of single flat machine is moving towards thorough continuous

3、ly, at the same time drive traditional control detection day the benefit of new moon update. In the only flat machine application system of the automatic control and detection of real time, only flat machine is often to use as a key parts, only single flat machine aspect knowledge is insufficient ,

4、return should basis specificly hardware structure, as well as aim at the software that applies object characteristic specificly combination, perfect.Crossroads vehicle wear comb, pedestrian Xi Rang, turn to be all right lane, person pedestrian says , methodically. Do you lean what to realize this or

5、derly order? What lean is that the automatic command system of traffic signal lamp. Traffic signal lamp control way is many . This system adopts MSC-51 series only flat machine Intel8031 with but programming parallel interface chip 8255 A of I/O is central device the design controler of traffic ligh

6、ts, haverealized can measure according to actual wagon flow the P1 installation bonus and green light that passes through 8031 chips burn to light the function of time; For system stabilize reliable have adopted MAX629 the chip " dog looks after the house ", have avoided that system stops

7、working condition because of halting to occur; Show that time is directly exported through PB and PA of 8255; The signal of traffic lights is exported through usually PC mouth; The point of traffic lights light to adopt VT two-way Jing floodgate pipe come to control, directly drive with the alternat

8、ing current source of 220 V, practicality is strong, operating is simple.Keywords: Only flat machine Traffic lights Controler Design Realize緒論隨著社會經(jīng)濟的開展,交通問題越來越引起人們的關(guān)注。人、車、路三者關(guān)系的協(xié)調(diào),已成為交通管理部門需要解決的重要問題之一。交通控制系統(tǒng)是用于城市交通數(shù)據(jù)監(jiān)測、交通信號燈控制與交通疏導(dǎo)的計算機綜合管理系統(tǒng),它是現(xiàn)代交通監(jiān)控指揮系統(tǒng)中最重要的組成局部。在今天,紅綠燈安裝在各個道口上,已經(jīng)成為疏導(dǎo)交通車輛最常見和最有效的手段

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

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

11、是禁行信號,面對紅燈的車輛必須在交叉路口的停車線后停車。黃燈是警告信號,面對黃燈的車輛不能越過停車線,但車輛已十分接近停車線而不能平安停車時可以進入交叉路口。第1章 單片機概述單片機微型計算機是微型計算機的一個重要分支,也是頗具生命力的機種。單片機微型計算機簡稱單片機,特別適用于控制領(lǐng)域,故又稱為微控制器。通常,單片機由單塊集成電路芯片構(gòu)成,內(nèi)部包含有計算機的根本功能部件:中央處理器、存儲器和I/O接口電路等。因此,單片機只需要和適當(dāng)?shù)能浖巴獠吭O(shè)備相結(jié)合,便可成為一個單片機控制系統(tǒng)。單片機經(jīng)過1、2、3、3代的開展,目前單片機正朝著高性能和多品種方向開展,它們的CPU功能在增強,內(nèi)部資源在增

12、多,引角的多功能化,以及低電壓底功耗。 芯片的選擇與簡介 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ù)寬度的處理器,能處理8位二進制數(shù)據(jù)或代碼,CPU負責(zé)控制、指揮和調(diào)度整個單元系統(tǒng)協(xié)調(diào)的工作,完成運算和控制輸入輸出功能等操作。

13、3;數(shù)據(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)向。·并行輸入輸出(I/O)口:8051共有4組8位I/O口(P0、 P1、P2或P3),

14、用于對外部數(shù)據(jù)的傳輸。·全雙工串行口:8051內(nèi)置一個全雙工串行通信口,用于與其它設(shè)備間的串行數(shù)據(jù)傳送,該串行口既可以用作異步通信收發(fā)器,也可以當(dāng)同步移位器使用。·中斷系統(tǒng):8051具備較完善的中斷功能,有兩個外中斷、兩個定時/計數(shù)器中斷和一個串行中斷,可滿足不同的控制要求,并具有2級的優(yōu)先級別選擇。·時鐘電路:8051內(nèi)置最高頻率達12MHz的時鐘電路,用于產(chǎn)生整個單片機運行的脈沖時序,但8051單片機需外置振蕩電容。單片機的結(jié)構(gòu)有兩種類型,一種是程序存儲器和數(shù)據(jù)存儲器分開的形式,即哈佛(Harvard)結(jié)構(gòu),另一種是采用通用計算機廣泛使用的程序存儲器與數(shù)據(jù)存儲

15、器合二為一的結(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。 圖2MCS-51的引腳說明:MCS-51系列單片機中的8031、8051及8751均采用40Pin封裝的雙列直接DIP結(jié)構(gòu),右圖是它們的引腳配置,40個引腳中,正電源和地線兩根,外置石英振蕩器的時鐘線兩根,4組8位共32個I/O口,中斷口線與P3口線復(fù)用?,F(xiàn)在我們對這些引腳的功能加以說明:MCS-51的引腳說明: 圖3MCS-51系列單片機中的8031、8051及875

16、1均采用40Pin封裝的雙列直接DIP結(jié)構(gòu),右圖是它們的引腳配置,40個引腳中,正電源和地線兩根,外置石英振蕩器的時鐘線兩根,4組8位共32個I/O口,中斷口線與P3口線復(fù)用?,F(xiàn)在我們對這些引腳的功能加以說明:如圖3Pin9:RESET/Vpd復(fù)位信號復(fù)用腳,當(dāng)8051通電,時鐘電路開始工作,在RESET引腳上出現(xiàn)24個時鐘周期以上的高電平,系統(tǒng)即初始復(fù)位。初始化后,程序計數(shù)器PC指向0000H,P0-P3輸出口全部為高電平,堆棧指針寫入07H,其它專用存放器被清“0”。RESET由高電平下降為低電平后,系統(tǒng)即從0000H地址開始執(zhí)行程序。然而,初始復(fù)位不改變RAM包括工作存放器R0-R7的狀

17、態(tài),8051的初始態(tài)。8051的復(fù)位方式可以是自動復(fù)位,也可以是手動復(fù)位,見下列圖4。此外,RESET/Vpd還是一復(fù)用腳,Vcc掉電其間,此腳可接上備用電源,以保證單片機內(nèi)部RAM的數(shù)據(jù)不喪失。圖4·Pin30:ALE/當(dāng)訪問外部程序器時,ALE(地址鎖存)的輸出用于鎖存地址的低位字節(jié)。而訪問內(nèi)部程序存儲器時,ALE端將有一個1/6時鐘頻率的正脈沖信號,這個信號可以用于識別單片機是否工作,也可以當(dāng)作一個時鐘向外輸出。更有一個特點,當(dāng)訪問外部程序存儲器,ALE會跳過一個脈沖。如果單片機是EPROM,在編程其間,將用于輸入編程脈沖。·Pin29:當(dāng)訪問外部程序存儲器時,此腳輸

18、出負脈沖選通信號,PC的16位地址數(shù)據(jù)將出現(xiàn)在P0和P2口上,外部程序存儲器那么把指令數(shù)據(jù)放到P0口上,由CPU讀入并執(zhí)行。·Pin31:EA/Vpp程序存儲器的內(nèi)外部選通線,8051和8751單片機,內(nèi)置有4kB的程序存儲器,當(dāng)EA為高電平并且程序地址小于4kB時,讀取內(nèi)部程序存儲器指令數(shù)據(jù),而超過4kB地址那么讀取外部指令數(shù)據(jù)。如EA為低電平,那么不管地址大小,一律讀取外部程序存儲器指令。顯然,對內(nèi)部無程序存儲器的8031,EA端必須接地。在編程時,EA/Vpp腳還需加上21V的編程電壓。1.1.2 8255芯片簡介8255可編程并行接口芯片簡介:8255可編程并行接口芯片有三個

19、輸入輸出端口,即A口、B口和C口,對應(yīng)于引腳PA7PA0、PB7PB0和PC7PC0。其內(nèi)部還有一個控制存放器,即控制口。通常A口、B口作為輸入輸出的數(shù)據(jù)端口。C口作為控制或狀態(tài)信息的端口,它在方式字的控制下,可以分成4位的端口,每個端口包含一個4位鎖存器。它們分別與端口A配合使用,可以用作控制信號輸出或作為狀態(tài)信號輸入。8255可編程并行接口芯片方式控制字格式說明:8255有兩種控制命令字;一個是方式選擇控制字;另一個是C口按位置位復(fù)位控制字。其中C口按位置位復(fù)位控制字方式使用較為繁難,說明也較冗長,故在此不作表達,需要時用戶可自行查找有關(guān)資料。方式控制字格式說明如表1:D7D6D5D4D3

20、D2D1D0 表1 D7:設(shè)定工作方式標志,1有效。 D6、D5:A口方式選擇 0 0 方式0 0 1 方式1 1 ×方式2 D4: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:根本輸入輸出方式。適用于三個端口中的任何一個。每一個端口都可以用作輸入或輸出。輸出可被鎖存,輸入不能鎖存。方式1:選通輸入輸出方式。這時A口或B口的8位外設(shè)線用作輸入或輸出,C口的4條線中三條用作數(shù)據(jù)傳輸?shù)穆?lián)絡(luò)信號和中斷

21、請求信號。方式2 :雙向總線方式。只有A口具備雙向總線方式,8位外設(shè)線用作輸入或輸出,此時C口的5條線用作通訊聯(lián)絡(luò)信號和中斷請求信號。 其他器件數(shù)共陰極的七段數(shù)碼管。如圖5:圖5VT為雙向晶閘管,當(dāng)門極為高電平時晶閘管導(dǎo)通,該支路指示燈亮;當(dāng)門極為低電平時晶閘管關(guān)斷,該支路指示燈滅。1.2 74LS373功能與用途74LS373是一個三態(tài)輸出的器件,置數(shù)全并行存?。壕彌_控制輸入:數(shù)據(jù)有效遲后于時鐘信號有效。這意味著時鐘信號先到,數(shù)據(jù)信號后到。在某些運算器電路中有時采用鎖存器作為數(shù)據(jù)暫存器。74LS373管腳排列及內(nèi)部結(jié)構(gòu)為: 圖6 74LS373管腳圖 表2 74LS3733功能表輸出控制允許

22、G D輸出LH HHLH LLLL XQ0HX XZ第2章 控制器硬件系統(tǒng)設(shè)計交通管理的方案論證A、B兩干道交于一個十字路口,各干道有一組紅、黃、綠三色的指示燈,指揮車輛和行人平安通行。紅燈亮禁止通行,綠燈亮允許通行。黃燈亮提示人們注意紅、綠燈的狀態(tài)即將切換,且黃燈燃亮?xí)r間為A、B兩干道的公共停車時間。設(shè)A道比B道的車流量大,指示燈燃亮的方案如表2。360380360A道黃燈亮紅燈亮黃燈亮綠燈亮黃燈亮紅燈亮B道黃燈亮綠燈亮黃燈亮紅燈亮黃燈亮綠燈亮表3此表3說明:1當(dāng)為黃燈時 A、B兩道同時為黃燈;以提示行人或車輛下一個燈色即將到來 時間 3秒。2當(dāng)A到為紅燈,A 道車輛禁止通行,A 道行人可通

23、過;B 道為綠燈,B 道車輛通過,行人禁止通行。時間為60秒。3當(dāng)A道綠燈,A 道車輛通行;B 道為紅燈,B 道車輛禁止通過,行人通行。時間為80秒。 A道車流大 通行時間長4這樣如上表的時間和紅、綠、黃出現(xiàn)的順序依次出現(xiàn)這樣行人和車輛就能平安暢通的通行。5此表可根據(jù)車流量動態(tài)設(shè)定2.2 系統(tǒng)硬件設(shè)計選用設(shè)備8031單片機一片選用設(shè)備:8031單片機一片,8255并行通用接口芯片一片,74LS07兩片,MAX692看門狗一片,共陰極的七段數(shù)碼管兩個雙向晶閘管假設(shè)干,7805三端穩(wěn)壓電源一個,紅、黃、綠交通燈各兩個,開關(guān)鍵盤、連線假設(shè)干。 系統(tǒng)總框圖如下:圖7交通燈控制線路圖 圖82.3 系統(tǒng)工

24、作原理(1)開關(guān)鍵盤輸入交通燈初始時間,通過8031單片機P1輸入到系統(tǒng)(2)由8031單片機的定時器每秒鐘通過P0口向8255的數(shù)據(jù)口送信息,由8255的PC 口顯示紅、綠、黃燈的燃亮情況;由8255的PA、PB口顯示每個燈的燃亮?xí)r間。(3)8031通過設(shè)置各個信號等的燃亮?xí)r間、通過8031設(shè)置,黃、綠、紅時間依次為3秒、60秒、3秒、80秒、3秒循環(huán)由8031的 P0口向8255的數(shù)據(jù)口輸出。(4)通過8031單片機的0就對系統(tǒng)進行初始化,為1系統(tǒng)就開始工作。(5)8255PA口用于輸出時間的個位,PB口用于輸出時間的十位,由747S07驅(qū)動芯片驅(qū)動;而PC口用于輸出各個燈的情況,它的末段

25、連接雙向晶閘管采用220V交流電壓驅(qū)動。(6)在交通控制程序中參加看門狗指令,當(dāng)系統(tǒng)出現(xiàn)異??撮T狗將發(fā)出溢出中斷。通過專用端口輸入到MAX692看門狗芯片的WDI引角引起RESET復(fù)位信號復(fù)位系統(tǒng)第3章 控制器的軟件設(shè)計 每秒鐘的設(shè)定延時方法可以有兩種一種是利用MCS-51內(nèi)部定時器產(chǎn)生溢出中斷來確定1秒的時間,另一種是采用軟延時的方法。 計數(shù)器硬件延時 計數(shù)器初值計算定時器工作時必須給計數(shù)器送計數(shù)器初值,這個值是送到TH和TL中的。他是以加法記數(shù)的,并能從全1到全0時自動產(chǎn)生溢出中斷請求。因此,我們可以把計數(shù)器記滿為零所需的計數(shù)值設(shè)定為C和計數(shù)初值設(shè)定為TC 可得到如下計算通式: TC=M-

26、C式中,M為計數(shù)器模值,該值和計數(shù)器工作方式有關(guān)。在方式0時M為213 ;在方式1時M的值為216;在方式2和3為28 計算公式T=MTCT計數(shù)或TCMTT計數(shù) T計數(shù)是單片機時鐘周期T的12倍;TC為定時初值如單片機的主脈沖頻率為T12MHZ,經(jīng)過12分頻方式0TMAX213微秒毫秒方式1TMAX216微秒毫秒顯然秒鐘已經(jīng)超過了計數(shù)器的最大定時間,所以我們只有采用定時器和軟件相結(jié)合的方法才能解決這個問題3.2.3 秒的方法我們采用在主程序中設(shè)定一個初值為20的軟件計數(shù)器和使T0定時50毫秒這樣每當(dāng)T0到50毫秒時CPU就響應(yīng)它的溢出中斷請求,進入他的中斷效勞子程序。在中斷效勞子程序中,CPU

27、先使軟件計數(shù)器減1,然后判斷它是否為零。為零表示1秒已到可以返回到輸出時間顯示程序。 相應(yīng)程序代碼(1)主程序定時器需定時50毫秒,故T0工作于方式1。初值:TCM-T/ T計數(shù)=2-50ms/1us=15536=3CBOHORG 1000HSTART: MOV TMOD, #01H ; 令T0為定時器方式1MOV TH0, #3CH ;裝入定時器初值MOV TL0, #BOH ;MOV IE, #82H ;開T0中斷SEBT TR0 ;啟動T0計數(shù)器MOV RO, #14H ;軟件計數(shù)器賦初值LOOP:SJMP $ ;等待中斷(2)中斷效勞子程序ORG 000BHAJMP BRT0ORG 0

28、0BHBRT0:DJNZ R0,NEXTAJMP TIME ; 跳轉(zhuǎn)到時間及信號燈顯示子程序 DJNZ: MOV R0,#14H;恢復(fù)R0值MOV TH0, #3CH ;重裝入定時器初值MOV TL0, #BOH ;MOV IE, #82H RET1END3.3 軟件延時MCS-51的工作頻率為2-12MHZ,我們選用的8031單片機的工作頻率為6MHZ。機器周期與主頻有關(guān),機器周期是主頻的12倍,所以一個機器周期的時間為12*1/6M=2us。我們可以知道具體每條指令的周期數(shù),這樣我們就可以通過指令的執(zhí)行條數(shù)來確定1秒的時間。具體的延時程序分析: DELAY:MOV R4,#08H 延時1秒

29、子程序 DE2:LCALL DELAY1 DJNZ R4,DE2 RET DELAY1:MOV R6,#0 延時125ms 子程序 MOV R5,#0DE1: DJNZ R5,$ DJNZ R6,DE1 RETMOV RN,#DATA 字節(jié)數(shù)為2 機器周期數(shù)為1所以此指令的執(zhí)行時間為2msDELAY1 為一個雙重循壞 循環(huán)次數(shù)為256*256=65536 所以延時時間=65536*2=131072us 約為125usDELAY R4設(shè)置的初值為8 主延時程序循環(huán)8次,所以125us*8= 1秒由于單片機的運行速度很快其他的指令執(zhí)行時間可以忽略不計。 時間及信號燈的顯示3.4.1 8031并行口

30、的擴展8031雖然有4個8位I/O端口,但真正能提供借用的只有P1口,因為P2和P0口通常用于傳送外部傳送地址和數(shù)據(jù),P3口也有它的第二功能。因此,8031通常需要擴展。由于我們用外輸出時間時,時間的個位、十位、信號燈的顯示都要用到一個I/O端口,顯然8031的端口是不夠,需要擴展。擴展的方法有兩種:1借用外部RAM地址來擴展I/O端口;2采用I/O接口芯片來擴充。我們用8255并行接口芯片來擴展I/O端口。 顯示原理:當(dāng)定時器定時為1秒,時程序跳轉(zhuǎn)到時間顯示及信號燈顯示子程序,它將依次顯示信號燈時間 ,同時一直顯示信號燈的顏色,這時在返回定時子程序定時一秒,在顯示黃燈的下一個時間,這樣依次把

31、所有的燈色的時間顯示完后在重新給時間計數(shù)器賦初值 ,重新進入循環(huán)。 8255輸出信號的放大:要使行人能看見信號燈的情況,必須把8255輸出的信號進行放大,這里我們用VT為雙向晶閘管,當(dāng)門極為高電平時晶閘管導(dǎo)通,該支路指示燈亮;當(dāng)門極為低電平時關(guān)斷,該支路指示燈滅。我們用連接7段數(shù)碼管的方法來連接晶閘管 3.4.4 8255輸出信號與信號燈的連接:LED 燈的顯示原理:通過同名管腳上所加電平的上下來控制發(fā)光二極管是否點量而顯示不同的字形如 SP,g,f,e,d,c,b,a 管角上加上所以上為伏,不亮其余為高電平,全亮那么顯示為采用共陰級連接:其中 PA0PB0-a,PA1PB1-b, PA2PB

32、2-c,PA3PB3-d,PA4PB4-e, PA5PB5-f,PA6PB6-gPA7PB7 -SP接地顯示數(shù)值dop g f e d c b a 驅(qū)動代碼16進制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 0 0 0 0 0 1 1 107H8 0 1 1 1 1 1 1 17FH表 4 動代碼表3.4.5 8255與8031的連接用8031的P0 口的

33、p0.7 連接8255的片選信號cs 我們用8031的地址采用全譯碼方式當(dāng)p0.7 =0 時片選有效,其他無效, p0.1 p0.1 用于選擇8255端口A7 A6 A5 A4 A3 A2 A1 A01 X X X X X 0 0 00H為8255 的PA口1 X X X X X 0 1 01H 為8255的PB口1 X X X X X 1 0 02H 為8255的PC口1 X X X X X 1 1 03H 為8255的控制口由于8031是分時對8255和儲存器進行訪問所以8031的P0口不會發(fā)生沖突3.5 程序設(shè)計流程圖如下圖開始初始化等待鍵盤事件顯示程序處理鍵盤事件處理圖9圖10 流程圖

34、 程序源代碼R4 存放黃燈時間 3 03H 此時間可以動態(tài)設(shè)定 R5 存放紅燈時間 60 3CH R6 存放綠燈時間 80 50H PC0 顯示黃燈信號 PC1 顯示紅燈信號PC2 顯示黃燈信號 8255 工作于方式0 8255 PA、PB、 PC口輸出 PC 控制字為10000000B 80H 程序源代碼 ORG 0000H LJMP MAIN ORG 0100HMAIN: MOV R1,#03H 初始化8255 MOV A,#80H MOVX R1,AAGAIN: MOV P3,#80H 設(shè)置初值 MOV A,P3 JB ACC.7, NEXT0AGAIN1: MOV P3,#40H MO

35、V A,P3 JB ACC.6, RED MOV P3,#0FH MOV A,P3 ANL A,#0FH MOV R3,A AJMP AGAIN1RED: MOV P3,#0FH MOV A,P3 ANL A,#0FH MOV R2,A AJMP AGAINNEXT0: MOV R1,#03H NEXT1: MOV DPTR,#TAB 顯示黃燈個位MOV A,R1MOVC A,A+DPTR MOV R1,#00H MOVX R1, A MOV R1,#O MOV DPTR,#TAB 顯示黃燈十位 MOV A,R0MOVC A,A+DPTR MOV R1,#01H MOVX R1,A MOV D

36、PTR,#0C62H 顯示黃燈信號 MOV A,#00H LCALL 0F4E0H ACALL DELAY 延時1秒 DJNZ R0,NEXT1 MOV A,R3 MOV R0,A NEXT2: MOV DPTR,#TAB 顯示紅燈個位 MOV A,R0 MOVC A,A+DPTR MOV R1,#00H MOVX R1,A MOV DPTR,#TAB 顯示紅燈十位 MOV A,R0 MOVC A,A+DPTR MOV R1,#01H MOV A,R0 MOVX R1,R0 MOV R1,#02H 顯示紅燈信號 MOV A,#02H MOVX R1,A ACALL DELAY 延時1秒 DJN

37、Z R0,NEXT2 MOV A,R2 MOV R0,A NEXT3: MOV DPTR,#TAB 顯示綠燈個位 MOV A,R0 MOVC A,A+DPTR MOV R1,#00H MOVX R1,R0 MOV DPTR,#TAB 顯示綠燈十位 MOV A,R0 MOVC A,A+DPTR MOV R1,#01H MOV A,R0 MOVX R1,R0 MOV R1,#02H 顯示綠燈信號 MOV A,#02H MOVX R1,A ACALL DELAY 延時1秒 DJNZ R0,NEXT3 AJMP NEXT0DELAY:MOV R4,#08H 延時1秒子程序 DE2:LCALL DELA

38、Y1 DJNZ R4,DE2 RETDELAY1:MOV R6,#0 MOV R5,#0DE1: DJNZ R5,$ DJNZ R6,DE1 RETTAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H 驅(qū)動代碼表 END第4章 看門狗硬件電路由于單片機自身的抗干擾能力比擬差,尤其在一些條件比擬惡劣、噪聲大的場合,常會出現(xiàn)單片機因為受外界干擾而導(dǎo)致死機的現(xiàn)象,造成系統(tǒng)不能正常工作。設(shè)置看門狗是為了防止單片機死機、提高單片機系統(tǒng)抗干擾性的一種重要途徑。一個完整的單片機應(yīng)用系統(tǒng)應(yīng)該是一個軟、硬件的結(jié)合體,在系統(tǒng)

39、正常工作時,會受到各種外界干擾因素的影響。這種外界干擾輕者導(dǎo)致系統(tǒng)內(nèi)部數(shù)據(jù)出錯,重者將嚴重影響程序的運行。因此單片機應(yīng)用系統(tǒng)的開發(fā)一定要考慮系統(tǒng)可靠性的設(shè)計,以滿足系統(tǒng)在現(xiàn)場苛刻環(huán)境下的正常運行,而“看門狗那么是系統(tǒng)可靠性設(shè)計的重要一環(huán)。在一個單片機應(yīng)用系統(tǒng)中,所謂的“看門狗是指在系統(tǒng)設(shè)計中通過軟件或硬件方式在一定的周期內(nèi)監(jiān)控單片機或其他CPU的運行情況。如果在規(guī)定的時間內(nèi)沒有收到來自單片機或其他CPU的觸發(fā)信號,那么系統(tǒng)會強制復(fù)位,以保證系統(tǒng)在受到干擾時仍能夠維持正常的工作狀態(tài)。在單片機系統(tǒng)中,看門狗的設(shè)計一般采用硬件和軟件結(jié)合兩種方式。 軟件看門狗軟件看門狗是利用單片機片內(nèi)閑置的定時器/計

40、數(shù)器單元作為看門狗,在單片機程序中適當(dāng)?shù)牟迦氡O(jiān)控指令,當(dāng)程序出現(xiàn)異?;蜻M入死循環(huán)時,利用軟件將程序計數(shù)器PC賦予初始值,強制性的使程序重新開始運行。使用軟件看門狗的具體實現(xiàn)方法如下:(1)首先在初始化程序中設(shè)置好定時器/計數(shù)器的方式控制存放器(TMOD) 和定時時間的初值,并開中斷。(2)根據(jù)定時器的定時時間,在主程序中按一定的間隔插入復(fù)位定時器的指令,既插入監(jiān)控指令,兩條指令間的時間間隔應(yīng)該小于定時時間,否那么看門狗將發(fā)生錯誤動作。(3)在定時器的中斷效勞程序中設(shè)置一條無條件轉(zhuǎn)移指令,將程序計數(shù)器PC轉(zhuǎn)移到初始化程序的入口。軟件看門狗的最大特點是無須外加硬件電路,經(jīng)濟性好。當(dāng)然,如

41、果片內(nèi)的定時器/計數(shù)器被占用,就需要尋求其他的設(shè)計方式了。硬件看門狗專用硬件看門狗是指一些集成化的或集成在單片機內(nèi)的專用看門狗電路,它實際上是一個特殊的定時器,當(dāng)定時時間到時,發(fā)出溢出脈沖。從實現(xiàn)角度上看,該方式是一種軟件與片外專用電路相結(jié)合的技術(shù),硬件電路連接好后,在程序中適當(dāng)?shù)夭迦胍恍┛撮T狗復(fù)位的指令,保證程序正常運行時看門狗不溢出。而當(dāng)程序運行異常時,看門狗超時發(fā)出溢出脈沖,通過單片機的RESET引腳使單片機復(fù)位。這種方式中,看門狗能否可靠有效地工作,與硬件組成及軟件的控制策略都有密切的關(guān)系。目前常用的集成看門狗電路很多,如MAX705708、MAX813L、X5043/5045等??撮T

42、狗電路可以分為內(nèi)看門狗和外看門狗??撮T狗電路是指看門狗的硬件電路包含在單片機內(nèi)部,如Microchip的16C5x系列,MOTOROLA的68C05系列,51內(nèi)核中比擬典型的有Atmel公司的AT89C55WD、AT89S8252,Winbond公司的W77E58,SST公司的SST89C58以及Philips公司87系列的多種型號的單片機等。對于沒有看門狗定時器的單片機或是認為內(nèi)部看門狗不可靠時,可以采用外部看門狗定時器。外部看門狗電路既可以用專用看門狗芯片,也可由普通芯片實現(xiàn)。這里,以專用芯片MAX692作為外部看門狗的電路。MAX692是微系統(tǒng)監(jiān)控電路芯片,具有后備電池切換、掉電判別、看

43、門狗監(jiān)控等功能。其封裝和引腳說明如圖10所示。圖 11 MAX692封裝和引腳VOUT:電源輸出引腳。VCC:接電源引腳,電源供電3.05.5V。GND:接地。PFI:電池故障輸入。/PFO:電池故障輸出。WDI:監(jiān)視器輸入引腳。/RESET:復(fù)位輸出引腳,低電平有效。VBATT:后備電池輸入端。MAX692在本文的單片機系統(tǒng)中的具體使用方法和電路原理圖如圖12示。MAX692電路原理圖 如圖其中WDI是看門狗監(jiān)測輸入腳,接到CPU的一個專用I/O口或一個總線上。/RESET是復(fù)位信號輸出腳,接到CPU的復(fù)位輸入腳。MAX692的WDI定時周期是1.6s,復(fù)位脈沖寬度是200ms。如果WDI保

44、持高或低超過看門狗定時周期1.6s,/RESET端將發(fā)生200ms的負脈沖使CPU復(fù)位 MAX692電路原理圖圖12第5章 單片機開發(fā)系統(tǒng)系統(tǒng)說明單片機開發(fā)系統(tǒng)實際上也是一種計算機系統(tǒng),是專門用來開發(fā)單片機應(yīng)用系統(tǒng)的一種工具,它通常由一臺系統(tǒng)機、一個通用再線仿真器和一個通用編程器構(gòu)成如圖圖 13在主機上運行開發(fā)軟件編輯軟件、調(diào)試軟件就可以輸入、刪除、編輯和運行用戶程序,也可以把用戶目標代碼通過串口傳送到通用再線仿真器。編程器可以對EPROM進行編程和效驗,也可以在主機對編程器進行操作仿真器又稱模擬器,主要用來幫助設(shè)計者驗證設(shè)計的正確性。在硬件系統(tǒng)設(shè)計的各個層次都要用到仿真器。在數(shù)字系統(tǒng)設(shè)計中,

45、硬件系統(tǒng)由數(shù)字邏輯器件以及它們之間的互連來表示。仿真器的用途是確定系統(tǒng)的輸入/輸出關(guān)系,所采用的方法是把每一個數(shù)字邏輯器件映射為一個或幾個進程,把整個系統(tǒng)映射為由進程互連構(gòu)成的進程網(wǎng)絡(luò),這種由進程互連組成的網(wǎng)絡(luò)就是設(shè)計的仿真模型。pD7810/11單片機開發(fā)系統(tǒng)介紹:它是一種帶A/D功能、接口眾多、運算能力強的新型單片機開發(fā)系統(tǒng),填補了國內(nèi)這個系列單片機開發(fā)的空白。本系統(tǒng)處于國內(nèi)先進水平,并且具有結(jié)構(gòu)合理、軟件配套、資源保護好等一系列特點。本系統(tǒng)主要技術(shù)指標: 內(nèi)存32K,其中24K有停電保護功能。 有雙EPOM讀寫功能,用戶并行接口三個,A/D轉(zhuǎn)換器為8位×8通道。 能和IBM機進

46、行通訊,通訊方式和目標多個,包括內(nèi)存、鍵盤、顯示器、打印機通訊。 可對pD7811的內(nèi)部ROM進行破譯。 在開發(fā)出來的多種軟件,包括匯編、反匯編、仿真程序。 本成果可應(yīng)用于單片機系統(tǒng)開發(fā)、生產(chǎn)過程控制器開發(fā)、智能儀表開發(fā)、家用電器電腦化、計算機外部設(shè)備開發(fā)等。第6章 實驗平臺 實驗平臺我們采用西安唐都科教以器公司的 態(tài)度TDN86/51教學(xué)實驗系統(tǒng)系統(tǒng)簡介:開啟計算機及實驗平臺,進入TDN的子目錄,鍵入MD51,選擇 1 1-COM1口 進入系統(tǒng)集成軟件 功能介紹:F1-EDIT 編輯 可以對源程序進行編輯F2-MASM 匯編源程序 F5-LOAD 將可執(zhí)行文件載入實驗系統(tǒng)F6-SAVE 保存

47、 F8-EXIT 推出系統(tǒng)實驗步驟說明:1由于此實驗平臺只提供了一個顯示燈接口所以我們只用 了8255的 PA口,只用了一個顯示等 和3個LED燈 ,8031的P1口的低4位用于給系統(tǒng)賦初值 P1.7用于控制系統(tǒng)工作或初始化.P1.6用于控制是對紅燈、綠進行初始化。2.把編好的程序進行匯編對輸入單片機8031仿真器和對8255進行初始化。3通過平臺上的開關(guān)來設(shè)定紅、綠等的初值。4先使K7撥為0,觀察LED燈和8段數(shù)碼管的顯示情況,撥K6為0設(shè)置 撥K3、K2、K1、K0為0101即紅燈時間為5秒,撥K6為1設(shè)置 撥K3、K2、K1、K0為1001即綠燈時間為9秒,觀察觀察LED燈和8段數(shù)碼管的顯示與設(shè)置的時間和LED的顏色是否一致5不一致反復(fù)調(diào)試程序認識檢查線路連接是否正確,直到與預(yù)定目的一致。6.3 系統(tǒng)編程信息 系統(tǒng)內(nèi)存分配和I/0接口使用1 程序空間64k   地址使用情況芯片0000-3FFFH 用戶程序區(qū)U23RAM4000-DFFFH用戶程序區(qū)E000-FFFFH 系統(tǒng)保存ROM表 52 I/O接口使用用戶程序區(qū)8255的端口地址如下表:信號線存放器 編址IOY3A口0C60HB口0C61HC口0

溫馨提示

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

評論

0/150

提交評論