




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 課課 程程 設(shè)設(shè) 計(jì)計(jì) 報(bào)報(bào) 告告 課程設(shè)計(jì)名稱(chēng):微機(jī)系統(tǒng)綜合課程設(shè)計(jì)微機(jī)系統(tǒng)綜合課程設(shè)計(jì) 課程設(shè)計(jì)題目:模擬電風(fēng)扇動(dòng)作模擬電風(fēng)扇動(dòng)作 -i- 目目 錄錄 第第 1 章章 總體設(shè)計(jì)方案總體設(shè)計(jì)方案.1 1.1 設(shè)計(jì)原理 .1 1.2 設(shè)計(jì)思路 .1 1.3 實(shí)驗(yàn)環(huán)境 .2 第第 2 章章 詳細(xì)設(shè)計(jì)方案詳細(xì)設(shè)計(jì)方案.3 2.1 硬件電路設(shè)計(jì) .3 2.2 主程序設(shè)計(jì) .4 2.3 功能選擇模塊的設(shè)計(jì)與實(shí)現(xiàn) .5 第第 3 章章 結(jié)果測(cè)試及分析結(jié)果測(cè)試及分析.6 3.1 結(jié)果測(cè)試 .6 3.2 結(jié)果分析.6 參考文獻(xiàn)參考文獻(xiàn).7 附附 錄錄.8 -1- 第 1 章 總體設(shè)計(jì)方案 1.1 設(shè)計(jì)原理
2、設(shè)計(jì)原理 利用芯片 8259,8255,8253,8279,分別控制中斷,彩色發(fā)光二極管,時(shí)鐘, 和 led 顯示。用受 8253 控制的 8259 給 8255 和 8279 產(chǎn)生每秒鐘一次的中斷,控 制彩色發(fā)光二極管和 led 的顯示 1.2 設(shè)計(jì)思路設(shè)計(jì)思路 首先需要一個(gè)總開(kāi)關(guān),用來(lái)控制電風(fēng)扇的開(kāi)關(guān),可以用 8255 的輸入端接收 這一信號(hào),信號(hào)為時(shí)進(jìn)入循環(huán),此時(shí)彩色發(fā)光二極管通過(guò)紅綠色燈顯示風(fēng)扇的 轉(zhuǎn)動(dòng)效果,不為時(shí)執(zhí)行下一步。 其次需要實(shí)現(xiàn)的功能是三級(jí)風(fēng)速的變換,可以設(shè)計(jì)三個(gè)變換延時(shí)的子程序, 并根據(jù)鍵盤(pán)輸入的不同來(lái)分別調(diào)用這三個(gè)步驟。 再次是要實(shí)現(xiàn)定時(shí)功能,用 8253 和 8259
3、 實(shí)現(xiàn)這一功能并不困難,當(dāng)時(shí)間減 為零時(shí),向 8255 的 al 中輸入 o6ah,使彩色發(fā)光二極管顯示初始化。 還有就是彩色發(fā)光二極管的顯示問(wèn)題,只需將 8255 中控制彩燈顯示的數(shù)據(jù) 起始值設(shè)為 01101010,然后循環(huán)左移兩位即可。 (1) 提出方案提出方案 總開(kāi)關(guān)是用來(lái)控制風(fēng)扇的啟動(dòng)停止的,所以只需有兩種狀態(tài),即開(kāi)和關(guān),所 以,我選擇用實(shí)驗(yàn)箱右下角的開(kāi)關(guān)來(lái)實(shí)現(xiàn)這以功能。為了能顯示風(fēng)扇的轉(zhuǎn)動(dòng),我 選用 8255 和實(shí)驗(yàn)箱右上角的彩燈來(lái)顯示風(fēng)扇的轉(zhuǎn)動(dòng)。為了實(shí)現(xiàn)定時(shí)功能,我選 用 8253 定時(shí),8259 產(chǎn)生中斷,用中斷程序來(lái)控制定時(shí)。由于定時(shí)時(shí)要能顯示時(shí) 間及風(fēng)扇轉(zhuǎn)動(dòng)時(shí)要有風(fēng)速等一些功
4、能的選擇,所以還需要 8279 鍵盤(pán)顯示接口芯 片。 (2) 方案論證方案論證 1)用 8255 和彩燈模擬風(fēng)扇的轉(zhuǎn)動(dòng),所以,可以將 8255 的 b 口設(shè)為工作在方式 -2- 0,輸出狀態(tài),然后通過(guò)輸出不同二進(jìn)制數(shù)來(lái)控制彩燈的紅綠顯示,通過(guò)循環(huán) 移位使彩燈循環(huán)顯示來(lái)實(shí)現(xiàn)風(fēng)扇轉(zhuǎn)動(dòng)的模擬。 2)用右下角的開(kāi)關(guān)控制風(fēng)扇的轉(zhuǎn)動(dòng)與停止,所以,可將 8255a 口設(shè)為方式 0, 輸入狀態(tài),來(lái)讀取開(kāi)關(guān)的狀態(tài),然后在程序中判斷輸入的是 1 還是 0,進(jìn)而 控制風(fēng)扇的轉(zhuǎn)動(dòng)與停止。 3)為了實(shí)現(xiàn)定時(shí)的功能,可以用 8253 的分頻功能,將輸入的脈沖信號(hào)分頻,以 輸出 1hz 的脈沖信號(hào),然后輸入到 8259 的
5、 int0 以產(chǎn)生周期為 1s 的終端, 即每秒鐘進(jìn)一次中斷,在中斷服務(wù)程序中來(lái)實(shí)現(xiàn)時(shí)間的遞減,當(dāng)減到 0 時(shí)就 將風(fēng)扇停止,這樣就實(shí)現(xiàn)了定時(shí)功能了。 4)為了實(shí)現(xiàn)三級(jí)風(fēng)速的選擇和定時(shí)功能、定時(shí)時(shí)間的變化顯示等功能,需要 8279 的鍵盤(pán)顯示功能,在鍵盤(pán)上設(shè)置三個(gè)鍵分別控制三級(jí)風(fēng)速,在設(shè)置一個(gè) 按鍵來(lái)控制定時(shí)功能的選擇,當(dāng)按下定時(shí)功能鍵后,還需要鍵盤(pán)的數(shù)字鍵來(lái) 實(shí)現(xiàn)定時(shí)時(shí)間的設(shè)定。最后就是用數(shù)碼管顯示時(shí)間的變化了。 1.3 實(shí)驗(yàn)環(huán)境實(shí)驗(yàn)環(huán)境 硬件環(huán)境:aedk 實(shí)驗(yàn)箱,pc 機(jī)。 軟件環(huán)境:lca88et 應(yīng)用軟件。 -3- 第 2 章 詳細(xì)設(shè)計(jì)方案 2.1 硬件電路設(shè)計(jì)硬件電路設(shè)計(jì) 硬件電路
6、由鍵盤(pán)顯示接口芯片 8279 構(gòu)成,如圖 2.1 所示。 pa0 pb0 pb7 cs 8279 clk1 out1 gate1 8253 clk0 out0 cs gate0 int0 8259 cs 200207 210217 220227 22822f dl8 dl1 cs pc0 pc3 脈沖源 圖圖 2.1 硬件電路連線圖硬件電路連線圖 8279 是可編程設(shè)置型鍵盤(pán)/顯示芯片,其特點(diǎn)是:(1)可同時(shí)進(jìn)行鍵盤(pán)掃描及文字 顯示;(2)鍵盤(pán)掃描模式;(3)傳感器掃描模式;(4)激發(fā)輸入模式;(5)8 乘 8 鍵 盤(pán) fifo;(6)具有接點(diǎn)消除抖動(dòng),2 鍵鎖定及 n 鍵依次讀出模式;(7)
7、雙排 8 位數(shù) 或雙排 16 位數(shù)顯示器;(8)右邊進(jìn)入或左邊進(jìn)入,16 字符或 8 字符顯示。8255 的 a 口工作在方式 0,輸入;b 口工作在方式 0,輸出;c 口工作在方式 0,輸出; 8253 將脈沖源分頻,產(chǎn)生周期為 1s 的脈沖信號(hào),驅(qū)動(dòng) 8259 產(chǎn)生周期為 1s 的中 斷。8255、8259、8253、8279 的端口地址分別接 210h-217h、220h-227h、200h- k1 -4- 207h、228h-22fh。 2.2 主程序設(shè)計(jì)主程序設(shè)計(jì) 開(kāi)始 各芯片初始化 8255清零 開(kāi)關(guān)為開(kāi)? 輸入為a? 輸入為b? 輸入為c? 輸入為d? 變風(fēng)速為1 顯示 變風(fēng)速為
8、3 顯示 變風(fēng)速為2 顯示 輸入時(shí)間 輸入為d? 計(jì)時(shí) 時(shí)間為0? al清零 結(jié)束 y n n n n y y y y y y n n n -5- 圖圖 2.2 主程序流程圖主程序流程圖 2.3 功能選擇模塊的設(shè)計(jì)與實(shí)現(xiàn)功能選擇模塊的設(shè)計(jì)與實(shí)現(xiàn) 開(kāi)始 計(jì)時(shí)為0? 秒位為0 秒位減1 10秒位為0? 10秒位減1 分位為0? 分位減1 10分位為0? 10分位減1 恢復(fù)寄存器 數(shù)碼管顯示 結(jié)束 秒位變?yōu)? 10秒位變?yōu)? 分位變?yōu)? 10分位變?yōu)? 保存寄存器 y n y y y y n n n n -6- 圖圖 2.3.1 功能選擇模塊流程圖功能選擇模塊流程圖 沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 第
9、 3 章 結(jié)果測(cè)試及分析 -7- 第 3 章 結(jié)果測(cè)試及分析 3.1 結(jié)果測(cè)試結(jié)果測(cè)試 編譯并連接程序,然后全速運(yùn)行,在數(shù)碼管上就顯示計(jì)時(shí)器的時(shí)間,開(kāi)始時(shí) 是全 0。此時(shí)雙色彩燈是初始狀態(tài),即只有一個(gè)燈是紅的,其余三個(gè)燈都是綠色。 然后,將開(kāi)關(guān) k1 向上扳去,時(shí) 8255 的 pa0 口輸入高電平,此時(shí)發(fā)現(xiàn)雙色彩燈 還是循環(huán)亮紅燈,并且只有一個(gè)燈是紅色的,其余都是綠色,這樣,當(dāng)以一定的 速度循環(huán)點(diǎn)亮四個(gè)燈,就會(huì)模擬出風(fēng)扇的轉(zhuǎn)動(dòng)了。在風(fēng)扇轉(zhuǎn)動(dòng)時(shí),按下鍵盤(pán)上的 a、b、c 鍵,則彩燈會(huì)分別以不同的速度循環(huán)點(diǎn)亮紅色,這樣就實(shí)現(xiàn)了通過(guò)鍵盤(pán) 實(shí)現(xiàn)三級(jí)風(fēng)速的選擇功能了。當(dāng)風(fēng)扇在某一風(fēng)速下轉(zhuǎn)動(dòng)時(shí),按下 d
10、 鍵,則進(jìn)入定 時(shí)狀態(tài),接著只需按下鍵盤(pán)上的數(shù)字鍵,設(shè)定好定時(shí)的時(shí)間,然后再按下 d 鍵, 風(fēng)扇就將在設(shè)定的時(shí)間內(nèi)轉(zhuǎn)動(dòng),并且在數(shù)碼管上顯示時(shí)間的變化,逐漸減少,當(dāng) 減到 0 時(shí),風(fēng)扇就將停止轉(zhuǎn)動(dòng)。這就是定時(shí)功能的實(shí)現(xiàn)。 3.2結(jié)果分析結(jié)果分析 開(kāi)始運(yùn)行時(shí),發(fā)現(xiàn)雙色彩燈并不是按理想順序逐漸點(diǎn)亮紅色,后來(lái),檢查程 序發(fā)現(xiàn)并沒(méi)有錯(cuò),最后,檢查硬件連線時(shí)發(fā)現(xiàn),8255b 口得導(dǎo)線與雙色燈的借口 連接順序錯(cuò)了,調(diào)整了連接順序后彩燈理想的順序循環(huán)點(diǎn)亮了。 風(fēng)扇正常運(yùn)行了,但是在定時(shí)時(shí)發(fā)現(xiàn)數(shù)碼管上的時(shí)間沒(méi)有變化,過(guò)了定時(shí)的 時(shí)間后,風(fēng)扇也沒(méi)有停止,開(kāi)始以為程序問(wèn)題,單步運(yùn)行后發(fā)現(xiàn)一切正常,然后 檢查數(shù)碼管顯
11、示也沒(méi)發(fā)現(xiàn)問(wèn)題,這時(shí)將接在 int0 上的導(dǎo)線拔下,接在發(fā)光二極 管上發(fā)現(xiàn)沒(méi)有電流,最后,斷定是 8253 并沒(méi)有產(chǎn)生脈沖信號(hào)給 8259,導(dǎo)致中斷 服務(wù)程序無(wú)法進(jìn)入,使得計(jì)時(shí)功能失效,所以才會(huì)出現(xiàn)剛才的問(wèn)題,于是,我測(cè) 試了幾根好用的導(dǎo)線從新將 8253 的連線連一遍,再運(yùn)行時(shí)定時(shí)功能就好用了。 實(shí)驗(yàn)結(jié)果基本實(shí)現(xiàn)了課設(shè)的要求,雖然有些問(wèn)題和程序還會(huì)有些不穩(wěn)定,但 是所要求的功能都實(shí)現(xiàn)了,那些問(wèn)題我會(huì)在以后進(jìn)行完善 。 沈陽(yáng)航空航天大學(xué)課程設(shè)計(jì)報(bào)告 參考文獻(xiàn) -8- 參考文獻(xiàn) 1王愛(ài)英.計(jì)算機(jī)組成與設(shè)計(jì) m 北京:教育出版社, 2003 2楊素行.微型計(jì)算機(jī)系統(tǒng)原理及應(yīng)用 m 北京: 清華大學(xué)
12、出版社, 1996 3張雪蘭.匯編語(yǔ)言程序設(shè)計(jì) m 北京: 清華大學(xué)出版社, 2006 4龔尚福.微機(jī)原理與接口技術(shù) m 西安: 西安電子科技大學(xué)出版社, 2003 5王中民.微型計(jì)算機(jī)原理 m 西安: 西安電子科技大學(xué)出版社, 2003 6沈美明,溫冬嬋.ibm-pc 匯編語(yǔ)言程序設(shè)計(jì)m 北京: 清華大學(xué)出版社, 2001 -9- 附 錄 data segment isend db 0 n0 db 0 n1 db 0 n2 db 0 keykind db 0 oldkey db 0 kind db 0 isstop db 0 numbers db 3fh,6,5bh,0,0,0,0,0,0,
13、0 data ends code segment assume cs:code,ds:data main: cli mov ax,cs mov ds,ax mov kind,0 mov keykind,0ah mov oldkey,0ah mov kind,06 mov isstop,0 mov isend,0 mov n0,0 mov n1,0 mov n2,0 call initnumbers call init8255 call init8259 call init8253 call modifyint mov dx,212h mov al,0 out dx,al call cleard
14、evice call display mov al,0 mov dx,22ah out dx,al mov al,30h out dx,al mov al,6ah sti dowhat: push ax dowait: mov dx,210h -10- in al,dx test al,1 jz dowait pop ax call readakey cmp keykind,0ah jnz a1 mov kind,2 call gotonext jmp aa a1: cmp keykind,0bh jnz a2 mov kind,1 call gotonext jmp aa a2: cmp k
15、eykind,0ch jnz a3 mov kind,0 call gotonext jmp aa a3: cmp keykind,0dh jnz a4 push ax mov dx,212h ;c 口給 0 mov al,0 out dx,al pop ax mov isstop,0 push ax mov al,oldkey mov keykind,al call reading mov dx,212h mov al,0ffh out dx,al pop ax sti ;開(kāi)中斷,進(jìn)入中斷程序計(jì)時(shí) jmp aa a4: cmp keykind,0eh jnz aa push ax mov a
16、l,oldkey mov keykind,al pop ax aa: jmp dowhat gotonext: mov dx,211h -11- out dx,al ror al,1 ror al,1 continue: cmp kind,2 jnz mm1 call speed2 jmp mm3 mm1: cmp kind,1 jnz mm2 call speed1 jmp mm3 mm2: cmp kind,0 jnz mm3 call speed0 mm3: push ax mm33: cmp isstop,0 jz mm4 mov dx,211h mov al,0ffh out dx,
17、al mov dx,210h in al,dx test al,1 jnz mm33 mov isstop,0 cli mm4: pop ax ret readakey: ;讀鍵盤(pán) push ax mov al,keykind mov oldkey,al mov dx,22ah in al,dx and al,0fh cmp al,0 jz gotoexit ;沒(méi)按鍵就直接返回 mov al,40h mov dx,22ah out dx,al mov dx,228h in al,dx mov keykind,al gotoexit: pop ax ret -12- speed1: push c
18、x mov cx,18000 sp1: loop sp1 pop cx ret speed2: push cx mov cx,50000 sp2: loop sp2 pop cx ret speed0: push cx mov cx,8000 sp0: loop sp0 pop cx ret readisd: key: ;讀鍵盤(pán),是 d 鍵返回 mov dx,22ah in al,dx and al,0fh cmp al,0 jz key mov al,40h out dx,al mov dx,228h in al,dx cmp al,0dh jnz key ret reading: ;計(jì)時(shí)時(shí)
19、間輸入 push ax mov n0,0 mov n1,0 mov n2,0 call readanumber mov n0,al call display call readanumber cmp al,0dh jz readexit mov ah,n0 mov n0,al mov n1,ah call display call readanumber cmp al,0dh -13- jz readexit mov ah,n0 mov n0,al mov al,n1 mov n1,ah mov n2,al call display call readisd readexit: pop ax
20、ret readanumber: key2: mov dx,22ah in al,dx and al,0fh cmp al,0 jz key2 mov al,40h out dx,al mov dx,228h in al,dx ret initnumbers: push bx mov bx,offset numbers ;初始化數(shù)碼管顯示數(shù)字表 09 mov byte ptrbx,3fh mov byte ptrbx+1,6 mov byte ptrbx+2,5bh mov byte ptrbx+3,4fh mov byte ptrbx+4,66h mov byte ptrbx+5,6dh m
21、ov byte ptrbx+6,7dh mov byte ptrbx+7,7 mov byte ptrbx+8,7fh mov byte ptrbx+9,6fh pop bx ret display: ;從左到右依次在三個(gè)數(shù)碼管上 顯示數(shù)字 call cleardevice mov bx,offset numbers mov al,80h mov dx,22ah out dx,al mov al,n0 xor ah,ah add bx,ax mov al,bx mov dx,228h out dx,al mov bx,offset numbers -14- mov al,81h mov dx,
22、22ah out dx,al mov dx,228h mov al,n1 xor ah,ah add bx,ax mov al,bx out dx,al mov bx,offset numbers mov al,82h mov dx,22ah out dx,al mov dx,228h mov al,n2 xor ah,ah add bx,ax mov al,bx out dx,al ret intcount: push ax push bx push dx cmp n0,0 jz next1 dec n0 jmp next4 next1: mov n0,9 cmp n1,0 jz next2
23、 dec n1 jmp next4 next2: mov n1,9 cmp n2,0 jz next3 dec n2 jmp next4 next3: mov n2,9 next4: cmp n0,0 jnz next5 cmp n1,0 jnz next5 cmp n2,0 jnz next5 mov isstop,1 mov dx,212h mov al,0 -15- out dx,al next5: call display pop dx pop bx pop ax iret init8255: mov al,90h mov dx,213h out dx,al ret init8259:
24、 mov al,13h mov dx,220h out dx,al mov dx,221h mov al,30h out dx,al mov al,3 out dx,al mov al,0feh out dx,al ret modifyint: push ds push bx push ax xor ax,ax mov ds,ax mov bx,30h*4 mov ax,offset intcount mov bx,ax mov ax,8100h mov bx+2,ax pop ax pop bx pop ds ret init8253: push ax mov al,35h mov dx,203h out dx,al mov ax,0ffffh mov dx,200h out dx,al mov al,ah out dx,al mov al,75h mov dx,203h out dx
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年驅(qū)鼠器項(xiàng)目建議書(shū)
- 中學(xué)化學(xué)教學(xué)設(shè)計(jì)知到課后答案智慧樹(shù)章節(jié)測(cè)試答案2025年春魯東大學(xué)
- 2017-2018學(xué)年人教A版高中數(shù)學(xué)選修2-3檢測(cè)第一章計(jì)數(shù)原理單元質(zhì)量評(píng)估(一)
- 高考物理課標(biāo)版一輪復(fù)習(xí)考點(diǎn)規(guī)范練7牛頓第一定律牛頓第三定律
- 2024-2025學(xué)習(xí)筆記歷史(部編版)選必一第四單元 第12課 近代西方民族國(guó)家與國(guó)際法的發(fā)展
- 淺析打葉復(fù)烤企業(yè)的設(shè)備點(diǎn)檢工作
- 心理契約對(duì)建造師的項(xiàng)目公民行為的影響關(guān)系研究
- 西格列汀聯(lián)合二甲雙胍在2型糖尿病患者中的有效性和安全性以及對(duì)炎癥和氧化應(yīng)激的影響的研究
- 中國(guó)婚姻制度的嬗變歷程探索
- 新診斷2型糖尿病患者神經(jīng)電生理異常特點(diǎn)及相關(guān)因素研究
- 庫(kù)車(chē)縣“7.9”天山煉化油儲(chǔ)罐火災(zāi)撲救戰(zhàn)評(píng)
- 金屬結(jié)構(gòu)制造安全作業(yè)指導(dǎo)書(shū)
- 眼外傷-PPT課件
- 教學(xué)-主動(dòng)脈夾層PPT課件
- 上海市企業(yè)投資項(xiàng)目核準(zhǔn)、備案及建設(shè)審批流程指南
- 絕句遲日江山麗
- 船體開(kāi)孔規(guī)則
- (精選)沸騰焙燒爐設(shè)計(jì)相關(guān)計(jì)算
- 多元化與專(zhuān)業(yè)化的利弊之爭(zhēng)
- ASMEB16.14-1991中文版鋼鐵管螺紋管堵、內(nèi)外螺絲和鎖緊螺母
- 《雕塑工程工程量清單計(jì)價(jià)定額》
評(píng)論
0/150
提交評(píng)論