通信號燈控制器單片機(jī)課程設(shè)計(jì)_第1頁
通信號燈控制器單片機(jī)課程設(shè)計(jì)_第2頁
通信號燈控制器單片機(jī)課程設(shè)計(jì)_第3頁
通信號燈控制器單片機(jī)課程設(shè)計(jì)_第4頁
通信號燈控制器單片機(jī)課程設(shè)計(jì)_第5頁
已閱讀5頁,還剩27頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、燕 山 大 學(xué) 課 程 設(shè) 計(jì) 說 明 書燕山大學(xué)課程設(shè)計(jì)(論文)任務(wù)書院(系):電氣工程學(xué)院 基層教學(xué)單位: 儀器科學(xué)與工程系 學(xué) 號學(xué)生姓名專業(yè)(班級)設(shè)計(jì)題目交通信號燈控制器設(shè)計(jì)技術(shù)參數(shù)設(shè)計(jì)一個十字路口紅綠燈控制器,能夠控制十二盞交通信號燈的系統(tǒng),并顯示倒計(jì)時時間。有急救車通過時,東西南北方向均為紅燈,持續(xù)時間為10S設(shè)計(jì)要求利用單片機(jī)的定時器定時,令十字路口的紅綠燈交替點(diǎn)亮,并用LED數(shù)碼管顯示電路顯示倒計(jì)時時間;編制相應(yīng)的程序。工作量設(shè)計(jì)的內(nèi)容滿足課程設(shè)計(jì)的教學(xué)目的和要求,設(shè)計(jì)題目的難度和工作量適合學(xué)生的知識和能力狀況,工作量飽滿。工作計(jì)劃查閱資料進(jìn)行設(shè)計(jì)準(zhǔn)備,設(shè)計(jì)硬件電路,編制程序

2、;編制程序,驗(yàn)證設(shè)計(jì),撰寫任務(wù)書。參考資料單片機(jī)微型計(jì)算機(jī)接口技術(shù)及應(yīng)用 張淑清 國防工業(yè)出版社單片機(jī)原理及應(yīng)用技術(shù) 張淑清 國防工業(yè)出版社單片機(jī)應(yīng)用技術(shù)匯編指導(dǎo)教師簽字基層教學(xué)單位主任簽字說明:此表一式四份,學(xué)生、指導(dǎo)教師、基層教學(xué)單位、系部各一份。2013年7月1日目 錄摘要3第一章 引言4第二章 單片機(jī)交通控制系統(tǒng)的總體設(shè)計(jì)42.1 單片機(jī)交通控制系統(tǒng)的功能要求42.2 設(shè)計(jì)的基本思路52.3單片機(jī)交通控制系統(tǒng)的通行方案設(shè)計(jì)5第三章智能交通燈控制系統(tǒng)的硬件設(shè)計(jì)73.1 AT89C51 單片簡介73.1.1 AT89C51單片機(jī)的主要特性73.1.2 主要引腳功能83.1.3 MCS-51

3、的中斷源103.2 數(shù)碼管11第四章 交通燈各部分功能分析12 4.1 時鐘定時控制部分 12 4.2 紅黃綠燈顯示電路 13 4.3 LED數(shù)字顯示電路14 4.4 80c51單片機(jī)芯片14 第五章 系統(tǒng)軟件程序的設(shè)計(jì)155.1 定時器原理155.1.1 定時器的理論知識155.1.2 定時1秒的方法155.1.3 相應(yīng)的程序155.2 軟件延時原理165.3 中斷原理165.4子程序模塊設(shè)計(jì)185.4.1 狀態(tài)等顯示及判斷185.4.2 LED倒計(jì)時顯示19第六章 系統(tǒng)程序流程圖21 5.1 紅綠黃燈流程圖 21 5.2中斷系統(tǒng)流程圖22第七章 系統(tǒng)原理圖23第八章 系統(tǒng)調(diào)試24第九章 心

