單片機(jī)課程設(shè)計(jì)交通燈報(bào)告_第1頁(yè)
單片機(jī)課程設(shè)計(jì)交通燈報(bào)告_第2頁(yè)
單片機(jī)課程設(shè)計(jì)交通燈報(bào)告_第3頁(yè)
單片機(jī)課程設(shè)計(jì)交通燈報(bào)告_第4頁(yè)
單片機(jī)課程設(shè)計(jì)交通燈報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、河南理工大學(xué)萬(wàn)方科技學(xué)院 課程設(shè)計(jì)報(bào)告2015 2016學(xué)年第 一 學(xué)期課程名稱單片機(jī)原理及應(yīng)用設(shè)計(jì)題目自動(dòng)交通信號(hào)燈學(xué)生姓名閆建勛學(xué) 號(hào) 1516353029專業(yè)班級(jí)15計(jì)算機(jī)科學(xué)與技術(shù)專升本指導(dǎo)教師蘇百順2015年 12 月 17 日單片機(jī)課程設(shè)計(jì)實(shí)驗(yàn)報(bào)告近年來(lái)隨著科技的飛速發(fā)展, 單片機(jī)的應(yīng)用正在不斷深入,同時(shí)帶動(dòng)傳統(tǒng)控制檢測(cè) 技術(shù)日益更新。 在實(shí)時(shí)檢測(cè)和自動(dòng)控制的單片機(jī)應(yīng)用系統(tǒng)中, 單片機(jī)往往作為一個(gè)核心 部件來(lái)使用, 僅單片機(jī)方面知識(shí)是不夠的, 還應(yīng)根據(jù)具體硬件結(jié)構(gòu)軟硬件結(jié)合, 加以完 善。十字路口車輛穿梭,行人熙攘,車行車道,人行人道,有條不紊。那么靠什么來(lái)實(shí) 現(xiàn)這井然秩序呢?靠的

2、就是交通信號(hào)燈的自動(dòng)指揮系統(tǒng)。 交通信號(hào)燈控制方式很多。 本 系統(tǒng)采用MSC-51系列單片機(jī)AT89C51和可編程并行I/O接口芯片8255A為中心器件 來(lái)設(shè)計(jì)交通燈控制器,實(shí)現(xiàn)設(shè)置紅、 綠燈燃亮?xí)r間的功能; 紅綠燈循環(huán)點(diǎn)亮,倒計(jì)時(shí)黃 燈警示(交通燈信號(hào)通過(guò)8255的PC 口輸出,顯示時(shí)間直接通過(guò)PB 口輸出至雙位數(shù)碼 管)并用復(fù)位按鍵表示出現(xiàn)特殊情況時(shí)四個(gè)方向禁止通行 ,用set, inc和dec按鍵來(lái)實(shí)現(xiàn) 紅綠燈及黃燈顯示時(shí)間的控制。同時(shí)還加了 LCD 液晶顯示功能。1、單片機(jī)概述單片機(jī)微型計(jì)算機(jī)是微型計(jì)算機(jī)的一個(gè)重要分支, 也是頗具生命力的機(jī)種。 單片機(jī) 微型計(jì)算機(jī)簡(jiǎn)稱單片機(jī), 特別適用

3、于控制領(lǐng)域, 故又稱為微控制器。 通常單片機(jī)由單塊 集成電路芯片構(gòu)成,內(nèi)部包含有計(jì)算機(jī)的基本功能部件:中央處理器、存儲(chǔ)器和I/O接口電路等。 因此,單片機(jī)只需要和適當(dāng)?shù)能浖巴獠吭O(shè)備相結(jié)合, 便可成為一個(gè)單片 機(jī)控制系統(tǒng)。單片機(jī)經(jīng)過(guò) 1、2、3、3代的發(fā)展,目前單片機(jī)正朝著高性能和多品種方 向發(fā)展,它們的 CPU 功能在增強(qiáng),內(nèi)部資源在增多,引角的多功能化,以及低電壓底 功耗。2、芯片簡(jiǎn)介2.1 MSC-51 芯片簡(jiǎn)介MCS-51單片機(jī)內(nèi)部結(jié)構(gòu):89C51 是 MCS-51 系列單片機(jī)的典型產(chǎn)品, 我們以這一代表性的機(jī)型進(jìn)行系統(tǒng)的講 解。89C51單片機(jī)包含中央處理器、程序存儲(chǔ)器(ROM)、數(shù)

