交通燈設(shè)計報告(共15頁)_第1頁
交通燈設(shè)計報告(共15頁)_第2頁
交通燈設(shè)計報告(共15頁)_第3頁
交通燈設(shè)計報告(共15頁)_第4頁
交通燈設(shè)計報告(共15頁)_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上 數(shù)理與信息工程學(xué)院課 程 設(shè) 計 題 目: 交通燈設(shè)計報告 專 業(yè): 計算機科學(xué)與技術(shù)(專升本) 班 級: 056 姓 名: 王 恩 學(xué)號: 實驗地點: 數(shù)理與信息工程學(xué)院 指導(dǎo)老師: 余水寶 張 勝 丁宇 成 績: ( 2006.6 )目 錄第1節(jié) 引 言1 1.1設(shè)計的基本要求 1 1.2本設(shè)計的主要任務(wù)及主要功能 1 第2節(jié) 交通燈硬件設(shè)計2.1硬件設(shè)計-電氣結(jié)構(gòu)框圖 22.2元件介紹3第3節(jié) 系統(tǒng)軟件設(shè)計3.1整個系統(tǒng)程序的代碼73.2.鍵盤服務(wù)子程序流程圖12參考文獻 17專心-專注-專業(yè)交通燈設(shè)計報告數(shù)理與信息工程學(xué)院 05計算機專升本 王恩指導(dǎo)教師:余

2、水寶 張 勝第1節(jié) 引 言設(shè)計的目的、意義1 目的本設(shè)計是單片機原理與應(yīng)用課程綜合訓(xùn)練,同學(xué)們可以通過理論學(xué)習(xí),課題選擇,資料查閱,軟,硬件設(shè)計,系統(tǒng)調(diào)試等環(huán)節(jié),鞏固和提高所學(xué)的知識和應(yīng)用水平。學(xué)會提出問題,觀察和分析問題,得到最終的科學(xué)方法。培養(yǎng)嚴謹?shù)墓ぷ髯黠L,務(wù)實的工作態(tài)度。為今后的畢業(yè)設(shè)計,及從事單片機控制系統(tǒng)的設(shè)計與維護奠定堅實的基礎(chǔ)。2 意義 本設(shè)計的意義在于通過具體的控制系統(tǒng)的設(shè)計,掌握單片機控制系統(tǒng)設(shè)計的一般方法和處理問題的思路,特別是一些常用的技術(shù)手段。使我們能在實踐教學(xué)環(huán)節(jié)中,積累設(shè)計經(jīng)驗,開拓思維空間,全面提高個人的綜合能力。1.1 設(shè)計的基本要求1 鞏固,加強對單片機原理

3、與應(yīng)用,課程基本理論的理解,并能應(yīng)用所學(xué)知識解決實際問題。2 掌握常用接口芯片的電路設(shè)計與軟件設(shè)計方法。3 掌握簡單系統(tǒng)的總體設(shè)計一般方法。1.2 本設(shè)計任務(wù)及系統(tǒng)主要功能1. 設(shè)計中以單片機為主控器,作適當?shù)拇鎯ζ?,鍵盤顯示器,、十二盞指示燈的擴展,形成一個路口燈火控制系統(tǒng)。2. 本設(shè)計是在車輛通行繁忙的十字交叉路口設(shè)置的燈火控制系統(tǒng),其特點是:道路較窄而車輛通行較多,支線、干線的車輛通行時間不等,并設(shè)有左右彎道通行時間,允許人工監(jiān)控或修改各線通行時間,同時設(shè)有道路應(yīng)急控制。具體的情況是:在正常的情況下,干道通行時間為40秒,其中左右彎道占時5秒,直道通行時間為25秒,其中左右彎道占時5秒,

