




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、微機課程設(shè)計題 目 帶數(shù)碼管顯示的交通燈模擬控制系統(tǒng)設(shè)計 課 程 名 稱 微機原理及應(yīng)用a 院 系 物理與電氣工程學(xué)院 專 業(yè) 自動化班 級 08級(2)班 學(xué) 生 姓 名 學(xué) 號 指 導(dǎo) 教 師 課題名稱 帶數(shù)碼管顯示的交通燈模擬控制系統(tǒng)設(shè)計一、概述在star es598pci實驗系統(tǒng)的基礎(chǔ)上,應(yīng)用可編程并行接口8255、定時/計數(shù)器8253、可編程中斷控制器8259等i/o接口芯片,設(shè)計一個十字路口交通信號燈模擬控制系統(tǒng)。二、設(shè)計目的通過設(shè)計一個十字路口交通燈系統(tǒng)掌握8255、8253、8259等接口芯片的編程和應(yīng)用方法,做到理論聯(lián)系實際。三、設(shè)計要求要求繪制流程圖、編寫源程序,并在實驗系
2、統(tǒng)上調(diào)試通過程序。四、設(shè)計內(nèi)容1、十字路口交通信號燈設(shè)置某十字路口交通信號燈系統(tǒng)在4個路口均裝設(shè)紅、綠2個燈,并裝設(shè)數(shù)碼管顯示倒計時。圖1 交通信號燈設(shè)置實驗時用led(發(fā)光二極管)代替十字路口的紅綠燈。2、交通信號燈亮滅規(guī)律交通信號燈系統(tǒng)初始狀態(tài)為所有紅燈閃爍n1秒鐘(不必在數(shù)碼管顯示);之后東西向車行道綠燈亮,車輛放行n秒鐘,此時南北向車行道紅燈亮,之后轉(zhuǎn)為南北向車行道放行n秒鐘,如此循環(huán)重復(fù)。要求數(shù)碼管能夠顯示倒計時。參數(shù)選擇:n=20s/25s85s/90s(每隔5s取一個秒數(shù))n110s,閃爍次數(shù)為38次每組自行選擇n、n1(及閃爍次數(shù))。3、參考方案采用8255、8253、8259
3、組成系統(tǒng),采用8253產(chǎn)生定時,運用8259采用中斷法編寫程序。如果加入緊急車輛通過功能或其他任何先進功能,可根據(jù)具體情況加創(chuàng)新分。五、設(shè)計報告要求要求在報告中詳細敘述所選方案的原理、特點及評價,給出硬件原理圖、程序流程、源程序、調(diào)試結(jié)果描述(需安排實驗系統(tǒng)運行照片)。報告采用電力工程學(xué)院統(tǒng)一的標準格式書寫。最終上交的報告內(nèi)容包括:1、任務(wù)書、2設(shè)計內(nèi)容(正文)、3、心得體會一、設(shè)計說明硬件方面:8253產(chǎn)生1hz的方波,脈沖到8259的ir1端,產(chǎn)生中斷,調(diào)中斷服務(wù)子程序。在加入緊急車道后,單脈沖()連到8259的iro端,產(chǎn)生一個高級的中斷請求信號。軟件方面:主程序先對各個硬件初始化,在開
4、cpu中斷,然后空操作,等待中斷。執(zhí)行低級中斷(ir1)時,8255的pa口負責(zé)選數(shù)碼管,pb口負責(zé)顯示數(shù)字,用查表法可查到09的數(shù)碼管編碼。采用循環(huán)掃描方法,人眼即可看到連續(xù)的二位數(shù)。當(dāng)?shù)褂嫊r減到零時,對紅綠燈取反。若手動上下?lián)軇訂蚊}沖()一次,則產(chǎn)生一個高級中斷(ir0),程序轉(zhuǎn)而執(zhí)行此中斷處理程序,處理完后返回繼續(xù)執(zhí)行低級中斷(ir1)。1、 硬件設(shè)計 1.1、硬件接線圖2. 源程序清單io8259_0 equ 0e000h ;8259地址偶地址端io8259_1 equ 0e001h ;8259地址奇地址端 k8255a equ 0f000h ;8255的a口、b口、c口地址k8255
5、b equ 0f001hk8255c equ 0f002hk8255k equ 0f003hadd8253_0 equ 0d000h ;8253計數(shù)通道1#、2#、3#和控制口地址add8253_1 equ 0d001hadd8253_2 equ 0d002hadd8253_c equ 0d003hcounter equ 60h ;倒計時數(shù)red_on equ 0cch ;紅燈亮red_off equ 0ffh ;紅燈滅e_w equ 0c3h ;東西方向通行data segmenttab db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fhcount db ?
6、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,4flash: mov al,red_on ;紅燈亮 out dx,al call delay ;調(diào)延
7、時 mov al,red_off ;紅燈滅 out dx,al call delay loop flash start2: mov dx,add8253_c ;寫8253控制字 mov al,37h ;0#計數(shù)器,讀寫16位低高字節(jié),方式三,bcd碼 out dx,al mov ax,1000h ;寫0#的計數(shù)初值1000h,根據(jù)輸入設(shè)定2m=1000h*2000 mov dx,add8253_0 out dx,al mov al,ah out dx,al mov dx,add8253_c ;寫8253控制字 mov al,77h ;1#計數(shù)器,讀寫16位低高字節(jié),方式三,bcd碼 out d
8、x,al mov ax,2000h ;寫1#計數(shù)初值2000h,根據(jù)輸入設(shè)定,方波頻率1hz mov dx,add8253_1 out dx,al mov al,ah out dx,al mov count,counter ;寫計數(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 out dx,al sti nopstart3: jmp $ ;給出中斷以外cpu的工作init82
9、59 proc near ;8259初始化子程序 mov dx,io8259_0 ;寫icw1,邊沿觸發(fā),單片,需寫icw4 mov al,13h out dx,al mov dx,io8259_1 ;寫icw2,確定中斷類型號 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 ;寫中斷向量表子程序 push es mov ax,0 mov es,ax mov di,24h ;中斷類型號9,
10、對應(yīng)24h,25h,26h,27h四個單元 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 ;中斷類型號8,對應(yīng)20h,21h,22h,23h四個單元 lea ax,int_8 ;取中斷服務(wù)程序ip stosw mov ax,cs ;取中段服務(wù)程序cs stosw pop es retwriintver_8 endpint_9:mov a
11、l,count sub al,01h das mov count,al ;中斷服務(wù)程序 push ax push dx push bx push cx push scan ;保護循環(huán)值,否則取數(shù)碼管顯示會破壞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 ;十進制轉(zhuǎn)數(shù)碼管編碼 mov dx, k8255b out dx,al ;顯數(shù) call dl1ms ;調(diào)延時 mov al,0 out dx,al ;清除 mov
12、al,0aah mov dx, k8255a out dx,al ;選低位數(shù)碼管 mov al,ah shl al,cl shr al,cl xlat ;十進制轉(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 ;計數(shù)到零則重新置數(shù),并將燈取反,未到零則直接結(jié)束中斷子程序 mov count,counter not cl mov al,cl mov dx,k8255c
13、 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)延時 mov al,red_off ;紅燈滅 out dx,al call delay loop a mov dx,io8259_0 ;結(jié)束中斷服務(wù),寫ocw2,給
14、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;延時子程序 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 mov 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)試時,交通信號燈系統(tǒng)初始狀態(tài)為所有紅燈閃爍4次,數(shù)碼管此時不顯示;系統(tǒng)初始狀態(tài)之后東西向車行道綠燈亮,南北向車道紅燈亮,此時數(shù)碼管從60秒倒計時;當(dāng)數(shù)碼管數(shù)字減為0時,東西向、南北向紅綠燈交換亮,即南北向車行道綠燈亮,東西向車道紅燈亮,此時數(shù)碼管重新從60秒開始計數(shù),數(shù)碼管數(shù)字減為0秒后,紅綠燈再次交換,如此循環(huán)重復(fù)。當(dāng)?shù)缆钒l(fā)生緊急狀況時,可撥單脈沖,使調(diào)試狀態(tài)重新進入初始化,此時數(shù)碼管停止計時(滅),初始化狀態(tài)結(jié)束后,繼續(xù)從剛剛
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度出租房屋意外事故責(zé)任界定與房東無關(guān)協(xié)議
- 第二單元 地表形態(tài)的塑造(單元教學(xué)設(shè)計)高二地理第一學(xué)期同步備考系列(人教版2019選擇性必修1)
- 2025年度銀行資金監(jiān)管與金融業(yè)務(wù)流程優(yōu)化協(xié)議
- 第12課 自然資源的回收與利用(教學(xué)設(shè)計)-2023-2024學(xué)年六年級科學(xué)下冊同步備課(青島版)
- 滬科版 信息技術(shù) 必修1 2.3.2 網(wǎng)絡(luò)信息下載 教學(xué)設(shè)計
- 2025-2030年中國刀形轉(zhuǎn)換隔離器項目投資可行性研究分析報告
- 2025年齒輪加工機床項目發(fā)展計劃
- 第8課 三國至隋唐的文化 教學(xué)設(shè)計-2023-2024學(xué)年高中歷史統(tǒng)編版(2019)必修中外歷史綱要上冊
- 單元主題-生物體的結(jié)構(gòu)層次 教學(xué)設(shè)計
- 刨花板塊行業(yè)行業(yè)發(fā)展趨勢及投資戰(zhàn)略研究分析報告
- 研學(xué)旅行概論教學(xué)課件匯總完整版電子教案
- 控股集團公司組織架構(gòu)圖.docx
- DB11_T1713-2020 城市綜合管廊工程資料管理規(guī)程
- 最常用2000個英語單詞_(全部標有注釋)字母排序
- 氣管套管滑脫急救知識分享
- 特種設(shè)備自檢自查表
- 省政府審批單獨選址項目用地市級審查報告文本格式
- 往復(fù)式壓縮機安裝方案
- 漢字的演變甲骨文PPT課件
- 在銀行大零售業(yè)務(wù)工作會議上的講話講解學(xué)習(xí)
- 古代傳說中的藝術(shù)形象-
評論
0/150
提交評論