4、得體會25參考文獻(xiàn) 25程序26摘要近年來隨著科技的飛速發(fā)展,單片機(jī)的應(yīng)用正在不斷地走向深入,同時帶動傳統(tǒng)控制檢測日新月異更新。在實(shí)時檢測和自動控制的單片機(jī)應(yīng)用系統(tǒng)中,單片機(jī)往往是作為一個核心部件來使用,僅單片機(jī)方面知識是不夠的,還應(yīng)根據(jù)具體硬件結(jié)構(gòu),以及針對具體應(yīng)用對象特點(diǎn)的軟件結(jié)合,加以完善。 利用單片機(jī)的優(yōu)點(diǎn),應(yīng)用到十字路口上,使得交通信號有條不紊的工作,本模擬交通燈系統(tǒng)利用單片機(jī)AT89C51作為核心元件,實(shí)現(xiàn)了通過信號燈對路面狀況的智能控制。從一定程度上解決了交通路口堵塞、車輛停車等待時間不合理、急車強(qiáng)通等問題。系統(tǒng)具有結(jié)構(gòu)簡單、可靠性高、成本低、實(shí)時性好、安裝維護(hù)方便等優(yōu)點(diǎn),有廣泛

5、的應(yīng)用前景。本模擬系統(tǒng)由單片機(jī)硬/軟件系統(tǒng), 7段數(shù)碼管和LED燈顯示系統(tǒng)等組成,較好的模擬了交通路面的控制。關(guān)鍵字:單片機(jī),交通信號燈 數(shù)碼管 第一章 引言在今天,紅綠燈安裝在各個道口上,已經(jīng)成為疏導(dǎo)交通車輛最常見和最有效的手段。信號燈的出現(xiàn),使交通得以有效管制,對于疏導(dǎo)交通流量、提高道路通行能力,減少交通事故有明顯效果。1968年,聯(lián)合國道路交通和道路標(biāo)志信號協(xié)定對各種信號燈的含義作了規(guī)定。綠燈是通行信號,面對綠燈的車輛可以直行,左轉(zhuǎn)彎和右轉(zhuǎn)彎,除非另一種標(biāo)志禁止某一種轉(zhuǎn)向。左右轉(zhuǎn)彎車輛都必須讓合法地正在路口內(nèi)行駛的車輛和過人行橫道的行人優(yōu)先通行。紅燈是禁行信號,面對紅燈的車輛必須在交叉路

6、口的停車線后停車。黃燈是警告信號,面對黃燈的車輛不能越過停車線,但車輛已十分接近停車線而不能安全停車時可以進(jìn)入交叉路口。第二章 單片機(jī)交通控制系統(tǒng)總體設(shè)計(jì)2.1 單片機(jī)交通控制系統(tǒng)的功能要求該控制器能實(shí)現(xiàn)城市“十字”路口正常情況下以及特殊情況和緊急情況下交通信號燈的模擬控制。 1、在十字路口東西南北各設(shè)置紅、黃、綠三種信號燈,正常情況下,東西、南北方向輪流放行。當(dāng)東西方向放行、南北方向禁行時,東西方向綠燈亮23秒,閃4秒,然后黃燈亮3秒,南北方向紅燈亮30秒;當(dāng)南北方向放行、東西方向禁行時,南北方向綠燈亮23秒,閃4秒,然后黃燈亮3秒,東西方向紅燈亮30秒。如此循環(huán),實(shí)現(xiàn)交通燈定時控制。2、有

7、急救車優(yōu)先通過功能。當(dāng)有急救車到達(dá)時,路口的信號燈全部變紅燈,以便急救車通過,急救車的通行時間為10秒,急救車過后,交通燈恢復(fù)先前狀態(tài)。3、交通燈在紅、綠燈交替點(diǎn)亮中,用4個數(shù)碼管顯示東西方向和南北方向倒計(jì)時時間。2.2 設(shè)計(jì)的基本思路利用80c51單片機(jī)控制交通燈系統(tǒng)工作。信號燈的控制由單片機(jī)的P1.0P1.5控制,6只信號燈以共陰極方式連接,當(dāng)P1口輸出為高電平時,信號燈點(diǎn)亮。數(shù)碼顯示與接片選段,這樣就可以實(shí)現(xiàn)時間的動態(tài)顯示。當(dāng)遇到緊急情況時,利用外部中斷INT1申請中斷。當(dāng)有外部中斷的時候,單片機(jī)的PC指向INT1的中斷入口地址,從而轉(zhuǎn)向中斷服務(wù)程序,此時,東西南北方向的都為紅燈亮,倒計(jì)