4、直道占時20秒。并且能夠在人工監(jiān)控狀態(tài)下,干道、支道通行時間通過鍵盤修改或通過開關(guān)人為控制。第2節(jié) 交通燈硬件設(shè)計21 硬件設(shè)計-電氣結(jié)構(gòu)框圖如下:LED顯示器交通指示燈I/O接口8051存儲器鍵盤1.硬件系統(tǒng)的設(shè)計還應(yīng)滿足以下原則:() 滿足系統(tǒng)的設(shè)計要求,易于操作維護。() 系統(tǒng)功能靈活,便于擴展。() 具有自動診斷功能。2.硬件系統(tǒng)的設(shè)計主要包括下面的工作:a:擴展存儲器:本系統(tǒng)設(shè)計中用到的是62256EEPROM即可做程序存儲器又可做數(shù)據(jù)存儲器。他跟2個74LS373地址鎖存器相連,用到A0A14共15根地址線,所以他的尋址范圍07FFFH。b. 配置位顯示器:該顯示器是雙色顯示器,它

5、由一個紅色的LED和一個綠色的LED封裝在一起紅色管接正極,綠色管接負極顯示紅色,紅色管接負極,綠色管接正極,則顯示器顯示綠色,都接正極則顯示黃色,都接負極則不顯示。在該系統(tǒng)中它是由8255的A口經(jīng)過74LS240連接的。c. 配置鍵鍵盤,其中“A”為啟動鍵,B為停止鍵.擴展并行接口8255A.c鍵為修改鍵,e,f鍵人工控制鍵。在該系統(tǒng)中列線用到的是8279的SL經(jīng)過74LS138的8根列線中的3跟Y0,Y1,Y5,行線是8279的RL8根輸出線。(2)軟件設(shè)計在該系統(tǒng)的軟件設(shè)計中用到的是模塊程序設(shè)計,主要的模塊程序是鍵盤的模塊程序,它包括、,顯示的模塊程序,它包括、。通過軟件的設(shè)計使系統(tǒng)有簡

6、易的監(jiān)控功能,通過鍵盤可以修改通行時間和啟動或停止人工控制的路口燈火控制系統(tǒng).正常顯示狀態(tài):動態(tài)顯示車輛通行時間,其格式為支道通行時間顯示位干道通行時間顯示位監(jiān)控狀態(tài)顯示修改時間;應(yīng)急狀態(tài)顯示“PP”。3總體設(shè)計與論證 A: 首先根據(jù)該設(shè)計的特點,把出現(xiàn)的情況進行分析整理,得到以下幾種情況:(1)干道:左右彎道:占時5秒。顯示如上圖所示的第四位;直道:占時35秒,顯示如上圖所示的高兩為。(2)支道:左右彎道;占時5秒,顯示如上圖所示的二三位;直道:占時25秒,顯示如上圖所示的第0位。(3)同時的幾位燈在直道時那位亮,在彎道時那位亮。(4)在綠燈轉(zhuǎn)紅燈時,閃爍3次,變黃延時五秒變紅燈。 B:根據(jù)

7、以上的情況分析,經(jīng)過思路的整理大家統(tǒng)一得到了整體的設(shè)計框架圖,及程序流程圖和硬件圖。C:我門的的系統(tǒng)設(shè)計過程中,實驗系統(tǒng)主要采用的是模塊化設(shè)計。這次系統(tǒng)設(shè)計中用到的模塊是:MODEL1-62256存儲器,ELMOD2-8279鍵盤顯示,ELMOD3138譯碼電路,ELMOD4可編程并行接口8225。這次系統(tǒng)設(shè)計過程中要將這幾個模塊按照邏輯與設(shè)計要求把它們與8031做連接,實現(xiàn)以上特點。D:這次設(shè)計當中初步?jīng)Q定所需要的輔助芯片有:373地址鎖存器2個或3個。反向器若干,62256存儲器。E:硬件設(shè)計:電路圖為附件。F:軟件設(shè)計:包括鍵盤程序,顯示程序,顯示程序為主程序。子程序有延時程序延時為0.

