交通燈課程設(shè)計(jì)范本_第1頁(yè)
交通燈課程設(shè)計(jì)范本_第2頁(yè)
交通燈課程設(shè)計(jì)范本_第3頁(yè)
交通燈課程設(shè)計(jì)范本_第4頁(yè)
交通燈課程設(shè)計(jì)范本_第5頁(yè)
已閱讀5頁(yè),還剩8頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、目錄課程設(shè)計(jì)任務(wù)書(shū)摘要功能概述系統(tǒng)方案設(shè)計(jì)MSC-51芯片簡(jiǎn)介8255芯片簡(jiǎn)介硬件設(shè)計(jì)交通管理的方案論證系統(tǒng)硬件設(shè)計(jì)系統(tǒng)工作原理軟件設(shè)計(jì)時(shí)間的程序設(shè)置緊急通道功能的設(shè)計(jì)主程序設(shè)計(jì)路口燈狀態(tài)轉(zhuǎn)換程序流程圖程序源代碼運(yùn)行效果心得體會(huì)參考資料 1課程設(shè)計(jì)應(yīng)達(dá)到的目的本課程設(shè)計(jì)是在學(xué)生學(xué)習(xí)完單片機(jī)及其接口技術(shù)課程后進(jìn)行的一次全面的綜合練習(xí)。通過(guò)本次課程設(shè)計(jì)進(jìn)一步鞏固和加深對(duì)單片機(jī)課程的基本知識(shí)的理解,掌握使用單片機(jī)的基本技能,了解有關(guān)單片機(jī)應(yīng)用系統(tǒng)開(kāi)發(fā)的過(guò)程與方法,提高利用單片機(jī)軟硬件解決實(shí)際問(wèn)題的能力。2課程設(shè)計(jì)題目及要求本課題要求使用8051單片機(jī)及可編程并行接口芯片Intel8255A實(shí)現(xiàn)一個(gè)模

2、擬交通燈系統(tǒng)。十字路口東西方向和南北方向各安裝一組交通燈,其中東西方向紅、綠、黃燈對(duì)應(yīng)試驗(yàn)儀G6區(qū)發(fā)光二極管3、1、2;南北方向紅、綠、黃燈對(duì)應(yīng)試驗(yàn)箱G6區(qū)發(fā)光二極管4、5、6。要求:1、 交通信號(hào)燈的變化規(guī)律為:初始狀態(tài)燈全滅;狀態(tài)0:東西向綠燈亮,南北向紅燈亮;延時(shí)10秒進(jìn)入狀態(tài)1狀態(tài)1:東西向綠燈閃爍4次,南北向紅燈亮;進(jìn)入狀態(tài)2狀態(tài)2:東西向黃燈亮,南北向紅燈亮;延時(shí)2秒進(jìn)入狀態(tài)3狀態(tài)3:東西向紅燈亮,南北向綠燈亮;延時(shí)10秒進(jìn)入狀態(tài)4狀態(tài)4:東西向紅燈亮,南北向綠燈閃爍4次;進(jìn)入狀態(tài)5狀態(tài)5:東西向紅燈亮,南北向黃燈亮;延時(shí)2秒進(jìn)入狀態(tài)0;如此循環(huán)往復(fù)2、 緊急通道功能,采用外部中斷

3、技術(shù)實(shí)現(xiàn),當(dāng)/INT0下降沿觸發(fā)有效時(shí),各路口燈全亮,延時(shí)5秒,以供急救車(chē)通過(guò)。急救車(chē)通過(guò)后,紅綠燈恢復(fù)為中斷發(fā)生前狀態(tài)繼續(xù)運(yùn)行。3、 可以采用軟件延時(shí),精確計(jì)算延時(shí),減小誤差。說(shuō)明: 1、A3區(qū)A0、A1是地址鎖存器對(duì)應(yīng)P0.0、P0.1輸出引腳;2、A3區(qū)各片選信號(hào)線(xiàn)地址范圍:片選地址范圍片選地址范圍CS10F000H0FFFFHCS50B000H0BFFFHCS20E000H0EFFFHCS60A000H0AFFFHCS30D000H0DFFFHCS709000H09FFFHCS40C000H0CFFFHCS808000H08FFFH摘要近年來(lái)隨著科技的飛速發(fā)展,單片機(jī)的應(yīng)用正在不斷深入