8、時10s,實(shí)現(xiàn)緊急情況下禁止通行。然后退出中斷服務(wù)程序,繼續(xù)執(zhí)行主程序。系統(tǒng)設(shè)計(jì)總框圖如下單片機(jī)時鐘控制電路LED數(shù)碼管顯示紅黃綠信號燈按鍵控制電路圖2.1 系統(tǒng)的總體框圖2.3單片機(jī)交通控制系統(tǒng)的通行方案設(shè)計(jì)在十字路口,分為東西向和南北向,在任一時刻只有一個方向通行,另一方向禁行,持續(xù)一定時間,經(jīng)過短暫的過渡時間,將通行禁行方向?qū)Q。其具體狀態(tài)如下圖所示。說明:黑色表示亮,白色表示滅。交通狀態(tài)從狀態(tài)1開始變換,直至狀態(tài)6然后循環(huán)至狀態(tài)1,周而復(fù)始,即如圖2.2所示:圖2.2 交通狀態(tài)狀態(tài)南北道東西道時間 0綠燈亮,允許通行紅燈亮,禁止通行23秒 1綠燈閃,允許通行紅燈亮,禁止通行4秒2黃燈亮

9、,停車紅燈亮,禁止通行3秒 3紅燈亮,禁止通行綠燈亮,允許通行23秒4紅燈亮,禁止通行綠燈閃,允許通行4秒5紅燈亮,禁止通行黃燈亮,停車3秒表2.1交通燈控制系統(tǒng)狀態(tài)表 第三章 智能交通燈控制系統(tǒng)的硬件設(shè)計(jì)3.1AT89C51單片機(jī)簡介 AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低電壓,高性能CMOS8位微處理器,俗稱單片機(jī)。AT89C2051是一種帶2K字節(jié)閃爍可編程可擦除只讀存儲器的單片機(jī)。單片機(jī)的可擦除只讀存儲器可以反復(fù)擦除100次。該器件采用ATMEL高密度非

10、易失存儲器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡版本。AT89C單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。3.1.1 AT89C51單片機(jī)的主要特性 與MCS-51 兼容 ,4K字節(jié)可編程閃爍存儲器 ,壽命:1000寫/擦循環(huán),數(shù)據(jù)保留時間:10年,全靜態(tài)工作:0Hz-24Hz,三級程序存儲器鎖定,128*8位內(nèi)部RAM,32可編程I/O線,兩個16位定時器/計(jì)數(shù)器,5個中斷源(兩個外部中斷源和3個內(nèi)部中斷源) ,可編程串行通

11、道,低功耗的閑置和掉電模式,片內(nèi)振蕩器和時鐘電路。 ·時鐘電路:時鐘電路的作用是產(chǎn)生單片機(jī)工作所需要的時鐘脈沖序列。 ·中斷系統(tǒng):中斷系統(tǒng)的作用主要是對外部或內(nèi)部的終端請求進(jìn)行管理與處理。AT89S51共有5個中斷源,其中又2個外部中斷源和3個內(nèi)部中斷源。 圖3.1 AT89C51系列單片機(jī)的內(nèi)部結(jié)構(gòu)示意圖3.1.2 主要引腳功能圖3.2 AT89C51引腳圖·VCC:電源電壓·GND:接地·P0口:P0口是一組8位雙向I0口。P0口即可作地址數(shù)據(jù)總線使用,又可以作為通用的I/O口使用。當(dāng)CPU訪問片外存儲器時,P0口分時先作低8位地址總線,后

12、作雙向數(shù)據(jù)總線,此時,P0口就不能再作I/O口使用了。在訪問期間激活要使用上拉電阻。·P1口:Pl 是一個帶內(nèi)部上拉電阻的8準(zhǔn)位雙向IO口,P1作為通用的I/O口使用。·P2 口:P2 是一個帶有內(nèi)部上拉電阻的8 位準(zhǔn)雙向IO 口,P2即可作為通用的I/O口使用,也可以作為片外存儲器的高8位地址總線,與P0口配合,組成16位片外存儲器單元地址。·P3 口:P3 口是一組帶有內(nèi)部上拉電阻的8 位準(zhǔn)雙向I0 口。P3 口除了作為通用的I/O口使用之外,每個引腳還具有第二功能,具體分配如下表端口引腳第二功能:P3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.