8、1秒。22 元件介紹1、可編程鍵盤,顯示器接口Intel82798279是INTEL開發(fā)的專用鍵盤顯示器接口芯片,該芯片能對顯示器實現(xiàn)自動掃描,能自動識別鍵盤型號,它大大減輕了CPU的負擔,因此在單片機應(yīng)用系統(tǒng)中,該芯片得到了廣泛的應(yīng)用。8279的結(jié)構(gòu)及引腳功能:下圖為8279內(nèi)部結(jié)構(gòu)圖。8279由數(shù)據(jù)緩沖器,I/O控制邏輯,控制和定時寄存器及定時與控制電路,掃描計數(shù)器,回復(fù)緩沖器,鍵盤去抖動及控制電路,F(xiàn)IFO/傳感器RAM及其他狀態(tài)寄存器,顯示RAM及顯示地址寄存器等部分組成。(1) 數(shù)據(jù)緩沖器及I/O控制邏輯 數(shù)據(jù)緩沖器是一個雙向緩沖器,它連接內(nèi)部總線和外部總線,用于傳送CPU和8279

9、之間的命令,數(shù)據(jù)和狀態(tài)。(2) 控制與定時寄存器以及定時與控制電路 8279為一個可編程芯片,其工作方式等通過寫入一些命令來設(shè)置。控制與定時寄存器用來寄存操作命令字,通過對命令字譯碼產(chǎn)生相應(yīng)的控制信號,控制8279的各個部件的協(xié)調(diào)工作,完成相應(yīng)的功能。(3) 掃描計數(shù)器 掃描計數(shù)器有兩種工作方式。一種為外部譯碼方式。計數(shù)器以二進制方式計數(shù),4位計數(shù)狀態(tài)從掃掃描結(jié)SL0SL3輸出,經(jīng)外部譯碼后形成的16位掃描信號;另一種為內(nèi)部譯碼方式。(4) 回復(fù)緩沖器,鍵盤去抖動與控制電路 回復(fù)緩沖器緩沖并鎖存來自RL0RL7 8根回復(fù)線的回復(fù)信號。時鐘復(fù)位D07IRQ RD WR CS 數(shù)據(jù)緩沖器FIFO/

10、傳感器RAM狀態(tài)寄存器I/O控制16x8顯示RAM8x8FIFO/傳感器RAM鍵盤去抖動與控制電路顯示地址寄存器控制與定時寄存器定時控制 回復(fù)緩沖器掃描計數(shù)器BD顯示寄存器OUTA0-3 OUTB0-3 SL0-3 RL0-7 SHIET CNTL/STB(5) 數(shù)據(jù)緩沖器及I/O控制邏輯 數(shù)據(jù)緩沖器是一個雙向緩沖器,它連接內(nèi)部總線和外部總線,用于傳送CPU和8279之間的命令,數(shù)據(jù)和狀態(tài)。(6) 控制與定時寄存器以及定時與控制電路 8279為一個可編程芯片,其工作方式等通過寫入一些命令來設(shè)置??刂婆c定時寄存器用來寄存操作命令字,通過對命令字譯碼產(chǎn)生相應(yīng)的控制信號,控制8279的各個部件的協(xié)調(diào)

11、工作,完成相應(yīng)的功能。(7) 掃描計數(shù)器 掃描計數(shù)器有兩種工作方式。一種為外部譯碼方式。計數(shù)器以二進制方式計數(shù),4位計數(shù)狀態(tài)從掃掃描結(jié)SL0SL3輸出,經(jīng)外部譯碼后形成的16位掃描信號;另一種為內(nèi)部譯碼方式。(8) 回復(fù)緩沖器,鍵盤去抖動與控制電路 回復(fù)緩沖器緩沖并鎖存來自RL0RL7 8根回復(fù)線的回復(fù)信號。(9) FIFO/傳感器RAM及其狀態(tài)寄存器 FIFO/傳感器RAM是一個雙重功能的8X8RAM(10) 顯示RAM各顯示地址寄存器 顯示RAM用來存儲顯示數(shù)據(jù),容量為16X8位。38279的工作方式:(1) 鍵盤工作方式雙鍵互鎖方式N鍵輪回方式(2) 顯示器工作方式左端輸入方式右端輸入方