4、。在自動(dòng)控制的單片機(jī)應(yīng)用系統(tǒng)中,單片機(jī)往往作為一個(gè)核心部件來(lái)使用,僅單片機(jī)方面知識(shí)是不夠的,還應(yīng)根據(jù)具體硬件結(jié)構(gòu)軟硬件結(jié)合,加以完善。十字路口車(chē)輛穿梭,行人熙攘,車(chē)行車(chē)道,人行人道,有條不紊。那么靠什么來(lái)實(shí)現(xiàn)這井然秩序呢?靠的就是交通信號(hào)燈的自動(dòng)指揮系統(tǒng)。交通信號(hào)燈控制方式很多。本系統(tǒng)采用MSC-51系列單片機(jī)8051和可編程并行I/O接口芯片8255A為中心器件來(lái)設(shè)計(jì)交通燈控制器,實(shí)現(xiàn)了能根據(jù)實(shí)際車(chē)流量通過(guò)8051芯片的P1口設(shè)置紅、綠燈燃亮?xí)r間的功能;紅黃綠燈循環(huán)點(diǎn)亮,綠燈閃爍警示(交通燈信號(hào)通過(guò)PA口輸出);具有緊急通道的功能;本系統(tǒng)實(shí)用性強(qiáng)、操作簡(jiǎn)單、擴(kuò)展功能強(qiáng)。 關(guān)鍵詞:?jiǎn)纹瑱C(jī) 交通

5、燈 緊急通道1. 功能描述:使用8051單片機(jī)及可編程并行接口芯片Intel8255A實(shí)現(xiàn)一個(gè)模擬交通燈系統(tǒng)。十字路口東西方向和南北方向各安裝一組交通燈,其中東西方向紅、綠、黃燈對(duì)應(yīng)試驗(yàn)儀G6區(qū)發(fā)光二極管3、1、2;南北方向紅、綠、黃燈對(duì)應(yīng)試驗(yàn)箱G6區(qū)發(fā)光二極管4、5、6。要求:(1).交通信號(hào)燈的變化規(guī)律為:初始狀態(tài)燈全滅;狀態(tài)0:東西向綠燈亮,南北向紅燈亮;延時(shí)10秒進(jìn)入狀態(tài)1狀態(tài)1:東西向綠燈閃爍4次,南北向紅燈亮;進(jìn)入狀態(tài)2狀態(tài)2:東西向黃燈亮,南北向紅燈亮;延時(shí)2秒進(jìn)入狀態(tài)3狀態(tài)3:東西向紅燈亮,南北向綠燈亮;延時(shí)10秒進(jìn)入狀態(tài)4狀態(tài)4:東西向紅燈亮,南北向綠燈閃爍4次;進(jìn)入狀態(tài)5狀

6、態(tài)5:東西向紅燈亮,南北向黃燈亮;延時(shí)2秒進(jìn)入狀態(tài)0;如此循環(huán)往復(fù)(2).緊急通道功能,采用外部中斷技術(shù)實(shí)現(xiàn),當(dāng)/INT0下降沿觸發(fā)有效時(shí),各路口燈全亮,延時(shí)5秒,以供急救車(chē)通過(guò)。急救車(chē)通過(guò)后,紅綠燈恢復(fù)為中斷發(fā)生前狀態(tài)繼續(xù)運(yùn)行。(3).可以采用軟件延時(shí),精確計(jì)算延時(shí),減小誤差。2. 系統(tǒng)方案設(shè)計(jì):2.1 MSC-51芯片簡(jiǎn)介MCS-51單片機(jī)內(nèi)部結(jié)構(gòu)8051是MCS-51系列單片機(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)、地址總線(xiàn)和控制總線(xiàn)等三大總

