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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

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

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

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

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

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

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

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

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

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

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

11、工作,完成相應的功能。(7) 掃描計數器 掃描計數器有兩種工作方式。一種為外部譯碼方式。計數器以二進制方式計數,4位計數狀態(tài)從掃掃描結SL0SL3輸出,經外部譯碼后形成的16位掃描信號;另一種為內部譯碼方式。(8) 回復緩沖器,鍵盤去抖動與控制電路 回復緩沖器緩沖并鎖存來自RL0RL7 8根回復線的回復信號。(9) FIFO/傳感器RAM及其狀態(tài)寄存器 FIFO/傳感器RAM是一個雙重功能的8X8RAM(10) 顯示RAM各顯示地址寄存器 顯示RAM用來存儲顯示數據,容量為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、 接口信號顯示數據注釋:其中右圖中大括號未標注的是:鍵盤數據。D0-D7(數據總線):雙向,三態(tài)總線,和系統數據總線 相連,用于CPU和8279間的數據/命令和狀態(tài)的傳送。CLK(系統時鐘):輸入線,為8279提供內部時鐘的輸入端。RESET(復位):輸入線,當RESET=1時,8279復位,其復位狀態(tài)為:16個字符顯示,編碼掃描鍵盤雙重功能鍵瑣定,程序時鐘編程為31。CS(片選):輸入線,當CS=0時,8279被選種時,允許CPU對其讀,寫,否則,被禁止。A0(數據選擇):輸入線,當A0=1時,CPU寫入數據為命令字,讀出數據為狀態(tài)字。A0=0時,CPU讀寫的字節(jié)均為數據。RD,WR(讀,寫

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

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

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

17、紅燈LCALL STATUS2 ;南北綠燈閃轉黃燈東西紅燈 LCALL STATUS3 ;南北紅燈東西綠燈 LCALL STATUS4 ;南北紅燈東西綠燈閃轉黃燈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 ;處理并調用顯示的數據MOV 15H,#07H

18、;設定顯示位數MOV 14H,#06HMOV R5,12HLCALL DISPLAY ;調用顯示MOV R5, 13HMOV R2,#10LCALL DELAY ;延時LCALL FUWU ;調用鍵盤服務程序DJNZ 11H,STA1 RETSTATUS2: ;南北綠燈閃轉黃燈東西紅燈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 ;設定支道時間LCALL INIT8279STA3: LCALL LCMOV 15H,#03HMOV 14H, #02HLCALL DISPLAYDJNZ 11H,STA3RETSTATUS4: ;南北紅燈東西綠燈閃轉黃燈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 ;處理將要顯示的數據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 ; 保護現場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 ;恢復現場 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鍵改數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. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論