12、式(3) 傳感器矩陣方式(4) 選通輸入方式48279的引腳功能:8279采用40腳引腳封裝,其管腳,引線功能如下所示:RL2 VCCRL3 RL1CLK RL0IRQ CNTL/STB RL4 SHIFT RL5 SL3 RL6 SL2RL7 SL1RESET SL0RD OUTB0 WR OUTB1D0 OUTB2D1 OUTB3D2 OUTA0D3 OUTA1D4 OUTA2D5 OUTA3D6 BDGND A08279IRQ RL7RL0 SHIFTRD CNTL/STB WR SL3SL0 CS OUTA3- OUTA0A0 OUTB3- OUTB0 RESET BDCLKCPU掃描

13、 接口信號顯示數(shù)據(jù)注釋:其中右圖中大括號未標注的是:鍵盤數(shù)據(jù)。D0-D7(數(shù)據(jù)總線):雙向,三態(tài)總線,和系統(tǒng)數(shù)據(jù)總線 相連,用于CPU和8279間的數(shù)據(jù)/命令和狀態(tài)的傳送。CLK(系統(tǒng)時鐘):輸入線,為8279提供內(nèi)部時鐘的輸入端。RESET(復(fù)位):輸入線,當RESET=1時,8279復(fù)位,其復(fù)位狀態(tài)為:16個字符顯示,編碼掃描鍵盤雙重功能鍵瑣定,程序時鐘編程為31。CS(片選):輸入線,當CS=0時,8279被選種時,允許CPU對其讀,寫,否則,被禁止。A0(數(shù)據(jù)選擇):輸入線,當A0=1時,CPU寫入數(shù)據(jù)為命令字,讀出數(shù)據(jù)為狀態(tài)字。A0=0時,CPU讀寫的字節(jié)均為數(shù)據(jù)。RD,WR(讀,寫

14、信號):輸入線,低電瓶有效,來自CPU的控制信號,控制8279的讀寫操作。IRQ(中斷請求)輸出線,高電平有效。SL0-SL3(掃描線):輸出線,用來掃描鍵盤和顯示器,他們可以編程設(shè)定為內(nèi)部譯碼輸出和外部譯碼輸出。RL0-RL7(回復(fù)線):輸入線,他們時鍵盤距陣和傳感器距陣行或列信號輸入線。SHIFT(移位信號):輸入線,高電平有效,該輸入信號時8279鍵盤數(shù)據(jù)的次高位(D0)。通常用來擴充鍵開關(guān)的功能。可用作鍵盤上下?lián)醯墓δ苕I。在傳感器方式和選通方式中,SHIFT無效。CNTL/STB(控制/選通):輸入線,高電平有效。OUTA0OUTA3(A組顯示信號),OUTB0OUTB3(B組顯示信號

15、):輸出線,這兩組引線都是顯示數(shù)據(jù)輸出線,與多位數(shù)字顯示的掃描線SL0-SL3同步。兩組可獨立使用也可合并使用。BD(顯示消隱):輸出線,低電平有效,在信號在數(shù)字切換顯示或使用消隱命令時,將顯示消隱。第3節(jié) 系統(tǒng)的軟件設(shè)計軟件設(shè)計系統(tǒng)有簡易的臨控功能,通過鍵盤可以控制機械手的啟動,停止,回零等運行動作,對路徑和作業(yè)時間進行編程。顯示器能顯示每個工位作業(yè)時間,出錯時能顯示報警信號“EE”以及在監(jiān)控狀態(tài)下顯示鍵入的數(shù)據(jù)。31 整個系統(tǒng)的程序代碼Z8279EQU0FF82H;8279狀態(tài)/命令口地址D8279EQU0FF80H ;8279數(shù)據(jù)口地址LEDMODEQU00H ;左邊輸入八位字符顯示 ;