7、線(xiàn),現(xiàn)在我們分別加以說(shuō)明:·中央處理器:中央處理器(CPU)是整個(gè)單片機(jī)的核心部件,是8位數(shù)據(jù)寬度的處理器,能處理8位二進(jìn)制數(shù)據(jù)或代碼,CPU負(fù)責(zé)控制、指揮和調(diào)度整個(gè)單元系統(tǒng)協(xié)調(diào)的工作,完成運(yùn)算和控制輸入輸出功能等操作。·數(shù)據(jù)存儲(chǔ)器(RAM)8051內(nèi)部有128個(gè)8位用戶(hù)數(shù)據(jù)存儲(chǔ)單元和128個(gè)專(zhuān)用寄存器單元,它們是統(tǒng)一編址的,專(zhuān)用寄存器只能用于存放控制指令數(shù)據(jù),用戶(hù)只能訪(fǎng)問(wèn),而不能用于存放用戶(hù)數(shù)據(jù),所以,用戶(hù)能使用的RAM只有128個(gè),可存放讀寫(xiě)的數(shù)據(jù),運(yùn)算的中間結(jié)果或用戶(hù)定義的字型表。程序存儲(chǔ)器(ROM):8051共有4096個(gè)8位掩膜ROM,用于存放用戶(hù)程序,原始數(shù)據(jù)或

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

9、電路,用于產(chǎn)生整個(gè)單片機(jī)運(yùn)行的脈沖時(shí)序,但8051單片機(jī)需外置振蕩電容。單片機(jī)的結(jié)構(gòu)有兩種類(lèi)型,一種是程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器分開(kāi)的形式,即哈佛(Harvard)結(jié)構(gòu),另一種是采用通用計(jì)算機(jī)廣泛使用的程序存儲(chǔ)器與數(shù)據(jù)存儲(chǔ)器合二為一的結(jié)構(gòu),即普林斯頓(Princeton)結(jié)構(gòu)。INTEL的MCS-51系列單片機(jī)采用的是哈佛結(jié)構(gòu)的形式,而后續(xù)產(chǎn)品16位的MCS-96系列單片機(jī)則采用普林斯頓結(jié)構(gòu)。下圖是MCS-51系列單片機(jī)的內(nèi)部結(jié)構(gòu)示意圖2。圖2MCS-51的引腳說(shuō)明:MCS-51系列單片機(jī)中的8031、8051及8751均采用40Pin封裝的雙列直接DIP結(jié)構(gòu),右圖是它們的引腳配置,40個(gè)引腳中,

10、正電源和地線(xiàn)兩根,外置石英振蕩器的時(shí)鐘線(xiàn)兩根,4組8位共32個(gè)I/O口,中斷口線(xiàn)與P3口線(xiàn)復(fù)用?,F(xiàn)在我們對(duì)這些引腳的功能加以說(shuō)明:MCS-51的引腳說(shuō)明:MCS-51系列單片機(jī)中的8031、8051及8751均采用40Pin封裝的雙列直接DIP結(jié)構(gòu),右圖是它們的引腳配置,40個(gè)引腳中,正電源和地線(xiàn)兩根,外置石英振蕩器的時(shí)鐘線(xiàn)兩根,4組8位共32個(gè)I/O口,中斷口線(xiàn)與P3口線(xiàn)復(fù)用?,F(xiàn)在我們對(duì)這些引腳的功能加以說(shuō)明:如圖3 圖3Pin9:RESET/復(fù)位信號(hào)復(fù)用腳,當(dāng)8051通電,時(shí)鐘電路開(kāi)始工作,在RESET引腳上出現(xiàn)24個(gè)時(shí)鐘周期以上的高電平,系統(tǒng)即初始復(fù)位。初始化后,程序計(jì)數(shù)器PC指向000