13、2/INT0(外中斷0)P3.3/ INT1(外中斷1)P3.4T0(定時計(jì)數(shù)器0外部輸入)P3.5T1(定時計(jì)數(shù)器1外部輸入)P3.6/ WR(外部數(shù)據(jù)存儲器寫選通)P3.7/ RD外部數(shù)據(jù)存儲器讀選通)表3.1 具有第二功能的P3口引腳·RST:復(fù)位輸入。當(dāng)振蕩器工作時,RST引腳出現(xiàn)兩個機(jī)器周期以上高電平將使單片機(jī)復(fù)位。WDT 溢出將使該引腳輸出高電平,設(shè)置SFR AUXR的DISRT0 位(地址8EH)可打開或關(guān)閉該功能。DISRT0位缺省為RESET輸出高電平打開狀態(tài)。·ALE:當(dāng)訪問外部程序存儲器或數(shù)據(jù)存儲器時,ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位

14、字節(jié)。即使不訪問外部存儲器,ALE 仍以時鐘振蕩頻率的16 輸出固定的正脈沖信號,因此它可對外輸出時鐘或用于定時目的。要注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲器時將跳過一個ALE脈沖。對F1ash存儲器編程期間,該引腳還用于輸入編程脈沖(PROG)。如有必要,可通過對特殊功能寄存器(SFR)區(qū)中的8EH 單元的D0 位置位,可禁止ALE 操作。該位置位后,只有一條M0VX和M0VC指令A(yù)LE才會被激活。此外,該引腳會被微弱拉高,單片機(jī)執(zhí)行外部程序時,應(yīng)設(shè)置ALE無效。·程序儲存允許()輸出是外部程序存儲器的讀選通信號,當(dāng)AT89S51 由外部程序存儲器取指令(或數(shù)據(jù))時,每個機(jī)器周期兩次有效