16、外部譯碼鍵掃描方式,雙鍵互鎖LEDFEQEQU2FH ;掃描速率LEDCLSEQU0C1H ;清除顯示RAMLEDWR0EQU80H ;設(shè)定的將要寫入的顯示RAM地址 READKB EQU 40H ;讀FIFO RAM地址0的命令字ORG 0000HMOV DPTR,#8406H ;8255控制口地址 MOV A,#80H ;命令字傳入控制口MOVX DPTR,ALJMP START ;開始程序 ORG 0040HSTART: MOV 16H,#35 ;設(shè)定顯示秒數(shù)MOV SP,#30H LCALL STATUS0 ;調(diào)用初始狀態(tài)全紅燈CIRCLE: LCALL STATUS1 ;南北綠燈東西

17、紅燈LCALL STATUS2 ;南北綠燈閃轉(zhuǎn)黃燈東西紅燈 LCALL STATUS3 ;南北紅燈東西綠燈 LCALL STATUS4 ;南北紅燈東西綠燈閃轉(zhuǎn)黃燈LJMP CIRCLESTATUS0:MOV DPTR , #8400H MOV A,#0FHMOVX DPTR, AMOV R2,#10 ;延時一秒LCALL DELAY RETSTATUS1: ;南北綠燈東西紅燈MOV DPTR , #8400HMOV A,#96HMOVX DPTR, AMOV 11H,16HLCALL INIT8279 ;初始化清屏 STA1: LCALL LC ;處理并調(diào)用顯示的數(shù)據(jù)MOV 15H,#07H

18、;設(shè)定顯示位數(shù)MOV 14H,#06HMOV R5,12HLCALL DISPLAY ;調(diào)用顯示MOV R5, 13HMOV R2,#10LCALL DELAY ;延時LCALL FUWU ;調(diào)用鍵盤服務(wù)程序DJNZ 11H,STA1 RETSTATUS2: ;南北綠燈閃轉(zhuǎn)黃燈東西紅燈MOV DPTR , #8400HMOV R3,#03H ;閃爍三次FLASH:MOV A,#9FHMOVX DPTR,AMOV R2,#03HLCALL DELAYMOV A,#96HMOVX DPTR,AMOV R2,#03HLCALL DELAYDJNZ R3,FLASHMOV A,#06HMOVX DPT

19、R,ALCALL INIT8279MOV 11H,#5 ;彎道時間STA2:LCALL LCMOV 14H,#4LCALL DISPLAYDJNZ 11H,STA2RETSTATUS3: ;南北紅燈東西綠燈MOV DPTR , #8400HMOV A,#69HMOVX DPTR, AMOV 11H,#25 ;設(shè)定支道時間LCALL INIT8279STA3: LCALL LCMOV 15H,#03HMOV 14H, #02HLCALL DISPLAYDJNZ 11H,STA3RETSTATUS4: ;南北紅燈東西綠燈閃轉(zhuǎn)黃燈MOV DPTR , #8400HMOV R3,#03HFLASH1:

20、MOV A,#6FHMOVX DPTR,AMOV R2,#03HLCALL DELAYMOV A,#69HMOVX DPTR,AMOV R2,#03HLCALL DELAYDJNZ R3,FLASH1MOV A,#09HMOVX DPTR,AMOV 11H,#05HLCALL INIT8279STA4:LCALL LCMOV 14H,#00H ;讓該位顯示0LCALL DISPLAYDJNZ 11H,STA4 RETINIT8279: ;初始化MOVDPTR,#Z8279 MOVA,#LEDMODMOVXDPTR,AMOVA,#LEDFEQMOVXDPTR,AMOVA,#LEDCLSMOVXD

