版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、成績 南京工程學(xué)院課程設(shè)計(jì)說明書(論文)題 目 帶數(shù)碼管顯示的交通燈模擬控制系統(tǒng)設(shè)計(jì) 課 程 名 稱 微機(jī)原理及應(yīng)用A 院 系 能源與動(dòng)力工程 專 業(yè) 熱能與動(dòng)力工程(生產(chǎn)過程自動(dòng)化)班 級(jí) 熱自101 學(xué) 生 姓 名 黃鄭 學(xué) 號(hào) 207100615 設(shè) 計(jì) 地 點(diǎn) 工程實(shí)踐中心8-216 指 導(dǎo) 教 師 陸京、徐懂理 設(shè)計(jì)起止時(shí)間:2012年12月3日至2012年12月7日 目 錄一、方案說明 2 1、硬件設(shè)計(jì) 2 1.1、硬件接線圖 2 1.2、主機(jī)接線說明3 2、軟件設(shè)計(jì) 3 2.1、程序流程圖 4 二.源程序清單 5三、調(diào)試現(xiàn)象 10四、心得體會(huì) 12五、參考文獻(xiàn) 13一、設(shè)計(jì)說明硬
2、件方面:8253產(chǎn)生1HZ的方波,脈沖到8259的IR1端,產(chǎn)生中斷,調(diào)中斷服務(wù)子程序。在加入緊急車道后,單脈沖()連到8259的IRO端,產(chǎn)生一個(gè)高級(jí)的中斷請(qǐng)求信號(hào)。軟件方面:主程序先對(duì)各個(gè)硬件初始化,在開CPU中斷,然后空操作,等待中斷。執(zhí)行低級(jí)中斷(IR1)時(shí),8255的PA口負(fù)責(zé)選數(shù)碼管,PB口負(fù)責(zé)顯示數(shù)字,用查表法可查到09的數(shù)碼管編碼。采用循環(huán)掃描方法,人眼即可看到連續(xù)的二位數(shù)。當(dāng)?shù)褂?jì)時(shí)減到零時(shí),對(duì)紅綠燈取反。若手動(dòng)上下?lián)軇?dòng)單脈沖()一次,則產(chǎn)生一個(gè)高級(jí)中斷(IR0),程序轉(zhuǎn)而執(zhí)行此中斷處理程序,處理完后返回繼續(xù)執(zhí)行低級(jí)中斷(IR1)。1、 硬件設(shè)計(jì) 1.1、硬件接線圖1.2連線說
3、明:C5區(qū):CS、A0、A1A3區(qū):CS3、A0、A1C5區(qū):OUT0B3區(qū):CLK1C5區(qū):GATE0、GATE1C1區(qū):VCCC5區(qū):CLK0B2區(qū):2MC5區(qū):OUT1B3區(qū):IR1B3區(qū):CS、A0A3區(qū):CS2、A0 B3區(qū):INT、INTAES8688:INTR、INTAB3區(qū):IR0B2區(qū):單脈沖() B4區(qū):CS、A0、A1A3區(qū):CS1、A0、A1 B4區(qū):PA口、PB口G5區(qū):C口、B口B4區(qū):PC口 G6區(qū):JP65(LED燈)2、軟件設(shè)計(jì)1、程序流程圖2. 源程序清單IO8259_0 EQU 0E000H ;8259地址偶地址端IO8259_1 EQU 0E001H ;
4、8259地址奇地址端 K8255A EQU 0F000H ;8255的A口、B口、C口地址K8255B EQU 0F001HK8255C EQU 0F002HK8255K EQU 0F003HADD8253_0 EQU 0D000H ;8253計(jì)數(shù)通道1#、2#、3#和控制口地址ADD8253_1 EQU 0D001HADD8253_2 EQU 0D002HADD8253_C EQU 0D003HCOUNTER EQU 60H ;倒計(jì)時(shí)數(shù)RED_ON EQU 0CCH ;紅燈亮RED_OFF EQU 0FFH ;紅燈滅E_W EQU 0C3H ;東西方向通行DATA SEGMENTTAB DB
5、 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FHCOUNT DB ?SCAN DW 485 ;掃描次數(shù)DATA ENDSSTCK SEGMENT STACK DW 64 DUP(?)STCK ENDSCODE SEGMENTASSUME CS:CODE , DS:DATA,SS:STCKSTART:MOV AX,DATA MOV DS,AX MOV ES,AX NOP MOV DX,K8255K ;寫8255控制字,A,B,C均為輸出,方式0 MOV AL,80H OUT DX,ALSTART1: MOV DX,K8255C ;C口輸出,控制燈 MOV CX,4
6、FLASH: MOV AL,RED_ON ;紅燈亮 OUT DX,AL CALL DELAY ;調(diào)延時(shí) MOV AL,RED_OFF ;紅燈滅 OUT DX,AL CALL DELAY LOOP FLASH START2: MOV DX,ADD8253_C ;寫8253控制字 MOV AL,37H ;0#計(jì)數(shù)器,讀寫16位低高字節(jié),方式三,BCD碼 OUT DX,AL MOV AX,1000H ;寫0#的計(jì)數(shù)初值1000H,根據(jù)輸入設(shè)定2M=1000H*2000 MOV DX,ADD8253_0 OUT DX,AL MOV AL,AH OUT DX,AL MOV DX,ADD8253_C ;寫
7、8253控制字 MOV AL,77H ;1#計(jì)數(shù)器,讀寫16位低高字節(jié),方式三,BCD碼 OUT DX,AL MOV AX,2000H ;寫1#計(jì)數(shù)初值2000H,根據(jù)輸入設(shè)定,方波頻率1HZ MOV DX,ADD8253_1 OUT DX,AL MOV AL,AH OUT DX,AL MOV COUNT,COUNTER ;寫計(jì)數(shù)值(紅綠燈變換的間隔時(shí)間) CALL Init8259 ;調(diào)8259初始化子程序 CALL WriIntver_8 ;調(diào)寫中斷向量表子程序 CALL WriIntver_9 ;調(diào)寫中斷向量表子程序 MOV CL,E_W MOV AL,CL MOV DX,K8255C
8、OUT DX,AL STI NOPSTART3: JMP $ ;給出中斷以外CPU的工作Init8259 PROC NEAR ;8259初始化子程序 MOV DX,IO8259_0 ;寫ICW1,邊沿觸發(fā),單片,需寫ICW4 MOV AL,13H OUT DX,AL MOV DX,IO8259_1 ;寫ICW2,確定中斷類型號(hào) MOV AL,08H OUT DX,AL MOV AL,09H ;寫ICW4 OUT DX,AL MOV AL,0FCH ;寫OCW1,除IR0、IR1全屏蔽 OUT DX,AL RETInit8259 ENDPWriIntver_9 PROC NEAR ;寫中斷向量表
9、子程序 PUSH ES MOV AX,0 MOV ES,AX MOV DI,24H ;中斷類型號(hào)9,對(duì)應(yīng)24H,25H,26H,27H四個(gè)單元 LEA AX,INT_9 ;取中斷服務(wù)程序IP STOSW MOV AX,CS ;取中段服務(wù)程序CS STOSW POP ES RETWriIntver_9 ENDPWriIntver_8 PROC NEAR ;寫中斷向量表子程序 PUSH ES MOV AX,0 MOV ES,AX MOV DI,20H ;中斷類型號(hào)8,對(duì)應(yīng)20H,21H,22H,23H四個(gè)單元 LEA AX,INT_8 ;取中斷服務(wù)程序IP STOSW MOV AX,CS ;取中段
10、服務(wù)程序CS STOSW POP ES RETWriIntver_8 ENDPINT_9:MOV AL,COUNT SUB AL,01H DAS MOV COUNT,AL ;中斷服務(wù)程序 PUSH AX PUSH DX PUSH BX PUSH CX PUSH SCAN ;保護(hù)循環(huán)值,否則取數(shù)碼管顯示會(huì)破壞LOO: MOV AL,55H MOV DX, K8255A OUT DX,AL MOV AL,COUNT ;選高位數(shù)碼管 MOV AH,AL ;暫存AH MOV CL,4 SHR AL,CL LEA BX,TAB XLAT ;十進(jìn)制轉(zhuǎn)數(shù)碼管編碼 MOV DX, K8255B OUT DX,
11、AL ;顯數(shù) CALL DL1ms ;調(diào)延時(shí) MOV AL,0 OUT DX,AL ;清除 MOV AL,0AAH MOV DX, K8255A OUT DX,AL ;選低位數(shù)碼管 MOV AL,AH SHL AL,CL SHR AL,CL XLAT ;十進(jìn)制轉(zhuǎn)數(shù)碼管編碼 MOV DX, K8255B OUT DX,AL ;顯數(shù) CALL DL1ms MOV AL,0 OUT DX,AL ;清除 DEC SCAN CMP SCAN,0 JNZ LOO ;循環(huán)掃描 POP SCAN POP CX CMP COUNT,0 JNZ STOP ;計(jì)數(shù)到零則重新置數(shù),并將燈取反,未到零則直接結(jié)束中斷子程
12、序 MOV COUNT,COUNTER NOT CL MOV AL,CL MOV DX,K8255C OUT DX,ALSTOP: MOV DX,IO8259_0 ;結(jié)束中斷服務(wù),寫OCW2,給8259送EOI命令,LSR1清零 MOV AL,20H OUT DX,AL POP BX POP DX POP AX IRETINT_8:PUSH DX PUSH AX PUSH CX MOV DX,K8255C ;C口輸出,控制燈 MOV CX,4A: MOV AL,RED_ON ;紅燈亮 OUT DX,AL CALL DELAY ;調(diào)延時(shí) MOV AL,RED_OFF ;紅燈滅 OUT DX,AL
13、 CALL DELAY LOOP A MOV DX,IO8259_0 ;結(jié)束中斷服務(wù),寫OCW2,給8259送EOI命令,LSR1清零 MOV AL,20H OUT DX,AL POP CX MOV DX,K8255C MOV AL,CL OUT DX,AL POP AX POP DX IRETDELAY PROC;延時(shí)子程序 PUSH BX PUSH CX MOV BX,04HDELAY1:MOV CX,0FFFFH LOOP $ DEC BX JNZ DELAY1 POP CX POP BX RET DELAY ENDP DL1ms PROC NEAR PUSH AX PUSH CX MO
14、V AX,0100H MOV CX,AX LOOP $ POP CX POP AX RETDL1ms ENDPCODE ENDS END START 三、調(diào)試現(xiàn)象1、程序截圖 2調(diào)試現(xiàn)象程序調(diào)試時(shí),交通信號(hào)燈系統(tǒng)初始狀態(tài)為所有紅燈閃爍4次,數(shù)碼管此時(shí)不顯示;系統(tǒng)初始狀態(tài)之后東西向車行道綠燈亮,南北向車道紅燈亮,此時(shí)數(shù)碼管從60秒倒計(jì)時(shí);當(dāng)數(shù)碼管數(shù)字減為0時(shí),東西向、南北向紅綠燈交換亮,即南北向車行道綠燈亮,東西向車道紅燈亮,此時(shí)數(shù)碼管重新從60秒開始計(jì)數(shù),數(shù)碼管數(shù)字減為0秒后,紅綠燈再次交換,如此循環(huán)重復(fù)。當(dāng)?shù)缆钒l(fā)生緊急狀況時(shí),可撥單脈沖,使調(diào)試狀態(tài)重新進(jìn)入初始化,此時(shí)數(shù)碼管停止計(jì)時(shí)(滅),初
15、始化狀態(tài)結(jié)束后,繼續(xù)從剛剛被停止時(shí)刻開始計(jì)時(shí),紅綠燈狀態(tài)仍為停止時(shí)刻的狀態(tài)。四、心得體會(huì)一個(gè)星期的微機(jī)原理課程設(shè)計(jì)終于結(jié)束了。在整整一星期的日子里,可以說得是苦盡甘來,從剛開始的完全迷惑到最后的豁然開朗,真是經(jīng)歷了很多,但是卻讓我們學(xué)到很多的東西,不僅可以鞏固了課上所學(xué)過的理論知識(shí),而且學(xué)到了很多在書本上所沒有學(xué)到過的知識(shí)。以前在上課的時(shí)候,老師經(jīng)常強(qiáng)調(diào)在寫一個(gè)程序的時(shí)候,一定要事先把程序原理方框圖畫出來,但是我開始總覺得這樣做沒必要,很浪費(fèi)時(shí)間。但是,這次課程設(shè)計(jì)完全改變了我以前的那種錯(cuò)誤的認(rèn)識(shí),以前我接觸的那些程序都是很短、很基礎(chǔ)的,但是在課程設(shè)計(jì)中碰到的那些需要很多代碼才能完成的任務(wù),畫
16、程序方框圖是很有必要的。因?yàn)橥ㄟ^程序方框圖,在做設(shè)計(jì)的過程中,我們每一步要做什么,每一步要完成什么任務(wù)都有一個(gè)很清楚的思路,而且在程序測試的過程中也有利于查錯(cuò)。 通過這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論,從而提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。在設(shè)計(jì)的過程中遇到問題,可以說得是困難重重,難免會(huì)遇到過各種各樣的問:調(diào)試程序時(shí),發(fā)現(xiàn)只有初始化狀態(tài)顯示,知道了中斷程序進(jìn)不去,就開始查中斷程序,最后查出原來是沒寫STI等待中斷,所以中斷才進(jìn)不去。在檢查錯(cuò)誤的過程中發(fā)現(xiàn)會(huì)自己的不足之處,發(fā)現(xiàn)自己對(duì)以前所學(xué)過的知識(shí)理解得不夠深刻,掌握得不夠牢固,同時(shí)對(duì)知識(shí)的理解和接受能力還不是太強(qiáng)。這次課程設(shè)計(jì)任務(wù)終于順利完成了,在設(shè)計(jì)中遇到了很多問題,最后在自己的努力下以及與同學(xué)之間和老師的探討下,終于一個(gè)一個(gè)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 酒店改造合同范例范例
- 戶外汽燈租賃合同范例
- 鋪位 租賃合同范例
- 快遞員合作合同范例
- 家具買賣貸款合同范例
- 市政材料供應(yīng)合同范例
- 含司機(jī)租車合同范例
- 鞋面批發(fā)采購合同范例
- 藥品合同范例格式
- 裝修固定總價(jià)合同范例
- 2024-2025學(xué)年高二上學(xué)期期末數(shù)學(xué)試卷(提高篇)(含答案)
- 2025年安全生產(chǎn)目標(biāo)實(shí)施計(jì)劃
- 福建百校2025屆高三12月聯(lián)考?xì)v史試卷(含答案解析)
- 2024年山西省建筑安全員《B證》考試題庫及答案
- 2023年益陽市安化縣招聘鄉(xiāng)鎮(zhèn)衛(wèi)生院護(hù)理人員筆試真題
- 《基于PLC的智能交通燈控制系統(tǒng)設(shè)計(jì)》10000字(論文)
- 首都經(jīng)濟(jì)貿(mào)易大學(xué)《微積分》2021-2022學(xué)年第一學(xué)期期末試卷
- 人音版音樂七年級(jí)上冊(cè)《父親的草原母親的河》課件
- 2024年度短視頻內(nèi)容創(chuàng)作服務(wù)合同3篇
- 介入治療并發(fā)癥
- 鑄牢中華民族共同體意識(shí)-形考任務(wù)1-國開(NMG)-參考資料
評(píng)論
0/150
提交評(píng)論