微機(jī)原理課設(shè)-模擬電風(fēng)扇工作_第1頁
微機(jī)原理課設(shè)-模擬電風(fēng)扇工作_第2頁
微機(jī)原理課設(shè)-模擬電風(fēng)扇工作_第3頁
微機(jī)原理課設(shè)-模擬電風(fēng)扇工作_第4頁
微機(jī)原理課設(shè)-模擬電風(fēng)扇工作_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第3章結(jié)果測試及分析3.1結(jié)果測試編譯并連接程序,然后全速運(yùn)行,在數(shù)碼管上就顯示計(jì)時(shí)器的時(shí)間,開始時(shí)是全0。此時(shí)單色發(fā)光二極管為全滅。將開關(guān)K1向上扳去,此時(shí)8255的PA0口輸入高電平,PB口輸出使單色發(fā)光二極管循環(huán)亮燈。即以一定的速度循環(huán)點(diǎn)亮八個(gè)燈,模擬出了電風(fēng)扇的轉(zhuǎn)動(dòng)。當(dāng)需要改變風(fēng)速時(shí),只需按下鍵盤上的A、B、C鍵,便可切換風(fēng)速。當(dāng)需要設(shè)定運(yùn)行時(shí)間時(shí),只需要按下D鍵,則進(jìn)入定時(shí)狀態(tài),接著只需按下鍵盤上的數(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í)現(xiàn)了定時(shí)功能。如要讓單色燈再亮,則需將總開關(guān)關(guān)掉再打開。結(jié)果分析開始運(yùn)行時(shí),發(fā)現(xiàn)單色發(fā)光二極管并不是按理想順序逐漸點(diǎn)亮紅色,而是與風(fēng)扇轉(zhuǎn)動(dòng)方向相反,檢查硬件連線卻并沒有發(fā)現(xiàn)錯(cuò)誤,后來,檢查程序時(shí)發(fā)現(xiàn)將循環(huán)右移的代碼寫錯(cuò)了,從而導(dǎo)致了與旋轉(zhuǎn)方向相反的循環(huán)點(diǎn)亮順序,改正后完美運(yùn)行。風(fēng)扇正常運(yùn)行了,但是在定時(shí)時(shí)發(fā)現(xiàn)數(shù)碼管上的時(shí)間變化過于緩慢,于是檢查8253芯片的初始化程序,發(fā)現(xiàn)CLK1的輸入時(shí)倍數(shù)太大,于是將其數(shù)值調(diào)小后運(yùn)行,發(fā)現(xiàn)時(shí)間變化回歸正常。實(shí)驗(yàn)結(jié)果總的來說基本實(shí)現(xiàn)了課設(shè)的要求,雖然有些小問題和還會(huì)有些不穩(wěn)定,這些問題我會(huì)在以后的不斷學(xué)習(xí)中進(jìn)行完善。沈陽航空航天大學(xué)課程設(shè)計(jì)報(bào)告參考文獻(xiàn)參考文獻(xiàn)[1]王愛英.計(jì)算機(jī)組成與設(shè)計(jì)[M]北京:教育出版社,2003[2]楊素行.微型計(jì)算機(jī)系統(tǒng)原理及應(yīng)用[M]北京:清華大學(xué)出版社,1996[3]張雪蘭.匯編語言程序設(shè)計(jì)[M]北京:清華大學(xué)出版社,2006[4]龔尚福.微機(jī)原理與接口技術(shù)[M]西安:西安電子科技大學(xué)出版社,2003[5]王中民.微型計(jì)算機(jī)原理[M]西安:西安電子科技大學(xué)出版社,2003[6]沈美明,溫冬嬋.IBM-PC匯編語言程序設(shè)計(jì)[M]北京:清華大學(xué)出版社,2001沈陽航空航天大學(xué)課程設(shè)計(jì)報(bào)告附錄附錄程序清單:datasegmentisenddb0n0db0n1db0n2db0isrightdb1keykinddb0oldkeydb0kinddb0isstopdb0flagsdb0numbersdb3fh,6,5bh,0,0,0,0,0,0,0dataendscodesegmentassumecs:code,ds:datamain:;主程序climovax,csmovds,axmovkind,0movisright,1movkeykind,0ahmovoldkey,0ahmovkind,0movisstop,0movflags,0movisend,0movn0,0movn1,0movn2,0callinitnumberscallinit8255callinit8259callinit8253callmodifyintmovdx,212hmoval,0outdx,alcallcleardevicecalldisplaymoval,0movdx,22ahoutdx,almoval,30houtdx,almoval,7fhstidowhat:pushaxdowait:moval,0ffh;單色燈清零movdx,211houtdx,almovdx,210hinal,dxtestal,1;判斷開關(guān)jzdowaitpopaxcallreadakeycmpkeykind,0ahjnza1movkind,2callgotonextjmpaaa1:;判斷風(fēng)速改變cmpkeykind,0bhjnza2movkind,1callgotonextjmpaaa2:cmpkeykind,0chjnza3movkind,0callgotonextjmpaaa3:cmpkeykind,0dhjnza4pushaxmovdx,212hmoval,0outdx,alpopaxmovisstop,0pushaxmoval,oldkeymovkeykind,alcallreadingmovdx,212hmoval,0ffhoutdx,alpopaxstijmpaaa4:cmpkeykind,0ehjnzaanotflagspushaxmoval,oldkeymovkeykind,alpopaxaa:jmpdowhatgotonext:;單色燈循環(huán)亮滅movdx,211houtdx,alcmpflags,0jnznororroral,1noror:cmpal,0fehjnzcontinuejmpcontinuecontinue:cmpkind,2jnzmm1callspeed2jmpmm3mm1:;改變風(fēng)速cmpkind,1jnzmm2callspeed1jmpmm3mm2:cmpkind,0jnzmm3callspeed0mm3:pushaxmm33:cmpisstop,0jzmm4movdx,211hmoval,0ffhoutdx,almovdx,210hinal,dxtestal,1jnzmm33movisstop,0climm4:popaxretreadakey:;讀取鍵盤輸入pushaxmoval,keykindmovoldkey,almovdx,22ahinal,dxandal,0fhcmpal,0jzgotoexitmoval,40hmovdx,22ahoutdx,almovdx,228hinal,dxmovkeykind,algotoexit:popaxretspeed1:;速度設(shè)置pushcxmovcx,18000sp1:loopsp1popcxretspeed2:pushcxmovcx,50000sp2:loopsp2popcxretspeed0:pushcxmovcx,8000sp0:loopsp0popcxretreadisd:key:movdx,22ahinal,dxandal,0fhcmpal,0jzkeymoval,40houtdx,almovdx,228hinal,dxcmpal,0dhjnzkeyretreading:;輸入時(shí)間pushaxmovn0,0movn1,0movn2,0callreadanumbermovn0,alcalldisplaycallreadanumbercmpal,0dhjzreadexitmovah,n0movn0,almovn1,ahcalldisplaycallreadanumbercmpal,0dhjzreadexitmovah,n0movn0,almoval,n1movn1,ahmovn2,alcalldisplaycallreadisdreadexit:popaxretreadanumber:key2:movdx,22ahinal,dxandal,0fhcmpal,0jzkey2moval,40houtdx,almovdx,228hinal,dxretinitnumbers:pushbxmovbx,offsetnumbersmovbyteptr[bx],3fhmovbyteptr[bx+1],6movbyteptr[bx+2],5bhmovbyteptr[bx+3],4fhmovbyteptr[bx+4],66hmovbyteptr[bx+5],6dhmovbyteptr[bx+6],7dhmovbyteptr[bx+7],7movbyteptr[bx+8],7fhmovbyteptr[bx+9],6fhpopbxretdisplay:;時(shí)間顯示callcleardevicemovbx,offsetnumbersmoval,80hmovdx,22ahoutdx,almoval,n0xorah,ahaddbx,axmoval,[bx]movdx,228houtdx,almovbx,offsetnumbersmoval,81hmovdx,22ahoutdx,almovdx,228hmoval,n1xorah,ahaddbx,axmoval,[bx]outdx,almovbx,offsetnumbersmoval,82hmovdx,22ahoutdx,almovdx,228hmoval,n2xorah,ahaddbx,axmoval,[bx]outdx,alretintcount:pushaxpushbxpushdxcmpn0,0jznext1decn0jmpnext4next1:movn0,9cmpn1,0jznext2decn1jmpnext4next2:movn1,9cmpn2,0jznext3decn2jmpnext4next3:movn2,9next4:cmpn0,0jnznext5cmpn1,0jnznext5cmpn2,0jnznext5movisstop,1movdx,212hmoval,0outdx,alnext5:calldisplaypopdxpopbxpopaxiretinit8255:moval,90hmovdx,213houtdx,alretinit8259:moval,13hmovdx,220houtdx,almovdx,221hmoval,30houtdx,almoval,3outdx,almoval,0fehoutdx,alretmodifyint:pushdspushbxpushaxxorax,axmovds,axmovbx,30h*4movax,offsetintcountmov[bx],axmovax,8100hmov[bx+2],axpopaxpopbxpopdsretinit8253:pushaxmoval,35hmovdx,203houtdx,almovax,0ffffhmovdx,200houtdx,almoval,ahoutdx,almoval,75hmovdx,203houtdx,almovax,27movdx,201houtdx,almoval,ahoutdx,alpopaxretcleardevice:pushaxpushdxmoval,0c1hmovdx,22ahoutdx,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論