15、,即輸出兩個脈沖。當(dāng)訪問外部數(shù)據(jù)存儲器,沒有兩次有效的信號。·VPP:外部訪問允許。欲使CPU僅訪問外部程序存儲器(地址為0000HFFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復(fù)位時內(nèi)部會鎖存EA端狀態(tài)。如EA端為高電平(接VCC端),CPU則執(zhí)行內(nèi)部程序存儲器中的指令。F1ash存儲器編程時,該引腳加上+12V的編程電壓Vcc。·XTAL1:振蕩器反相放大器及內(nèi)部時鐘發(fā)生器的輸入端。3.1.3 MCS51的中斷源8051有5個中斷源,它們是兩個外中斷INT0(P3.2)和INT1(P3.3)、兩個片內(nèi)定時/計(jì)數(shù)器溢出中斷TF0和TF1,

16、一個是片內(nèi)串行口中斷TI或RI,這幾個中斷源由TCON和SCON兩個特殊功能寄存器進(jìn)行控制,其中5個中斷源的程序入口地址如下表所示:中斷源的服務(wù)程序入口地址中斷源入口地址外中斷00003H定時/計(jì)數(shù)器0000BH外中斷10013H定時/計(jì)數(shù)器0001BH串行口中斷0023H表3.2中斷源程序入口地址3.2 數(shù)碼管LED顯示屏作為大型顯示設(shè)備的一種,具有亮度高、價格低、壽命長、維護(hù)簡便等優(yōu)點(diǎn)。LED數(shù)碼管的結(jié)構(gòu)簡單,分為七段和八段兩種形式,也有共陽和共陰之分。以八段共陽管為例,它有8個發(fā)光二極管(比七段多一個發(fā)光二極管,用來顯示dP,即點(diǎn)),每個發(fā)光二極管的陽極連在一起,如圖3.3所示。這樣,一

17、個LED數(shù)碼管就有I根位選線和8根段選線,要想顯示一個數(shù)值,就要分別對它們的高低電平來加以控制。為方便起見,本文主要討論共陽八段LED數(shù)碼顯示管,其他類形的顯示管與其類似。圖3.3 LED數(shù)碼管LED 燈的顯示原理:通過同名管腳上所加電平的高低來控制發(fā)光二極管是否點(diǎn)亮而顯示不同的字形,如 dp,g,f,e,d,c,b,a全亮顯示為,采用共陰極連接驅(qū)動代碼,代碼表如下表所示。驅(qū)動代碼表顯示數(shù)值dp,g,f,e,d,c,b,a驅(qū)動代碼0110100003FH11111100106H2101001005BH3101100004FH41001100166H5100100106DH6100000107D

18、H71111100007H8100000007FH9100100006FH表3.3數(shù)碼管驅(qū)動代碼表相應(yīng)在程序軟件上,可以通過調(diào)用程序給定的秒值經(jīng)過特定計(jì)算算出需要顯示的個位和十位,然后有DPTR調(diào)取LEDMAP的代碼。第四章 交通燈各部分功能分析4.1 時鐘定時控制部分 由于80C51單片機(jī)內(nèi)部有一個用于構(gòu)成振蕩器的高增益反向放大器,此放大器的輸入和輸出端分別是引腳XTAL1和XTAL2,在XTAL1和XTAL2上外接時鐘源即可構(gòu)成時鐘電路,該電路采用的是內(nèi)部方式,如圖4.1所示:圖4.1時鐘定時控制電路4.2 紅黃綠燈顯示電路圖4.2 紅黃綠燈顯示電路 二極管的負(fù)極共陰極連接,正極分別通過上

19、拉電阻接80C51單片機(jī)的外部接口P1.0、P1.1、P1.2、P1.3、P1.4、P1.5口,我們可以通過控制單片機(jī)P1口的數(shù)據(jù)輸出來控制二極管的亮滅。4.3 LED數(shù)字顯示電路圖4.3 LED數(shù)字顯示電路4.4 80c51單片機(jī)芯片圖4.4 80c51芯片第五章 系統(tǒng)軟件程序的設(shè)計(jì)5.1定時器原理5.1.1 定時器理論知識定時器工作的基本原理其實(shí)就是給初值,讓它不斷加1直至減完為模值,這個初值是送到TH和TL中的。它是以加法記數(shù)的,并能從全1到全0時自動產(chǎn)生溢出中斷請求。因此,我們可以把計(jì)數(shù)器記滿為零所需的計(jì)數(shù)值,即所要求的計(jì)數(shù)值設(shè)定為C,把計(jì)數(shù)初值設(shè)定為TC 可得到如下計(jì)算通式:TC=M

20、-C式中,M為計(jì)數(shù)器模值。計(jì)數(shù)值并不是目的,目的是時間值,設(shè)計(jì)1次的時間,即定時器計(jì)數(shù)脈沖的周期為T0,它是單片機(jī)系統(tǒng)主頻周期的12倍,設(shè)要求的時間值為T,則有C=TT0。計(jì)算通式變?yōu)椋篢=(MTC)T0模值和計(jì)數(shù)器/定時器工作方式有關(guān)。在方式0時M為8192;在方式1時M的值為65536;在方式2和3為256。就此可以算出各種方式的最大延時。如單片機(jī)的主脈沖頻率為12MHZ,經(jīng)過12分頻后,若采用方式0最大延時只有8.129毫秒,采用方式1最大延時也只有65.536毫秒。5.1.2 定時1秒的方法本設(shè)計(jì)要求秒倒計(jì)時, 我們采用在主程序中設(shè)定TH0為58H,TL0為9EH,則定時時間為0,04

21、285s,到定時時間后進(jìn)入中斷服務(wù)程序,在中斷服務(wù)程序中設(shè)定定時次數(shù)為20次,共定時0.857s(執(zhí)行前面程序會耽誤一段時間,因此設(shè)定定時時間小于一秒)。5.1.3相應(yīng)程序(1)主程序 MOV TMOD,#01H ;定時器T0工作方式為1 MOV TL0,#9EH MOV TH0,#58H SETB EA SETB ET0 ;開內(nèi)部T0中斷 SETB TR0 ;開啟定時(2)中斷服務(wù)子程序 TIME0INT:INC R5 CJNE R5,#20,LOOP11 INC R0 DEC R2 DEC R3 MOV R5,#0LOOP11: MOV TH0,#9EH MOV TL0, #58H RET