11、0H,P0-P3輸出口全部為高電平,堆棧指針寫(xiě)入07H,其它專(zhuān)用寄存器被清“0”。RESET由高電平下降為低電平后,系統(tǒng)即從0000H地址開(kāi)始執(zhí)行程序。然而,初始復(fù)位不改變RAM(包括工作寄存器R0-R7)的狀態(tài),8051的初始態(tài)。 8051的復(fù)位方式可以是自動(dòng)復(fù)位,也可以是手動(dòng)復(fù)位,見(jiàn)下圖4。此外,RESET/Vpd還是一復(fù)用腳,掉電其間,此腳可接上備用電源,以保證單片機(jī)內(nèi)部RAM的數(shù)據(jù)不丟失。 圖4Pin30:ALE/當(dāng)訪(fǎng)問(wèn)外部程序器時(shí),ALE(地址鎖存)的輸出用于鎖存地址的低位字節(jié)。而訪(fǎng)問(wèn)內(nèi)部程序存儲(chǔ)器時(shí),ALE端將有一個(gè)1/6時(shí)鐘頻率的正脈沖信號(hào),這個(gè)信號(hào)可以用于識(shí)別單片機(jī)是否工作,也

12、可以當(dāng)作一個(gè)時(shí)鐘向外輸出。更有一個(gè)特點(diǎn),當(dāng)訪(fǎng)問(wèn)外部程序存儲(chǔ)器,ALE會(huì)跳過(guò)一個(gè)脈沖。如果單片機(jī)是EPROM,在編程其間,將用于輸入編程脈沖。·Pin29:當(dāng)訪(fǎng)問(wèn)外部程序存儲(chǔ)器時(shí),此腳輸出負(fù)脈沖選通信號(hào),PC的16位地址數(shù)據(jù)將出現(xiàn)在P0和P2口上,外部程序存儲(chǔ)器則把指令數(shù)據(jù)放到P0口上,由CPU讀入并執(zhí)行。·Pin31:EA/程序存儲(chǔ)器的內(nèi)外部選通線(xiàn),8051和8751單片機(jī),內(nèi)置有4kB的程序存儲(chǔ)器,當(dāng)EA為高電平并且程序地址小于4kB時(shí),讀取內(nèi)部程序存儲(chǔ)器指令數(shù)據(jù),而超過(guò)4kB地址則讀取外部指令數(shù)據(jù)。如EA為低電平,則不管地址大小,一律讀取外部程序存儲(chǔ)器指令。顯然,對(duì)內(nèi)部

13、無(wú)程序存儲(chǔ)器的8031,EA端必須接地。在編程時(shí),EA/腳還需加上21V的編程電壓。 2.2 8255芯片簡(jiǎn)介8255可編程并行接口芯片簡(jiǎn)介: 8255可編程并行接口芯片有三個(gè)輸入輸出端口,即A口、B口和C口,對(duì)應(yīng)于引腳PA7PA0、PB7PB0和PC7PC0。其內(nèi)部還有一個(gè)控制寄存器,即控制口。通常A口、B口作為輸入輸出的數(shù)據(jù)端口。C口作為控制或狀態(tài)信息的端口,它在方式字的控制下,可以分成4位的端口,每個(gè)端口包含一個(gè)4位鎖存器。它們分別與端口A配合使用,可以用作控制信號(hào)輸出或作為狀態(tài)信號(hào)輸入。8255可編程并行接口芯片方式控制字格式說(shuō)明:8255有兩種控制命令字;一個(gè)是方式選擇控制字;另一個(gè)

14、是C口按位置位復(fù)位控制字。其中C口按位置位復(fù)位控制字方式使用較為繁難,說(shuō)明也較冗長(zhǎng),故在此不作敘述。方式控制字格式說(shuō)明如表1: D7D6D5D4D3D2D1D0 D7:定工作方式標(biāo)志,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可編程并行接口芯片工作方式說(shuō)明:方式0:基本輸入輸出方式。適用于三個(gè)端口中的任何一個(gè)。每一個(gè)端口輸