4、據(jù)存儲(chǔ)器(RAM)、定時(shí)/計(jì)數(shù) 器、并行接口、 串行接口和中斷系統(tǒng)等幾大單元及數(shù)據(jù)總線、 地址總線和控制總線等三 大總線,現(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)89C51內(nèi)部有128個(gè)8位用戶數(shù)據(jù)存儲(chǔ)單元和128個(gè)專用寄存器單元,它們是統(tǒng)- 編址的,專用寄存器只能用于存放控制指令數(shù)據(jù),用戶只能訪問(wèn),而不能用于存放用戶數(shù)據(jù),所以,用戶能使用的RAM只有128個(gè),可存放讀寫(xiě)的數(shù)據(jù),運(yùn)算的中間結(jié)果或

5、用戶定義的字型表。內(nèi)都結(jié)構(gòu)時(shí)鐘瞰據(jù)存儲(chǔ)劃I定時(shí)訐教調(diào)0打 TfT Mil程序存儲(chǔ)器I中斷親統(tǒng)-程序存儲(chǔ)器(ROM)89C51共有4096個(gè)8位掩膜ROM,用于存放用戶程序,原始數(shù)據(jù)或表格-定時(shí)/計(jì)數(shù)器(ROM)89C51有兩個(gè)16位的可編程定時(shí)/計(jì)數(shù)器,以實(shí)現(xiàn)定時(shí)或計(jì)數(shù)產(chǎn)生中斷用于控制 程序轉(zhuǎn)向。-并行輸入輸出(I/O) 口:89C51共有4組8位I/O 口(PO、 P1、P2或P3),用于對(duì)外部數(shù)據(jù)的傳輸。-全雙工串行口:89C51內(nèi)置一個(gè)全雙工串行通信口,用于與其它設(shè)備間的串行數(shù)據(jù)傳送,該串行 口既可以用作異步通信收發(fā)器,也可以當(dāng)同步移位器使用-中斷系統(tǒng):89C51具備較完善的中斷功能,有

6、兩個(gè)外中斷、兩個(gè)定時(shí) /計(jì)數(shù)器中斷和一個(gè)串行 中斷,可滿足不同的控制要求,并具有 2級(jí)的優(yōu)先級(jí)別選擇。時(shí)鐘電路:89C51內(nèi)置最高頻率達(dá)12MHz的時(shí)鐘電路,用于產(chǎn)生整個(gè)單片機(jī)運(yùn)行的脈沖時(shí)序, 但8051單片機(jī)需外置振蕩電容。單片機(jī)的結(jié)構(gòu)有兩種類型,一種是程序存儲(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。

7、P0. 010. 7PL 0P2. 圖2MCS-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)在我們對(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)在

8、我們對(duì)這些引腳的 功能加以說(shuō)明:如圖30 12 34 5-6匚匚匚匚LJULJU匚RKD/P3. 0 CTXD;P3.1 C INT0/F3. 2 C INTT/P3. 3 匸T0/P3.4 CT1/P3. 5 ECKD/P3. 7 C KTALS c XTAL1 CCND C0123456789012 3 5 6 T 8 11 1 2098765432109876543214333 3333 332222 2-222 2Z Vcc FO O/ADO PO 1/AD1 PO.2/AD2 PO 3/AD PO 4/AD4 PO 5/AD5 FO.6/AD6 :FO. ?/AD7:EA/VFP3

9、ALE/PRQ :FESN P2. 7/A15 F2.6/A14 P2 5/Al3 P2 4/Al 2 P2 3/A11 P2 2/A10 :P2. 1/A9:P2. 0/A8FDIFPin9: RESET/Vpd復(fù)位信號(hào)復(fù)用腳,當(dāng)89C51通電,時(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í)行程序。然而,初始復(fù) 位不改變RAM (包括工作寄存器R0-R7)的狀態(tài),89C5

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