22、I5.2軟件延時原理MCS-51的工作頻率為12MHZ,機(jī)器周期與主頻有關(guān),機(jī)器周期是主頻的12倍,所以一個機(jī)器周期的時間為12*(1/12MHZ)=1us。我們可以知道具體每條指令的周期數(shù),這樣我們就可以通過指令的執(zhí)行條數(shù)來確定延時的時間,但同時由于單片機(jī)的運(yùn)行速度很快其他的指令執(zhí)行時間可以忽略不計(jì)。相應(yīng)的程序(延時1ms):DELAY: MOV R7,#02HDL1: MOV R6,#0FFHDL2: DJNZ R6,DL2 DJNZ R7,DL1 RET5.3 中斷原理本系統(tǒng)主要使用了外部中斷,中斷信號有引腳INT0和INT1輸入,低電平有效,CPU每個時鐘周期都會檢測INT0和INT1

23、上的信號,在優(yōu)先級的允許下,一旦有外部中斷信號產(chǎn)生,單片機(jī)CPU首先保護(hù)斷點(diǎn),PC值進(jìn)棧,然后執(zhí)行相應(yīng)的中斷服務(wù)子程序,執(zhí)行完后,用RETI指令返回,此時CPU會從堆棧中取保存的斷點(diǎn)地址,送回PC,程序再正常執(zhí)行。 相應(yīng)的程序 INT1: CLR TR0 PUSH PSW PUSH A PUSH 00H PUSH 01H PUSH 02H PUSH 03H PUSH 04H PUSH 05H PUSH 06H PUSH 07H ;入棧保護(hù) MOV 30H, TH0 MOV 31H, TL0 MOV 32H, P1 MOV P1,#09H MOV R2,#10 MOV R3,#10 MOV R0

24、,#0L33: MOV R5,#05FHL11: LCALL DELAY LCALL DISP DJNZ R5,L11 INC R0 DEC R2 DEC R3 CJNE R0,#10,L33 MOV P1, 32H MOV TH0, 30H MOV TL0, 31H POP 07H POP 06H POP 05H POP 04H POP 03H POP 02H POP 01H POP 00H POP A POP PSW ;恢復(fù)現(xiàn)場 SETB TR0 RETI5.4子程序模塊設(shè)計(jì)5.4.1狀態(tài)燈顯示及判斷在本設(shè)計(jì)中,實(shí)際控制的燈只有6個,即:東西紅燈,東西綠燈,東西黃燈,南北紅燈,南北綠燈,南

25、北黃燈。定義IO端口如下,其中均是高電平有效。P1.0代表南北紅燈,P1.1代表南北黃燈,P1.2代表南北綠燈,P1.3代表東西紅燈,P1.4代表東西黃燈,P1.5代表東西綠燈,共有6種狀態(tài):東西紅燈亮,南北綠燈亮(0CH);東西紅燈亮,南北綠燈滅(08H);東西紅燈亮,南北黃燈亮(0AH);東西綠燈亮,南北紅燈亮(21H);東西綠燈滅,南北紅燈亮(01H);東西黃燈亮,南北紅燈亮(11H)。5.4.2 LED倒計(jì)時顯示LED計(jì)時每1秒都要刷新1次,采用的是動態(tài)顯示,首先將R2除以10,整數(shù)即十位放在70H中,余數(shù)即個位放在71H中,設(shè)置7段LED顯示數(shù)據(jù)的數(shù)據(jù)表,用數(shù)據(jù)指針寄存器DPTR指向

26、數(shù)據(jù)表的首地址,再加上A中的偏移量,就可以指向十位數(shù)字,然后送顯即可,個位顯示同理。具體程序如下:DISP: MOV R4,#20H ;位選碼 MOV R1,#70HLOOP9: MOV A, R2 MOV B,#0AH DIV AB MOV 70H,A ;顯示十位放到70H中 MOV A,B MOV 71h,A ;顯示個位放到71H中 MOV A,R3 MOV B,#0AH DIV AB MOV 72H,A ;另一方向顯示的十位放到72H中 MOV A,B MOV 73H,A ;另一方向顯示的個位放到73H中 MOV A,R4 JB ACC.1,LOOP10 ;位選碼循環(huán)移位4次 MOV D