21、PTR,ALCALLDELAYRETDISLED: ;顯示字符子程序PUSHDPH PUSHDPLPUSHACCMOVA,#LEDWR0ADDA,R4MOVDPTR,#Z8279MOVXDPTR,AMOVDPTR,#LEDSEGMOVA,R5MOVCA,A+DPTRMOVDPTR,#D8279MOVXDPTR,APOPACCPOPDPLPOPDPHRETDELAY: ;延時程序PUSH0 ;延時100msPUSH1 PUSH 2DELAY1:MOV1,#0HDELAY2:MOV 0,#0B2HDJNZ0,$DJNZ1,DELAY2 DJNZ 2,DELAY1 POP 2POP1POP0RETD

22、ISPLAY: ;顯示字符程序MOV R5,12H;存高位MOV R4,15H;顯高位LCALL DISLEDMOV R5,13HMOV R4,14HLCALL DISLED;MOV R2,#10;LCALL DELAYMOV R5,#00HMOV R4,14HLCALL DISLEDRETLC:MOV A, 11H ;處理將要顯示的數(shù)據(jù)MOV B,#0AHDIV ABMOV 12H,AMOV 13H,BRETERROR:LCALL STATUS0 ;顯示急停子程序MOV R5,#10HMOV R4,#05HLCALL DISLEDMOV R5,#11HMOV R4,#04HLCALL DIS

23、LEDMOV R5,#12HMOV R4,#03HLCALL DISLEDMOV R5,#13HMOV R4,#02HLCALL DISLEDRETFUWU: ;鍵盤程序WAIT:LCALL GETKEY ;得到鍵值CJNE A,#0FFH,RET0 ;是否有鍵按下MOV A,BCJNE A,#0AH, BB ;判斷鍵值LCALL KEYASJMP RET0BB:MOV A,BCJNE A,#0BH,CCLCALL KEYBSJMP RET0CC:MOV A,BCJNE A,#0CH,DDLCALL KEYCSJMP RET0DD:MOV A,BCJNE A,#0DH ,WAITLCALL K

24、EYDRET0:RETGETKEY: PUSH DPH ;讀取鍵盤子程序,PUSH DPL ; 保護現(xiàn)場PUSH PSWMOV DPTR,#Z8279 ;讀8279狀態(tài)MOVX A,DPTRANL A,#07HJNZ GETVAL ;判斷是否有鍵輸入MOV A,#00H ;置標志(無鍵輸入)SJMP NKBHIT ;GETVAL: ;讀FIFO RAM命令MOV A,#READKB ;讀鍵值MOVX DPTR,AMOV DPTR,#D8279MOVX A,DPTRANL A,#3FH ;屏蔽SHIF、CTRLMOV B ,A ;置返回鍵值MOV A,#0FFH ;置標志(有鍵輸入)NKBHIT

25、: POP PSW ;恢復(fù)現(xiàn)場 POP DPLPOP DPHRETKEYA:LCALL INIT8279 ;A鍵(開始)MOV R5,#0AMOV R4,#06HLCALL DISLED AJMP STARTRETKEYB:MOV R5,#0BH ;B鍵急停MOV R4, #06HLCALL DISLEDLCALL ERRORRETKEYC:LCALL INIT8279 ;C鍵改數(shù)MOV R5,#0CHMOV R4,#06HLCALL DISLEDWAIT1:LCALL GETKEYCJNE A,#0FFH,WAIT1MOV R5,BMOV 21H,BMOV R4, #01HLCALL DISLEDWAIT2:LCALL GETKEYCJNE A, #0FFH, WAIT2MOV R5, BMOV 20H, BMOV R4, #0 LCALL DISLEDCLR AMOV A, 81HMOV B, #10MUL ABMOV B, 80HADD A, BMOV 16H, ARETKEYD:MOV A,21H ;D鍵確認MOV B, #10MUL ABMOV B, 20HADD A, B MOV 16H, AMOV 11H, 16HLCALL CIRCLEAJ

溫馨提示

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

評論

0/150

提交評論