11、編程脈沖。 Pin 29:當(dāng)訪問(wèn)外部程序存儲(chǔ)器時(shí),此腳輸出負(fù)脈沖選通信號(hào),PC的16位地址數(shù)據(jù)將出現(xiàn)在P0和P2 口上,外部程序存儲(chǔ)器則 把指令數(shù)據(jù)放到P0 口上,由CPU賣(mài)入并執(zhí)行。 Pin31:EA/Vpp程序存儲(chǔ)器的內(nèi)外部選通線,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)部無(wú)程序存儲(chǔ)器的8031,EA端必須接地。在編程時(shí),EA/Vpp腳還需加上21V的編程電壓。2.2 8255 芯片簡(jiǎn)介8255可編程

12、并行接口芯片簡(jiǎn)介:8255 可編程并行接口芯片有三個(gè)輸入輸出端口,即A 口、B 口和C 口,對(duì)應(yīng)于引腳PA&PA0 PB&PB0和PC&PCQ其內(nèi)部還有一個(gè)控制寄存器,即控制口。通常A 口、B 口作為輸入輸出的數(shù)據(jù)端口。 C口作為控制或狀態(tài)信息的端口,它在方式字的控制下, 可以分成4位的端口,每個(gè)端口包含一個(gè)4位鎖存器。它們分別與端口 A/E配合使用, 可以用作控制信號(hào)輸出或作為狀態(tài)信號(hào)輸入。8255可編程并行接口芯片方式控制字格式說(shuō)明:8255有兩種控制命令字;一個(gè)是方式選擇控制字;另一個(gè)是 C 口按位置位/復(fù)位 控制字。其中C口按位置位/復(fù)位控制字方式使用較為繁難,

13、 說(shuō)明也較冗長(zhǎng),故在此不 作敘述,需要時(shí)用戶可自行查找有關(guān)資料。方式控制字格式說(shuō)明如表1:表1D7D6D5D4D3D2D1D0D7 :設(shè)定工作方式標(biāo)志,1有效。D6、D5:A 口方式選擇0 0方式00 1方式11x 方式 2D4 :A 口功能(仁輸入,0=輸出)D3 :C 口高4位功能(仁輸入,0=輸出)D2 :B 口方式選擇(0=方式0,仁方式1)D1 :B 口功能(仁輸入,0=輸出)D0C 口低4位功能(1=輸入,0=輸出)8255可編程并行接口芯片工作方式說(shuō)明:方式0:基本輸入/輸出方式。適用于三個(gè)端口中的任何一個(gè)。每一個(gè)端口都可以 用作輸入或輸出。輸出可被鎖存,輸入不能鎖存。方式1:選

14、通輸入/輸出方式。這時(shí) A 口或B 口的8位外設(shè)線用作輸入或輸出,C口的4條線中三條用作數(shù)據(jù)傳輸?shù)穆?lián)絡(luò)信號(hào)和中斷請(qǐng)求信號(hào)方式2 :雙向總線方式。只有 A 口具備雙向總線方式,8位外設(shè)線用作輸入或輸 出,此時(shí)C口的5條線用作通訊聯(lián)絡(luò)信號(hào)和中斷請(qǐng)求信號(hào)。2.3 74LS373 簡(jiǎn)介74LS373是一種帶三態(tài)門(mén)的8D鎖存器,其管腳示意圖如下示:STTTTIsD D DD D DD D01234367QiQ2Q3 Q5LEFT-f :2 -5 -幣-9-1-1 1 1 I其中:1D-8D為8個(gè)輸入端。1Q-8Q 為8個(gè)輸出端。LE為數(shù)據(jù)打入端:當(dāng)LE為“ 1”時(shí),鎖存器輸出 狀態(tài)同輸入狀態(tài);當(dāng)LE由“

15、 1”變“ 0”時(shí),數(shù)據(jù) 打入鎖存器OE為輸出允許端:當(dāng) OE=0時(shí),三態(tài)門(mén)打開(kāi);當(dāng)OE=1時(shí),三態(tài)門(mén)關(guān)閉,輸出高阻。2.4 LM041L液晶簡(jiǎn)介管教及其功能描述:管腳名稱LEVER管腳功能描述VSS0電源地VDD+5.0V電源電壓VEE-液晶顯示器驅(qū)動(dòng)電壓RSH/LD/I= “ H'表示 DB7 s DB0為顯示數(shù)據(jù)D/I= “,表示DB7 s DB0為顯示指令數(shù)據(jù)R/WH/LR/W= “ H,E= “ H數(shù)據(jù)被讀至U DB7 s DB0 R/W= “L”,E= “ HR L'數(shù)據(jù)被寫(xiě)到 IR 或 DREH/LR/W= “ L”,E信號(hào)下降沿鎖存 DB7 s DB0 R/W=