27、PTR,#8002H MOVX DPTR,A RR A MOV R4,A MOV A,R1 MOV DPTR,#TAB MOVC A,A+DPTR MOV DPTR,#8004H MOVX DPTR,A ;顯示數(shù)據(jù) LCALL DELAY INC R1 MOV DPTR,#8004H MOV A,#0 MOVX DPTR,A AJMP LOOP9LOOP10: RET第六章 系統(tǒng)程序流程圖6.1 紅綠黃燈流程圖 開始系統(tǒng)初始化東西紅燈亮,南北綠燈亮調(diào)顯示子程序(動態(tài)顯示)東西,南北方向換向東西紅燈亮,南北綠燈閃爍東西紅燈亮,南北黃燈亮圖6.1紅黃綠燈工作流程圖6.2中斷系統(tǒng)流程圖外部中斷入口保

28、護(hù)現(xiàn)場東西南北都亮紅燈延時10秒恢復(fù)現(xiàn)場中斷返回圖6.2中斷流程圖如上圖所示,該流程圖為中斷程序的流程圖,在交通燈程序正常運(yùn)行的任何時刻,都可以隨時按下終端按鈕,即按鍵開關(guān)K1。按下按鍵開關(guān)后即可實(shí)現(xiàn)如上所述的中斷,先將當(dāng)前狀態(tài)保存起來,然后所有路口的交通燈紅燈亮起,數(shù)碼管開始顯示10秒的倒計(jì)時,倒計(jì)時結(jié)束后,程序自動返回原來中斷的狀態(tài),并且繼續(xù)運(yùn)行原來的程序。主程序?yàn)橐粋€反復(fù)循環(huán)的程序。每40秒一個周期。按下復(fù)位鍵K1可以使程序返回初始狀態(tài),東西紅燈南北綠燈,然后重復(fù)運(yùn)行主程序。單片機(jī)的優(yōu)點(diǎn)就在于它可以用一個單個的芯片來獨(dú)立的實(shí)現(xiàn)一個完整的功能而不受其他外界干擾影響。這種獨(dú)立化使得單片機(jī)得以

29、流行起來,并且迅速的應(yīng)用到各個行業(yè),各個領(lǐng)域。單片機(jī)的優(yōu)勢之處還在于他十分穩(wěn)定,不會輕易發(fā)生意外情況,即使出現(xiàn)意外情況,其程序也可以非常方便的進(jìn)行調(diào)試。實(shí)用性、可靠性很強(qiáng)。第七章 系統(tǒng)原理圖圖7.1系統(tǒng)原理圖第八章系統(tǒng)的調(diào)試程序編好以后,先自己檢查是否有邏輯錯誤,保證正確后利用wave6000仿真軟件對所編寫的程序進(jìn)行編譯,檢查是否有語法錯誤,出現(xiàn)錯誤時偉福系統(tǒng)會自動提示有錯誤產(chǎn)生,并會指定錯誤的語句,這時我們需要認(rèn)真檢查程序,修改編譯中出現(xiàn)的錯誤。程序無誤后,連接試驗(yàn)箱,觀察現(xiàn)象 ,試驗(yàn)箱接線如下表中斷接線接線接線孔1接線孔21INT1(P3.3)單次脈沖二極管接線接線接線孔1接線孔21P1

30、.0L12P1.1L23P1.2L34P1.3L45P1.4L56P1.5L6數(shù)碼管接線接線接線孔1接線孔21KEY/LED_CSCS0表8.1 試驗(yàn)線接線第九章 心得體會通過這次單片機(jī)課程設(shè)計(jì),使我學(xué)到了很多專業(yè)知識,WAVE6000的基礎(chǔ)使用方法,8051單片機(jī)的基本指令,基礎(chǔ)的編程方法,以及交通信號燈的工作方式和原理。在這一周的大部分時間都在設(shè)計(jì)硬件電路,編制程序和調(diào)試程序,讓我把以前學(xué)習(xí)到的知識得到鞏固和進(jìn)一步的提高認(rèn)識,對已有知識有了更進(jìn)一步的理解和認(rèn)識。鞏固了單片機(jī)和數(shù)字邏輯電路的理論知識,并對芯片有了新的認(rèn)識,懂得它的功能和與其它芯片替換的方法等, 更重要的是如何將邏輯電路靈活運(yùn)