15、出。輸出可被鎖存,輸入不能鎖存。 方式1:選通輸入輸出方式。這時(shí)A口或B口的8位外設(shè)線(xiàn)用作輸入或輸出,C口的4條線(xiàn)中三條用作數(shù)據(jù)傳輸?shù)穆?lián)絡(luò)信號(hào)和中斷請(qǐng)求信號(hào)。 方式2 :雙向總線(xiàn)方式。只有A口具備雙向總線(xiàn)方式,8位外設(shè)線(xiàn)用作輸入或輸出,此時(shí)C口的5條線(xiàn)用作通訊聯(lián)絡(luò)信號(hào)和中斷請(qǐng)求信號(hào)。3 硬件設(shè)計(jì):3.1交通管理的方案論證東西、南北兩干道交于一個(gè)十字路口,各干道有一組紅、黃、綠三色的指示燈,指揮車(chē)輛和行人安全通行。紅燈亮禁止通行,綠燈亮允許通行。黃燈亮提示人們注意紅、綠燈的狀態(tài)即將切換,且黃燈燃亮?xí)r間為東西、南北兩干道的公共停車(chē)時(shí)間。設(shè)東西道與南北道的車(chē)流量一樣大,指示燈燃亮的方案如表2。狀態(tài)1

16、狀態(tài)2狀態(tài)3狀態(tài)4狀態(tài)5狀態(tài)6東西綠南北紅東西綠南北紅東西黃南北紅東西紅南北綠東西紅南北綠東西紅南北黃10s 閃爍4次2s10s閃爍4次2s表2說(shuō)明:(1).交通信號(hào)燈的變化規(guī)律為:初始狀態(tài)燈全滅;狀態(tài)0:東西向綠燈亮,南北向紅燈亮;延時(shí)10秒進(jìn)入狀態(tài)1狀態(tài)1:東西向綠燈閃爍4次,南北向紅燈亮;進(jìn)入狀態(tài)2狀態(tài)2:東西向黃燈亮,南北向紅燈亮;延時(shí)2秒進(jìn)入狀態(tài)3狀態(tài)3:東西向紅燈亮,南北向綠燈亮;延時(shí)10秒進(jìn)入狀態(tài)4狀態(tài)4:東西向紅燈亮,南北向綠燈閃爍4次;進(jìn)入狀態(tài)5狀態(tài)5:東西向紅燈亮,南北向黃燈亮;延時(shí)2秒進(jìn)入狀態(tài)0;如此循環(huán)往復(fù)(2).緊急通道功能,采用外部中斷技術(shù)實(shí)現(xiàn),當(dāng)/INT0下降沿觸

17、發(fā)有效時(shí),各路口燈全亮,延時(shí)5秒,以供急救車(chē)通過(guò)。急救車(chē)通過(guò)后,紅綠燈恢復(fù)為中斷發(fā)生前狀態(tài)繼續(xù)運(yùn)行。(3).可以采用軟件延時(shí),精確計(jì)算延時(shí),減小誤差。3.2系統(tǒng)硬件設(shè)計(jì)選用設(shè)備8051單片機(jī)一片,8255并行通用接口芯片一片,7紅、黃、綠交通燈各兩個(gè),開(kāi)關(guān)鍵盤(pán)、連線(xiàn)若干。321 系統(tǒng)總框圖如下:圖5322 交通燈硬件線(xiàn)路圖: 圖6 說(shuō)明:圖1-1位交通燈管理系統(tǒng)的實(shí)物連線(xiàn)圖,其中8051的A0,A1與8255的A0,A1端口相連接,8255的片選地址為CS1,即0F000H-0FFFFH,8255的PA端口與G6區(qū)的8盞燈相連接,8051的中斷端口選用INT0。323 系統(tǒng)工作原理:各種狀態(tài)下