16、 “ H,E= “ H DDRAM數(shù)據(jù)讀至U DB7 s DB0DB0H/L數(shù)據(jù)線DB1H/L數(shù)據(jù)線DB2H/L數(shù)據(jù)線DB3H/L數(shù)據(jù)線DB4H/L數(shù)據(jù)線DB5H/L數(shù)據(jù)線DB6H/L數(shù)據(jù)線DB7H/L數(shù)據(jù)線模塊控制芯片提供兩套控制命令,基本指令和擴(kuò)充指令如下:RSR/W操作00命令寄存器寫(xiě)入01忙標(biāo)志和地址計(jì)數(shù)器讀入10數(shù)據(jù)寄存器寫(xiě)入11數(shù)據(jù)寄存器讀入3、系統(tǒng)硬件設(shè)計(jì)3.1交通管理的方案論證東西、南北兩干道交于一個(gè)十字路口,各干道有一組紅、黃、綠三色的指示燈,指 揮車輛和行人安全通行。紅燈亮禁止通行,綠燈亮允許通行。黃燈亮提示人們注意紅、 綠燈的狀態(tài)即將切換,且黃燈燃亮?xí)r間為東西、南北兩干道

17、的公共停車時(shí)間。設(shè)東西道 比南北道的車流量大,指示燈燃亮的方案如表 2。20S3S20S3S東西道紅燈亮紅燈亮綠燈亮黃燈亮南北道綠燈亮黃燈亮紅燈亮紅燈亮表2表2說(shuō)明:(1)當(dāng)東西方向?yàn)榧t燈,此道車輛禁止通行,東西道行人可通過(guò);南北道為綠燈, 此道車輛通過(guò),行人禁止通行。時(shí)間為 20秒。(2)黃燈閃爍3秒,警示車輛和行人 紅、綠燈的狀態(tài)即將切換。(3)當(dāng)東西方向?yàn)榫G燈,此道車輛通行;南北方向?yàn)榧t燈,南北道車輛禁止通過(guò), 行人通行。時(shí)間為20秒。東西方向車流大 通行時(shí)間長(zhǎng)。(4)這樣如上表的時(shí)間和紅、綠、黃出現(xiàn)的順序依次出現(xiàn)這樣行人和車輛就能安 全暢通的通行。(5)此表中的紅綠燈及黃燈的顯示時(shí)間可

18、以根據(jù)人流量來(lái)進(jìn)行調(diào)整3.2交通燈設(shè)計(jì)選用設(shè)備89C51單片機(jī)一片選用設(shè)備:89C31單片機(jī)一片,8255并行通用接 口芯片一片,74LS08兩片,74LS373片,共陰極的七段數(shù)碼管4個(gè),紅、黃、綠交通燈各兩個(gè),開(kāi)關(guān)按鈕、連線若干3. 3交通燈總體硬件仿真圖kkg'盟5:£1 fs詡舍峪SSM"II UhHE酣啡«洛-* b 叮3.4 89C51與8255的擴(kuò)展P3.7RDM7PS-a-WRP1BP14P3.3HMT1P13F.ZflMTUP3FTXDP1.1P3.WRXDP10P2.7W15FZ.OFA-WPi.SfAlSEAP2.4/A12ALEP2

