版權(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ì)實(shí)驗(yàn)報(bào)告課題名稱(chēng) 交通燈指揮系統(tǒng) 學(xué)院 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 交通燈指揮系統(tǒng)1、設(shè)計(jì)任務(wù)與要求編寫(xiě)一個(gè)交通燈控制程序,實(shí)現(xiàn)東西路口與南北路口狀態(tài)燈的轉(zhuǎn)換和緊急處理。采用8253芯片計(jì)數(shù),輸出1S的時(shí)鐘脈沖,并使用8255接口芯片控制LED亮滅,同時(shí)讓8279芯片顯示倒計(jì)時(shí),鍵盤(pán)控制緊急處理按鍵,以此實(shí)現(xiàn)交通燈指揮控制系統(tǒng)。2、總體方案與說(shuō)明南北紅燈,東西綠燈,亮6秒,且數(shù)碼管9秒倒計(jì)時(shí)顯示。南北紅燈,東西黃燈,亮3秒。南北綠燈,東西紅燈,亮6秒,且數(shù)碼管6秒倒計(jì)時(shí)顯示。南北黃燈,東西紅燈,亮3秒,且數(shù)碼管3秒倒計(jì)時(shí)顯示。轉(zhuǎn)重復(fù)l 按鍵盤(pán)1鍵,則南北紅燈,東西綠燈;按鍵盤(pán)0鍵,恢復(fù)原
2、狀態(tài)。l 按鍵盤(pán)2鍵,則南北綠燈,東西紅燈;按鍵盤(pán)0鍵,恢復(fù)原狀態(tài)。l 按鍵盤(pán)4鍵,則東西南北方向全亮紅燈,按鍵盤(pán)0鍵,恢復(fù)原狀態(tài)。l 按鍵盤(pán)5鍵,則東西南北方向全亮綠燈,按鍵盤(pán)0鍵,恢復(fù)原狀態(tài)。l 按鍵盤(pán)6鍵,則東西南北方向全亮黃燈,按鍵盤(pán)0鍵,恢復(fù)原狀態(tài)。交通指揮系統(tǒng)正常運(yùn)行時(shí)間表南北方向紅燈綠燈黃燈時(shí)間9s6s3s東西方向綠燈黃燈紅燈時(shí)間6s3s9s3、硬件框圖與說(shuō)明l 芯片8253原理簡(jiǎn)介:8253內(nèi)部有三個(gè)計(jì)數(shù)器,分別成為計(jì)數(shù)器0、計(jì)數(shù)器1和計(jì)數(shù)器2,他們的機(jī)構(gòu)完全相同。每個(gè)計(jì)數(shù)器的輸入和輸出都決定于設(shè)置在控制寄存器中的控制字,互相之間工作完全獨(dú)立。每個(gè)計(jì)數(shù)器通過(guò)三個(gè)引腳和外部聯(lián)系,
3、一個(gè)為時(shí)鐘輸入端CLK,一個(gè)為門(mén)控信號(hào)輸入端GATE,另一個(gè)為輸出端OUT。每個(gè)計(jì)數(shù)器內(nèi)部有一個(gè)8位的控制寄存器,還有一個(gè)16位的計(jì)數(shù)初值寄存器CR、一個(gè)計(jì)數(shù)執(zhí)行部件CE和一個(gè)輸出鎖存器OL。工作原理:8253具有3個(gè)獨(dú)立的計(jì)數(shù)通道,采用減1計(jì)數(shù)方式。在門(mén)控信號(hào)有效時(shí),每輸入1個(gè)計(jì)數(shù)脈沖,通道作1次計(jì)數(shù)操作。當(dāng)計(jì)數(shù)脈沖是已知周期的時(shí)鐘信號(hào)時(shí),計(jì)數(shù)就成為定時(shí)。工作方式:8253中各通道可有6種可供選擇的工作方式, 以完成定時(shí)、計(jì)數(shù)或脈沖發(fā)生器等多種功能。本次實(shí)驗(yàn)中,采用了工作方式3(方波發(fā)生器)。方式0計(jì)數(shù)結(jié)束產(chǎn)生中斷 一次定時(shí)或計(jì)數(shù),重寫(xiě)初值,啟動(dòng)新一輪的計(jì)數(shù) 方式1可編程的單脈沖(單穩(wěn))觸發(fā)
4、器 GATE邊沿觸發(fā),啟動(dòng)新一輪計(jì)數(shù)方式2分頻器(速度波發(fā)生器) 具有計(jì)數(shù)初值重裝能力方式3方波發(fā)生器 具有計(jì)數(shù)初值重裝能力 方式4軟件觸發(fā)的選通信號(hào)發(fā)生器一次定時(shí),重寫(xiě)初值,啟動(dòng)新一輪的計(jì)數(shù) 方式5硬件觸發(fā)的選通信號(hào)發(fā)生器GATE邊沿觸發(fā)新一輪計(jì)數(shù)8253具體的控制字格式如下:l 芯片原理8255簡(jiǎn)介:一個(gè)并行輸入/輸出的LSI芯片,多功能的I/O器件,可作為CPU總線(xiàn)與外圍的接口。具有24個(gè)可編程設(shè)置的I/O口,即使3組8位的I/O口為PA口,PB口和PC口。它們又可分為兩組12位的I/O口,A組包括A口及C口(高4位,PC4PC7),B組包括B口及C口(低4位,PC0PC3)。A組可設(shè)置
5、為基本的I/O口,閃控(STROBE)的I/O閃控式,雙向I/O3種模式;B組只能設(shè)置為基本I/O或閃控式I/O兩種模式,而這些操作模式完全由控制寄存器的控制字決定。l 芯片原理8279簡(jiǎn)介:8279是可編程的鍵盤(pán)、顯示接口芯片。它既具有按鍵處理功能,又具有自動(dòng)顯示功能,在單片機(jī)系統(tǒng)中應(yīng)用很廣泛。8279內(nèi)部有鍵盤(pán)FIFO(先進(jìn)先出堆棧)/傳感器,雙重功能的8*8=64B RAM,鍵盤(pán)控制部分可控制8*8=64個(gè)按鍵或8*8陣列方式的傳感器。該芯片能自動(dòng)消抖并具有雙鍵鎖定保護(hù)功能。顯示RAM容量為16*8,即顯示器最大配置可達(dá)16位LED數(shù)碼顯示。 工作方式:(1)鍵盤(pán)工作方式。8279在鍵盤(pán)
6、工作方式時(shí),可設(shè)置為雙鍵互鎖方式和N鍵循回方式。雙鍵互鎖方式:若有兩個(gè)或多個(gè)鍵同時(shí)按下時(shí),不管按鍵先后順序如何,只能識(shí)別最后一個(gè)被釋放的鍵,并把該鍵值送入FIFO RAM中。N鍵循回方式:一次按下任意個(gè)鍵均可被識(shí)別,按鍵值按掃描次序被送入FIFO RAM中。(2)顯示方式。8279的顯示方式又可分為左端入口和右端入口方式。顯示數(shù)據(jù)只要寫(xiě)入顯示RAM,則可由顯示器顯示出來(lái),因此顯示數(shù)據(jù)寫(xiě)入顯示RAM的順序,決定了顯示的次序。左端入口方式即顯示位置從顯示器最左端1位(最高位)開(kāi)始,以后顯示的字符逐個(gè)向右順序排列;右端入口方式即顯示位置從顯示器最右端1位(最低位)開(kāi)始,已顯示的字符逐個(gè)向左移位。但無(wú)
7、論左右入口,后輸入的總是顯示在最右邊。l 硬件連線(xiàn)圖 l 硬件連線(xiàn)實(shí)物圖4、軟件主要模塊流程圖l 8255模塊流程圖l 8253模塊流程圖l 8279顯示模塊流程圖l 8279鍵盤(pán)輸入及判斷模塊流程圖 l 總流程圖5、源程序清單與注釋Z8279 EQU 212HD8279 EQU 210HCODE SEGMENT ASSUME CS:CODE DS:DATADATA SEGMENTA DB 1 DUP(?)B DB 1 DUP(?)C DB 1 DUP(?)DATA ENDSSTART: MOV DX,20BH MOV AL,00110111B OUT DX,AL MOV DX,208H MO
8、V AL,00H OUT DX,AL MOV AL,50H OUT DX,AL MOV DX,20BH MOV AL,01110111B OUT DX,AL MOV DX,209H MOV AL,00H OUT DX,AL MOV AL,02H OUT DX,AL ;8253初始化 MOV DX,203H MOV AL,10010000B OUT DX,AL ;8255初始化 L0: MOV A,09H ;設(shè)置計(jì)數(shù)初值9s MOV B,06H ;設(shè)置計(jì)數(shù)初值6s MOV C,03H ;設(shè)置計(jì)數(shù)初值3s L1: MOV DX,201H MOV AL,01111011B ;南北紅,東西綠 OUT
9、DX,AL MOV CL,A CALL SHOW ;調(diào)用顯示模塊 CALL LOK ;調(diào)用檢測(cè)上升沿子程序 CALL KZ ;調(diào)用鍵盤(pán)檢測(cè)及特殊鍵判斷子程序 DEC A CMP A,03H JNZ L1 PP: MOV DX,201H MOV AL,01110111B;南北紅,東西黃 OUT DX,AL MOV CL,A CALL SHOW ;調(diào)用顯示模塊 CALL LOK ;調(diào)用檢測(cè)上升沿子程序 CALL KZ ;調(diào)用鍵盤(pán)檢測(cè)及特殊鍵判斷子程序 DEC A CMP A,00H JNZ PP L4: MOV DX,201H MOV AL,11001111B ;南北綠,東西紅 OUT DX,AL
10、 MOV CL,B CALL SHOW ;調(diào)用顯示模塊 CALL LOK ;調(diào)用檢測(cè)上升沿子程序 CALL KZ ;調(diào)用鍵盤(pán)檢測(cè)及特殊鍵判斷子程序 DEC B CMP B,00H JNZ L4 L5: MOV DX,201H MOV AL,10101111B ;南北黃,東西紅 OUT DX,AL MOV CL,C CALL SHOW ;調(diào)用顯示模塊 CALL LOK ;調(diào)用檢測(cè)上升沿子程序 CALL KZ ;調(diào)用鍵盤(pán)檢測(cè)及特殊鍵判斷子程序 DEC C CMP C,00H JNZ L5 JMP L0 LOK PROC NEAR ;檢測(cè)上升沿子程序 L2:MOV DX,200H IN AL,DX
11、CMP AL,00H JNZ L2 L3:IN AL,DX CMP AL,01H JNZ L3 RETLOK ENDPSHOW PROC NEAR ;顯示模塊 MOV DX,Z8279 MOV AL,00H OUT DX,AL MOV AL,38H OUT DX,AL;初始化 8279 MOV DX,D8279 MOV AL,00H OUT DX,AL OUT DX,AL OUT DX,AL OUT DX,AL OUT DX,AL OUT DX,AL OUT DX,AL OUT DX,AL ; 熄滅8279數(shù)碼管 MOV AL,CL MOV AH,0 MOV DL,10 DIV DL ;AX/
12、DL=BL.BH MOV BL,AH ; 將余數(shù)(即秒的個(gè)位)放在BL中 MOV BH,AL ; 將商(即秒的十位)放在BH中 CALL TRANS ; 調(diào)用8279顯示秒的個(gè)位 MOV BL,BH CALL TRANS ; 調(diào)用8279顯示秒的十位 RETSHOW ENDPTRANS PROC NEAR ;數(shù)碼管顯示數(shù)值程序ONE:CMP BL,1JNZ TWOMOV AL,00000110BTWO:CMP BL,2JNZ TRIMOV AL,01011011BTRI:CMP BL,3JNZ FORMOV AL,01001111BFOR:CMP BL,4JNZ FIVMOV AL,01100
13、110BFIV:CMP BL,5JNZ SIXMOV AL,01101101BSIX:CMP BL,6JNZ SEVMOV AL,01111101BSEV:CMP BL,7JNZ EITMOV AL,00000111BEIT:CMP BL,8JNZ NINMOV AL,01111111BNIN:CMP BL,9JNZ ZROMOV AL,01101111BZRO:CMP BL,0JNZ SHWMOV AL,00111111BSHW:MOV DX,D8279OUT DX,ALRETTRANS ENDP KZ PROC NEAR ;鍵盤(pán)檢測(cè)及判斷模塊MOV DX,Z8279IN AL,DXAND
14、AL,0FHCMP AL,00HJE JIESHUMOV AL,40HOUT DX,ALMOV DX,D8279IN AL,DXNHDL: CMP AL,02DJNZ NLDHMOV DX,201H;8255BMOV AL,01111011B;南北紅東西綠OUT DX,ALCALL HUIFUNLDH:CMP AL,10DJNZ HHMOV DX,201H;8255BMOV AL,11001111B;南北綠東西紅OUT DX,ALCALL HUIFUHH:CMP AL,01DJNZ LLMOV DX,201H;8255BMOV AL,01101111B;東西南北全紅OUT DX,ALCALL
15、HUIFULL:CMP AL,09DJNZ YYMOV DX,201H;8255BMOV AL,11011011B;東西南北全綠OUT DX,ALCALL HUIFUYY:CMP AL,33DJNZ JIESHUMOV DX,201H;8255BMOV AL,10110111B;東西南北全黃OUT DX,ALCALL HUIFUJIESHU:RETKZ ENDPHUIFU PROC NEAR ;恢復(fù)鍵0判斷WAITS:MOV DX,Z8279IN AL,DXAND AL,0FHCMP AL,00HJE WAITSMOV AL,40HOUT DX,ALMOV DX,D8279IN AL,DXCM
16、P AL,03DJNZ WAITSRETHUIFU ENDPCODE ENDS END START6、問(wèn)題分析與解決方案l 8279數(shù)碼管顯示問(wèn)題分析:通過(guò)查閱大量8279資料初步對(duì)8279有了一定的了解,在8279數(shù)碼管顯示數(shù)字的過(guò)程中遇到了諸多問(wèn)題,如:數(shù)碼管控制字、顯示出錯(cuò)、RAM清零等重要操作無(wú)法正常實(shí)現(xiàn)。解決方案:采用鍵盤(pán)/顯示控制字00000000B,時(shí)鐘編程控制字00111000B,各數(shù)字對(duì)應(yīng)的LED八段顯示數(shù)據(jù);8279數(shù)據(jù)口和控制口混淆,數(shù)據(jù)輸出至控制口中而出現(xiàn)顯示錯(cuò)誤;清楚顯示RAM和FIFO后無(wú)法正常顯示數(shù)據(jù),采用輸出“00H”逐個(gè)LED熄滅的方式熄滅LED,達(dá)到清零目的
17、。l 8279鍵盤(pán)輸入及判斷問(wèn)題分析:判斷鍵盤(pán)是否有按鍵按下;怎樣判斷按下的按鍵對(duì)應(yīng)的鍵碼值;代碼冗余復(fù)雜特殊鍵按下后恢復(fù)問(wèn)題解決方案:讀8279控制口,讓得到的狀態(tài)字和0FH相與,其結(jié)果再用CMP和00H比較,以此判斷是否有鍵按下;通過(guò)測(cè)試每一個(gè)按鍵,確定各個(gè)鍵碼值;采用子程序并調(diào)用子程序的方式,重復(fù)利用了相同的代碼,減少了代碼的行數(shù);在進(jìn)入特殊狀態(tài)下不斷地循環(huán)檢測(cè)是否有恢復(fù)鍵“0鍵”按下。l 各芯片之間的組合問(wèn)題分析:調(diào)用子程序和循環(huán)的順序混亂解決方案:首先實(shí)現(xiàn)單個(gè)芯片的各項(xiàng)功能,再將每個(gè)芯片加入到總程序中,使總程序過(guò)程清晰明了。7、結(jié)論與體會(huì)經(jīng)過(guò)這次硬件課程設(shè)計(jì),我們對(duì)匯編語(yǔ)言和各個(gè)接口芯片8253、8255、8279有了更深入的了解。在實(shí)驗(yàn)中,通過(guò)和同學(xué)交流,開(kāi)闊了自己的思路,改進(jìn)了程序的方法,使程序明晰易懂、更加高效。在這次實(shí)驗(yàn)中,我們自主學(xué)習(xí)了8279芯片,并遇到了諸多問(wèn)題和困難。發(fā)現(xiàn)將書(shū)本中的理論性知識(shí)運(yùn)用在實(shí)際中還是有一定困難的,需要通過(guò)大量的閱讀資料
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 化服務(wù)交易結(jié)算協(xié)議模板2024
- 2024年度裝修項(xiàng)目協(xié)議樣本
- 2024蝦池養(yǎng)殖權(quán)承包協(xié)議示例
- 2024掛靠項(xiàng)目管理協(xié)議樣本集萃
- 2024年天然氣服務(wù)協(xié)議范例
- 文書(shū)模板-合同會(huì)簽申請(qǐng)書(shū)的審批流程
- 2024年汽車(chē)清潔保養(yǎng)服務(wù)協(xié)議
- 2024二手房交易三方協(xié)議范本
- 2024專(zhuān)業(yè)寵物貓狗買(mǎi)賣(mài)協(xié)議模板
- 2024家居公寓裝修設(shè)計(jì)與施工協(xié)議
- 出租房退房驗(yàn)收表
- 常用外窗及幕墻熱工性能參數(shù)
- 物業(yè)安全檢查記錄表(共7頁(yè))
- 個(gè)人住房情況承諾書(shū)
- 國(guó)學(xué)經(jīng)典文化PPT課件
- GB_T 14976-2012流體輸送用不銹鋼無(wú)縫鋼管
- 導(dǎo)數(shù)概念ppt課件
- 旋翼式水表的結(jié)構(gòu)和工作原理(共21頁(yè))
- Mathcad操作指南(2)
- 大水學(xué)校德育活動(dòng)記錄
- 七年級(jí)英語(yǔ)上培優(yōu)扶差記錄表
評(píng)論
0/150
提交評(píng)論