18、的東西向和南北向的亮燈情況通過(guò)8051的片選地址傳輸給8255的PA口,PA口的燈根據(jù)8051中的值的變化而有規(guī)律的變化,其延遲時(shí)間和是否閃爍,由軟件延遲控制,這樣可以做到可以采用軟件延時(shí),精確計(jì)算延時(shí),減小誤差。4 軟件設(shè)計(jì):41時(shí)間的程序設(shè)置:(1) 首先設(shè)置1秒的軟件延遲,延遲1秒則要讀指令N次,指令周期為1us,所以可以得到, (2)所以R4,R5,R6均設(shè)為100,利用循環(huán)嵌套,達(dá)到延遲1秒的設(shè)計(jì)目的,程序如下:DELAY:MOV R4,#100 D1:MOV R5,#100 D2:MOV R6,#100 DJNZ R6,$ DJNZ R5,D2 DJNZ R4,D1 RET(3)東

19、西向綠燈南北向紅燈和東西向紅燈南北向綠燈兩種情況下的時(shí)間延遲設(shè)置: 由于軟件延遲的時(shí)間是1s,根據(jù)設(shè)計(jì)要求,在上述良種情況下的時(shí)間是10s,所以我設(shè)計(jì)的依據(jù)是調(diào)用軟件延遲,每調(diào)用一次,相當(dāng)于燈亮1s,故要達(dá)到設(shè)計(jì)的要求,就要循環(huán)10次,利用R0的循環(huán)達(dá)到設(shè)計(jì)目的,子程序如下:SS:LCALL DELAY DJNZ R0,SS MOV R0,#0AH RET(4) 東西向綠燈南北向紅燈和東西向紅燈南北向綠燈兩種情況下的綠燈閃爍設(shè)置:東西向綠燈南北向紅燈情況下,由G6區(qū)的面板可知,東西向的綠燈在ACC的第7位,所以只要對(duì)ACC.7取反8次,所以R1取08H,就可以達(dá)到閃爍4次的效果,為了使效果明顯

20、,故在閃爍過(guò)程中引用軟件的延遲,程序如下: QQ:CPL ACC.7 MOVX DPTR,A LCALL DELAY DJNZ R1,QQ MOV R1,#08H RET東西向紅燈南北向綠燈情況下,由G6區(qū)的面板可知,南北向的綠燈在ACC的第3位,所以只要對(duì)ACC.3取反8次,所以R1取08H,就可以達(dá)到閃爍4次的效果,為了使效果明顯,故在閃爍過(guò)程中引用軟件的延遲,程序如下: WW:CPL ACC.3 MOVX DPTR,A LCALL DELAY DJNZ R1,WW MOV R1,#08H RET (5)東西向黃燈南北向紅燈和東西向紅燈南北向黃燈兩種情況下的亮燈時(shí)間設(shè)置:由于軟件延遲的時(shí)間

21、是1s,根據(jù)設(shè)計(jì)要求,在上述兩種情況下的時(shí)間是2s,所以我設(shè)計(jì)的依據(jù)是調(diào)用軟件延遲,每調(diào)用一次,相當(dāng)于燈亮1s,故要達(dá)到設(shè)計(jì)的要求,就要循環(huán)2次,利用R2的循環(huán)達(dá)到設(shè)計(jì)目的,子程序如下:ZZ:LCALL DELAY DJNZ R2,ZZ MOV R2,#02H RET42緊急通道功能的設(shè)計(jì);利用中斷設(shè)計(jì)來(lái)實(shí)現(xiàn)緊急通道的功能,選用INT0中斷端口,下降沿的時(shí)候觸發(fā)中斷,進(jìn)入中斷子程序后,要保存中斷前的亮燈狀態(tài)和整個(gè)系統(tǒng)的程序狀態(tài),所以我選用了堆札的方法,利用PUSP和POP語(yǔ)句。Error! No bookmark name given.Error! No bookmark name given