31、用到實(shí)際生活電路設(shè)計(jì)。在設(shè)計(jì)過程中,對我來說,學(xué)到的不僅是那些知識,更是學(xué)會了自己獨(dú)立思考問題的能力,不懂時查閱資料,請教老師同學(xué)。本次課程設(shè)計(jì)的過程是艱辛的,不過收獲卻是很大的。在此,忠心感謝老師,同學(xué)們一周以來,辛苦耐心的指導(dǎo)和幫助!參考文獻(xiàn)1 張淑清 單片微型計(jì)算機(jī)接口技術(shù)及其應(yīng)用 國防工業(yè)出版社2 張淑清 單片機(jī)原理及應(yīng)用技術(shù) 國防工業(yè)出版社3姜武中 單片機(jī)原理與接口技術(shù) 大連理工大學(xué)出版社4單片機(jī)應(yīng)用技術(shù)匯編程序: ORG 0000H LJMP START ORG 000BH ;定時器T0中斷入口地址 LJMP TIME0INT ORG 0013H ;外部中斷INT1入口地址 LJM

32、P INT1 ORG 0100HSTART: MOV SP,#50H MOV TMOD,#01H ;定時器T0工作方式為1 MOV TL0,#9EH ;設(shè)定定時器初值 MOV TH0,#58H SETB EA ;開總中斷 SETB ET0 ;允許T0中斷 SETB TR0 ;啟動定時 SETB EX1 ;開外部中斷INT1L1: MOV P1,#0ch ;東西紅燈亮,南北綠燈亮 MOV R2,#27 MOV R3,#30LOOP1: LCALL DISP ;顯示數(shù)據(jù) CJNE R0,#23,LOOP1 ;南北綠燈亮23秒 MOV 60H,#0LOOP2: MOV R0,#0 CPL P1.2

33、;南北綠燈取反LOOP3: LCALL DISP CJNE R0,#1,LOOP3 INC 60H MOV A,60H CJNE A,#4, LOOP2 ;南北綠燈閃爍4秒 MOV 60H,#0 MOV A,#0 MOV R0,#0 MOV P1,#0aH MOV R2,#3LOOP4: LCALL DISP CJNE R0,#3,LOOP4 ;南北黃燈亮3秒 MOV R0,#0 MOV P1,#21H ;東西綠燈亮,南北紅燈亮 MOV R2,#30 MOV R3,#27LOOP5: LCALL DISP CJNE R0,#23,LOOP5 ;東西綠燈亮23秒LOOP6: MOV R0,#0

34、CPL P1.5 ;東西綠燈取反LOOP7: LCALL DISP CJNE R0,#1,LOOP7 INC 60H MOV A,60H CJNE A,#4 ,LOOP6 ;東西綠燈閃爍4秒 MOV 60H,#0 MOV A,#0 MOV R0,#0 MOV P1,#11H MOV R3,#3LOOP8: LCALL DISP CJNE R0,#3,LOOP8 ;東西黃燈亮3秒 MOV R0,#0 LJMP L1 ;循環(huán)DISP: MOV R4,#20H ;位選碼 MOV R1,#70H ;存放顯示數(shù)據(jù)起始地址LOOP9: MOV A, R2 MOV B,#0AH DIV AB MOV 70H,A ;一個方向顯示的十位數(shù)據(jù)存放在70H中 MOV A,B MOV 71h,A ;一個方向顯示的個位數(shù)據(jù)存放在71H中 MOV A,R3 MOV B,#0AH DIV AB MOV 72H,A ;另一方向顯示的十位數(shù)據(jù)存放在72H中 MOV A,B MOV 73H,A ;另一方向顯示的個位數(shù)據(jù)存放在73H中 MOV A,R4 JB ACC.1,LOOP10 ;位選碼控制動態(tài)顯示四位數(shù)字 MOV DPTR,#8002H MOVX DPTR,A ;位選碼送到8002H RR A ;位選碼循環(huán)移位,動態(tài)顯示四位數(shù)字 MOV R4,A

溫馨提示

  • 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

提交評論