19、.A11P»M畑謝陽(yáng)0P2.1 海P2.0«fiSm 7miD7RSTPO.ffADBro.S/AM-P0.4/AWP03AD3XTAL2POZ磁PO.irADIKl.CkADCiXTALi (J219o-311J6JQ7aoaQ4cnQ2Q 1QO0123507DDDDDDPD2- ebbs- - F 他 b ,8-嚴(yán)3-5-43-合>k/rdie s R-wA R c'lu其中用單片機(jī)的P0端口來(lái)擴(kuò)展8255,如上圖連接硬件圖,這樣連接后 8255 的控制口地址為FF7FH,PA,PB,PC的地址分別為FF7CH,FF7DH,FF7E。3. 5紅綠黃燈模塊

20、本系統(tǒng)同過(guò)8255的擴(kuò)展端口 PC0-PC5六個(gè)端口來(lái)控制六個(gè)發(fā)光二極管,發(fā) 光二極管采用陽(yáng)極驅(qū)動(dòng)的方式,當(dāng)輸入為高電平時(shí)點(diǎn)亮。同時(shí)通過(guò)外部中斷0來(lái)控制等狀態(tài)的改變。相應(yīng)的子程序如下:;狀態(tài)一東西方向綠燈,南北方向紅燈PINT0:MOV A,40HJNZ BWL0MOV A,41HMOV 45H,AADD A,42HMOV 44H,AINC 44HINC 45HBWL0:MOV A,40HCJNE A,41H,BXD0BXD0:JNC PINT01MOV R0,#7EHMOV A,#0CH MOVX R0,A INC 40H DEC 44H DEC 45HRETI ;狀態(tài)二東西方向黃燈,南北方

21、向紅燈 PINT01:MOV A,40HCJNE A,41H,BWL1MOV 45H,42HINC 45HBWL1:MOV A,41HADD A,42HMOV 43H,AMOV A,40HCJNE A,43H,BXD1BXD1:JNC PINT02MOV R0,#7EHMOV A,#14H MOVX R0,A INC 40H DEC 44HDEC 45HRETI ;狀態(tài)二東西方向紅燈,南北方向綠燈 PINT02:MOV A,40HCJNE A,43H,BWL2MOV A,41HMOV 44H,AADD A,42HMOV 45H,AINC 45HINC 44HBWL2:MOV A,43H ADD

22、 A,41H MOV 43H,A MOV A,40HCJNE A,43H,BXD2BXD2:JNC PINT03 MOV R0,#7EH MOV A,#21H MOVX R0,AINC 40HDEC 44HDEC 45H RETI ;狀態(tài)二東西方向紅燈,南北方向黃燈 PINT03:MOV A,40HCJNE A,43H,BWL3 MOV 44H,42HINC 44HBWL3:MOV R0,#7EH MOV A,#22H MOVX R0,ADEC 44HDEC 45HINC 40H MOV A,43H ADD A,42H MOV 43H,A MOV A,40HCJNE A,43H,BXD3 MO

23、V 40H,#00 BXD3: RETI3.6 數(shù)碼管顯示模塊本系統(tǒng)中選用了兩塊雙七段共陰數(shù)碼管,分別用來(lái)顯示東西方向和南北方向紅綠燈倒計(jì)時(shí)剩余時(shí)間。用 8255的PB端口來(lái)驅(qū)動(dòng),應(yīng)為用同一組端口控制四個(gè) 數(shù)碼管因此要用到動(dòng)態(tài)顯示, 這里用 P1.0P1.3 四個(gè)口來(lái)選中要送數(shù)顯示的數(shù)碼 管,再用快速循環(huán)顯示來(lái)達(dá)到所需的視覺(jué)效果。顯示子程序如下:SNDISP:MOV A,44H ;南北方向的數(shù)碼管顯示MOV B,#10DIV ABMOV P1,#01H ;顯示十位MOV DPTR,#TAB2MOVC A,A+DPTRMOV R0,#7DHMOVX R0,ANOPNOPMOV A, #0FFHM

24、OV R0, #7DHMOVX R0, AMOV A,BMOV P1,#02H ;顯示個(gè)位MOV DPTR,#TAB2MOVC A,A+DPTRMOV R0,#7DHMOVX R0,ANOPNOPMOV A, #0FFHMOV R0, #7DHMOVX R0, AEWDISP:MOV A,45H ;東西方向的數(shù)碼管顯示MOV B,#10DIV ABMOV P1,#04H ;顯示十位MOV DPTR,#TAB2MOVC A,A+DPTRMOV R0,#7DHMOVX R0,ANOPNOPMOV A, #0FFHMOV R0, #7DHMOVX R0, AMOV A,BMOV P1,#08H 顯示

25、個(gè)位MOV DPTR,#TAB2MOVC A,A+DPTRMOV R0,#7DHMOVX R0,ANOPNOPMOV A, #0FFHMOV R0, #7DHMOVX R0, ARETTAB2:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H3.7 外部控制按鈕為了控制的方便,本系統(tǒng)擴(kuò)展了一些外部按鈕來(lái)對(duì)交通燈進(jìn)行外部設(shè)置。 共有 4 個(gè)按鈕,分別為復(fù)位鍵、設(shè)置選擇鍵、加一鍵、減一鍵。將他們的狀 態(tài)送入外部中斷 1 來(lái)實(shí)現(xiàn)相應(yīng)的功能, 這里用兩個(gè)與門(mén)來(lái)進(jìn)行狀態(tài)的疊加后 再送到外部中斷 1,最后在中斷程序中判斷信號(hào)的具體來(lái)源,確定所要執(zhí)行 的子程序。

26、 SET 用來(lái)選擇狀態(tài),點(diǎn)擊第一下兩路口的綠燈點(diǎn)亮,同時(shí)在程 序中關(guān)閉外部中斷 0,示意現(xiàn)在可以設(shè)置綠燈顯示的時(shí)間,然后分別用 INC 和 DEC 來(lái)實(shí)現(xiàn)加一或減一,點(diǎn)擊第二下,兩路口的黃燈點(diǎn)亮,表示現(xiàn)在可 以設(shè)置黃燈顯示的時(shí)間,同樣用 INC 和 DEC 來(lái)進(jìn)行調(diào)整,點(diǎn)擊第三下打開(kāi) 外部中斷 0,路燈開(kāi)始正常運(yùn)行。在其他時(shí)候點(diǎn)擊 INC 和 DEC 無(wú)效。還有 復(fù)位鍵是用來(lái)使交通燈的回到初始狀態(tài),并接著運(yùn)行。具體實(shí)現(xiàn)代碼如下:PINT1:JNB P3.5,PINT11JNB P3.0,PINT12JNB P3.1,PINT13PINT11:CJNE R3,#00H,TZ1AJMP PINT1

27、1A TZ1:CJNE R3,#01H,TZ2AJMP PINT11B TZ2:CJNE R3,#02H,TZ3AJMP PINT11CTZ3:MOV R3,#00HPINT11A:MOV R0,#7EHMOV A,#09HMOVX R0,AMOV 44H,41HMOV 45H,41HCLR EX0MOV 40H,#00INC R3RETIPINT11B:MOV R0,#7EHMOV A,#12HMOVX R0,AMOV 44H,42HMOV 45H,42HCLR EX0MOV 40H,#00INC R3RETIPINT11C:SETB EX0MOV R3,#00HRETIPINT12:CJN

28、E R3,#01H,TC1 INC 41H MOV 44H,41H MOV 45H,41HTC1:CJNE R3,#02H,TC2 INC 42H MOV 44H,42H MOV 45H,42HTC2:RETI PINT13:CJNE R3,#01H,TC3 DEC 41H MOV 44H,41H MOV 45H,41HTC3:CJNE R3,#02H,TC4 DEC 42H MOV 44H,42H MOV 45H,42HTC4:RETI3.8 液晶顯示模塊液晶顯示模塊選用了 16*4 的顯示板,選用 8255的 PA 端口作為數(shù)據(jù)口 用 P2.0P2.2 三個(gè)端口來(lái)作為控制端。具體顯示子程序

29、如下:ENABLE: CLR RSCLR RWCLR ELCALL DELAYSETB ERETKSXSHI: MOV R0,#7CHMOV A,#80HMOVX R0,AACALL ENABLEMOV DPTR,#TABLCALL WRITE1MOV R0,#7CHMOV A,#0C0HMOVX R0,ALCALL ENABLEMOV DPTR,#TAB1LCALL WRITE1RETWRITE1: MOV 50H,#00HA1: MOV A,50HMOVC A,A+DPTRLCALL WRITE2INC 50HMOV A,50HCJNE A,#10H,A1RETWRITE2:MOV R0,

30、# 7CHMOVX R0,ASETB RSCLR RWCLR ELCALL DELAYSETB ERETDELAY: MOV 55H,#100D1: MOV 56H,#100D2: DJNZ 56H,D2DJNZ 55H,D1RETTAB :DB 00H,'H','a','p','p','y',00H,'n','e','w',00H,'y','e','a','r','!'TAB1:DB 00H,'Z','h','a','n','g','R','u',&

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論