22、.在主程序中的中斷端口設(shè)計(jì):SETB EA SETB EX0 S ETB IT0中斷子程序的設(shè)計(jì): INT_T0:PUSH PSW PUSH ACC MOV A,#03H MOVX DPTR,A YY:LCALL DELAY DJNZ R3,YY MOV R3,#05H POP ACC POP PSW RETI4.3主程序設(shè)計(jì)路口燈狀態(tài)轉(zhuǎn)換 十字路口六種狀態(tài)時(shí)PA端口的值,如下表:東西方向南北方向X1X2綠黃紅紅綠黃011011110110111110101111110101111101011111010111說(shuō)明:由上表可以知道,狀態(tài)1,狀態(tài)2的亮燈情況一致,均為6FH,狀態(tài)3的亮燈為AFH

23、 ,狀態(tài)4的亮燈情況是D7H ,狀態(tài)5,狀態(tài)6的亮燈情況是一致的,均為DBH 。程序如下; LOOP: MOV DPTR, #0F000H MOV A, #6FH MOVX DPTR,A LCALL SS LCALL QQ MOV A, #0AFH MOVX DPTR, A LCALL ZZ MOV A, #0D7H MOVX DPTR, A LCALL SS LCALL WW MOV A , #0DBH MOVX DPTR, A LCALL ZZSJMP LOOP4.4程序流程圖: 圖7 圖84.5程序源代碼ORG 0000HLJMP STARTORG 0003HLJMP INT_T0ORG

24、 000BHSTART: MOV DPTR, #0F003H MOV A, #80H MOVX DPTR, A MOV SP,#70H MOV R0,#0AH MOV R1,#08H MOV R2,#02H MOV R3,#05H SETB EA SETB EX0 SETB IT0LOOP: MOV DPTR, #0F000H MOV A, #6FH MOVX DPTR,A LCALL SS LCALL QQ MOV A, #0AFH MOVX DPTR, A LCALL ZZ MOV A, #0D7H MOVX DPTR, A LCALL SS LCALL WW MOV A , #0DBH

25、MOVX DPTR, A LCALL ZZ SJMP LOOP INT_T0:PUSH PSW PUSH ACC MOV A,#03H MOVX DPTR,A YY:LCALL DELAY DJNZ R3,YY MOV R3,#05H POP ACC POP PSW RETI SS:LCALL DELAY DJNZ R0,SS MOV R0,#0AH RET QQ:CPL ACC.7 MOVX DPTR,A LCALL DELAY DJNZ R1,QQ MOV R1,#08H RET WW:CPL ACC.3 MOVX DPTR,A LCALL DELAY DJNZ R1,WW MOV R1,

26、#08H RET ZZ:LCALL DELAY DJNZ R2,ZZ MOV R2,#02H RET DELAY:MOV R4,#100 D1:MOV R5,#100 D2:MOV R6,#100 DJNZ R6,$ DJNZ R5,D2 DJNZ R4,D1 RET END6.心得體會(huì):課程設(shè)計(jì)是培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識(shí),發(fā)現(xiàn),提出,分析和解決實(shí)際問(wèn)題,鍛煉實(shí)踐能力的重要環(huán)節(jié)。這次單片機(jī)原理及其接口技術(shù)實(shí)習(xí)總共進(jìn)行了一周,在這些日子里,可以說(shuō)得是苦多于甜,但是可以學(xué)到很多很多的的東西,同時(shí)不僅可以鞏固了以前所學(xué)過(guò)的知識(shí),而且學(xué)到了很多在書(shū)本上所沒(méi)有學(xué)到過(guò)的知識(shí)。以前在上課的時(shí)候,老師經(jīng)常強(qiáng)調(diào)在寫(xiě)一個(gè)程序的時(shí)候,一定要事先把程序原理方框圖化出來(lái),但是我開(kāi)始總覺(jué)得這樣做沒(méi)必要,很浪費(fèi)時(shí)間。但是,這次課程設(shè)計(jì)完全改變了我以前的那種錯(cuò)誤的

溫馨提示

  • 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ù)網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論