

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 課 程 設(shè) 計(jì) 報(bào) 告</p><p> 課程設(shè)計(jì)名稱:微機(jī)系統(tǒng)綜合課程設(shè)計(jì)</p><p> 課程設(shè)計(jì)題目:模擬電風(fēng)扇工作</p><p> 院(系):計(jì)算機(jī)學(xué)院</p><p> 專 業(yè):計(jì)算機(jī)科學(xué)與技術(shù)</p><p><b> 目 錄</b>&l
2、t;/p><p> 第1章 總體設(shè)計(jì)方案1</p><p> 1.1 設(shè)計(jì)原理1</p><p> 1.2 設(shè)計(jì)思路1</p><p> 1.3 實(shí)驗(yàn)環(huán)境2</p><p> 第2章 詳細(xì)設(shè)計(jì)方案3</p><p> 2.1 硬件電路設(shè)計(jì)3</p><
3、p> 2.2主程序設(shè)計(jì)4</p><p> 2.3 功能選擇模塊的設(shè)計(jì)與實(shí)現(xiàn)5</p><p> 2.3.1計(jì)時(shí)模塊流程圖5</p><p> 2.3.2顯示模塊流程圖6</p><p> 2.3.3改變風(fēng)速模塊流程圖6</p><p> 第3章 結(jié)果測(cè)試及分析7</p>
4、<p> 3.1 結(jié)果測(cè)試7</p><p> 3.2結(jié)果分析7</p><p><b> 參考文獻(xiàn)8</b></p><p><b> 附 錄9</b></p><p> 第1章 總體設(shè)計(jì)方案</p><p><b> 1.
5、1 設(shè)計(jì)原理</b></p><p> 利用芯片8259,8255,8253,8279,分別控制中斷,單色發(fā)光二極管,時(shí)鐘,和LED顯示。用受8253控制的8259給8255和8279產(chǎn)生每秒鐘一次的中斷,控制單色發(fā)光二極管和LED的顯示。</p><p><b> 1.2 設(shè)計(jì)思路</b></p><p> 首先需要一個(gè)
6、總開(kāi)關(guān),用來(lái)控制電風(fēng)扇的開(kāi)關(guān),可以用8255的輸入端A接收這一信號(hào),信號(hào)為1時(shí)進(jìn)入循環(huán),此時(shí)單色發(fā)光二極管不亮,當(dāng)不為1時(shí)執(zhí)行下一步。</p><p> 其次需要實(shí)現(xiàn)的功能是三級(jí)風(fēng)速的變換,可以設(shè)計(jì)三個(gè)變換延時(shí)的子程序,并根據(jù)鍵盤輸入的不同來(lái)分別調(diào)用這三個(gè)步驟。</p><p> 再次是要實(shí)現(xiàn)定時(shí)功能,用8253和8259實(shí)現(xiàn)這一功能并不困難,當(dāng)時(shí)間減為零時(shí),向8255的AL中輸入OF
7、FH,使單色發(fā)光二極管不顯示。</p><p> 還有就是單色發(fā)光二極管的顯示問(wèn)題,只需將8255中控制單色發(fā)光二極管顯示的數(shù)據(jù)循環(huán)左移或右移即可。</p><p><b> 提出方案</b></p><p> 總開(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)
8、動(dòng),選用8255和實(shí)驗(yàn)箱上的8個(gè)單色發(fā)光二極管來(lái)顯示風(fēng)扇的轉(zhuǎn)動(dòng)。為了實(shí)現(xiàn)定時(shí)功能,選用8253定時(shí),8259產(chǎn)生中斷,用中斷程序來(lái)控制定時(shí)。由于定時(shí)時(shí)需要顯示倒計(jì)時(shí),所以還需要8279鍵盤顯示接口芯片。</p><p><b> 方案論證</b></p><p> 用8255和單色發(fā)光二極管模擬風(fēng)扇的轉(zhuǎn)動(dòng),所以,可以將8255的B口設(shè)為工作在方式0,輸出狀態(tài),然后
9、通過(guò)輸出不同二進(jìn)制數(shù)來(lái)控制單色發(fā)光二極管的顯示,通過(guò)循環(huán)右移使單色發(fā)光二極管循環(huán)顯示來(lái)實(shí)現(xiàn)風(fēng)扇轉(zhuǎn)動(dòng)的模擬。</p><p> 用右下角的開(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)與停止。</p><p> 為了實(shí)現(xiàn)定時(shí)的功能,可以用8253的分頻功能,將輸入的脈沖信號(hào)分頻,以輸出1HZ的脈
10、沖信號(hào),然后輸入到8259的INT0以產(chǎn)生周期為1s的中斷,即每秒鐘進(jìn)一次中斷,在中斷服務(wù)程序中來(lái)實(shí)現(xiàn)時(shí)間的遞減,當(dāng)減到0時(shí)就將風(fēng)扇停止,這樣就實(shí)現(xiàn)了定時(shí)功能了。</p><p> 為了實(shí)現(xiàn)三級(jí)風(fēng)速的選擇和定時(shí)功能、定時(shí)時(shí)間的變化顯示等功能,需要8279的鍵盤顯示功能,在鍵盤上設(shè)置A,B,C三個(gè)鍵分別控制三級(jí)風(fēng)速,再設(shè)置一個(gè)D按鍵來(lái)控制定時(shí)功能的選擇,當(dāng)按下定時(shí)功能鍵D后,還需要鍵盤的數(shù)字鍵來(lái)實(shí)現(xiàn)定時(shí)時(shí)間的設(shè)定
11、,設(shè)定完成后還需再次按下D鍵來(lái)確認(rèn)。最后就是用數(shù)碼管顯示時(shí)間的變化了。</p><p><b> 1.3 實(shí)驗(yàn)環(huán)境</b></p><p> ·硬件環(huán)境:AEDK實(shí)驗(yàn)箱,PC機(jī)。</p><p> ·軟件環(huán)境:LCA88ET應(yīng)用軟件。</p><p> 第2章 詳細(xì)設(shè)計(jì)方案</p&g
12、t;<p> 2.1 硬件電路設(shè)計(jì)</p><p> 硬件電路由鍵盤顯示接口芯片8279構(gòu)成,如圖2.1所示。</p><p> 圖2.1 硬件電路連線圖</p><p> 8279是可編程設(shè)置型鍵盤/顯示芯片,其特點(diǎn)是:(1)可同時(shí)進(jìn)行鍵盤掃描及文字顯示;(2)鍵盤掃描模式;(3)傳感器掃描模式;(4)激發(fā)輸入模式;(5)8乘8鍵盤FIF
13、O;(6)具有接點(diǎn)消除抖動(dòng),2鍵鎖定及N鍵依次讀出模式;(7)雙排8位數(shù)或雙排16位數(shù)顯示器;(8)右邊進(jìn)入或左邊進(jìn)入,16字符或8字符顯示。8255的A口工作在方式0,輸入;B口工作在方式0,輸出;C口工作在方式0,輸出;</p><p> 8253將脈沖源分頻,產(chǎn)生周期為1s的脈沖信號(hào),驅(qū)動(dòng)8259產(chǎn)生周期為1s的中斷。8255、8259、8253、8279的端口地址分別接210H-217H、220H-22
14、7H、200H-207H、228H-22FH。</p><p><b> 主程序設(shè)計(jì)</b></p><p> 下載到實(shí)驗(yàn)箱之后,由主控開(kāi)關(guān)K控制程序運(yùn)行,調(diào)節(jié)風(fēng)速和設(shè)定定時(shí)由中斷程序?qū)崿F(xiàn),電風(fēng)扇模擬轉(zhuǎn)動(dòng)由8個(gè)單色燈實(shí)現(xiàn)。當(dāng)開(kāi)關(guān)K斷開(kāi)或者定時(shí)到達(dá)時(shí),電風(fēng)扇停轉(zhuǎn),程序結(jié)束。</p><p> 圖2.2 主程序流程圖</p>
15、<p> 2.3 功能選擇模塊的設(shè)計(jì)與實(shí)現(xiàn)</p><p> 2.3.1計(jì)時(shí)模塊流程圖</p><p> 計(jì)時(shí)器模塊,主要實(shí)現(xiàn)對(duì)電風(fēng)扇的定時(shí)功能,并在定時(shí)期間支持改變風(fēng)速的功能,對(duì)設(shè)定的時(shí)間進(jìn)行減一操作,當(dāng)剩余時(shí)間為0時(shí),則停止電風(fēng)扇的工作,結(jié)束程序。</p><p> 圖2.3.1 功能選擇模塊流程圖</p><p>
16、 2.3.2顯示模塊流程圖</p><p> 用于模擬電風(fēng)扇的轉(zhuǎn)速和旋轉(zhuǎn)方向,由一個(gè)循環(huán)右移實(shí)現(xiàn),使單色燈循環(huán)點(diǎn)亮。</p><p> 圖2.3.2 顯示模塊流程圖</p><p> 2.3.3改變風(fēng)速模塊流程圖</p><p> 通過(guò)鍵盤的輸入,8259產(chǎn)生中斷,程序讀取輸入內(nèi)容,A,B,C為改變風(fēng)速,當(dāng)讀取到相應(yīng)的內(nèi)容時(shí),改變
17、為相應(yīng)的風(fēng)速。</p><p> 圖2.3.3 改變風(fēng)速模塊流程圖</p><p> 第3章 結(jié)果測(cè)試及分析</p><p> 3.1 結(jié)果測(cè)試 </p><p> 編譯并連接程序,然后全速運(yùn)行,在數(shù)碼管上就顯示計(jì)時(shí)器的時(shí)間,開(kāi)始時(shí)是全0。此時(shí)單色發(fā)光二
18、極管為全滅。將開(kāi)關(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)
19、,單色燈全滅,如此便實(shí)現(xiàn)了定時(shí)功能。如要讓單色燈再亮,則需將總開(kāi)關(guān)關(guān)掉再打開(kāi)。</p><p><b> 結(jié)果分析</b></p><p> 開(kāi)始運(yùn)行時(shí),發(fā)現(xiàn)單色發(fā)光二極管并不是按理想順序逐漸點(diǎn)亮紅色,而是與風(fēng)扇轉(zhuǎn)動(dòng)方向相反,檢查硬件連線卻并沒(méi)有發(fā)現(xiàn)錯(cuò)誤,后來(lái),檢查程序時(shí)發(fā)現(xiàn)將循環(huán)右移的代碼寫(xiě)錯(cuò)了,從而導(dǎo)致了與旋轉(zhuǎn)方向相反的循環(huán)點(diǎn)亮順序,改正后完美運(yùn)行。</
20、p><p> 風(fēng)扇正常運(yùn)行了,但是在定時(shí)時(shí)發(fā)現(xiàn)數(shù)碼管上的時(shí)間變化過(guò)于緩慢,于是檢查8253芯片的初始化程序,發(fā)現(xiàn)CLK1的輸入時(shí)倍數(shù)太大,于是將其數(shù)值調(diào)小后運(yùn)行,發(fā)現(xiàn)時(shí)間變化回歸正常。</p><p> 實(shí)驗(yàn)結(jié)果總的來(lái)說(shuō)基本實(shí)現(xiàn)了課設(shè)的要求,雖然有些小問(wèn)題和還會(huì)有些不穩(wěn)定,這些問(wèn)題我會(huì)在以后的不斷學(xué)習(xí)中進(jìn)行完善 。</p><p><b> 參考文獻(xiàn)&l
21、t;/b></p><p> [1]王愛(ài)英.計(jì)算機(jī)組成與設(shè)計(jì) [M] 北京:教育出版社, 2003</p><p> [2]楊素行.微型計(jì)算機(jī)系統(tǒng)原理及應(yīng)用 [M] 北京: 清華大學(xué)出版社, 1996</p><p> [3]張雪蘭.匯編語(yǔ)言程序設(shè)計(jì) [M] 北京: 清華大學(xué)出版社, 2006</p><p> [4]龔尚
22、福.微機(jī)原理與接口技術(shù) [M] 西安: 西安電子科技大學(xué)出版社, 2003</p><p> [5]王中民.微型計(jì)算機(jī)原理 [M] 西安: 西安電子科技大學(xué)出版社, 2003</p><p> [6]沈美明,溫冬嬋.IBM-PC匯編語(yǔ)言程序設(shè)計(jì)[M] 北京: 清華大學(xué)出版社, 2001</p><p><b> 附 錄</b>&
23、lt;/p><p><b> 程序清單:</b></p><p> data segment</p><p> isend db 0</p><p><b> n0 db 0</b></p><p><b> n1 db 0</b></p&g
24、t;<p><b> n2 db 0</b></p><p> isright db 1</p><p> keykind db 0</p><p> oldkey db 0</p><p><b> kind db 0</b></p><p> i
25、sstop db 0</p><p> flags db 0</p><p> numbers db 3fh,6,5bh,0,0,0,0,0,0,0</p><p><b> data ends</b></p><p> code segment</p><p> assume cs:c
26、ode,ds:data</p><p> main: ??;主程序</p><p><b> cli</b></p><p><b> mov ax,cs</b></p><p><b> mov ds,ax</b></p>&
27、lt;p> mov kind,0</p><p> mov isright,1</p><p> mov keykind,0ah</p><p> mov oldkey,0ah</p><p> mov kind,0</p><p> mov isstop,0</p><p>
28、 mov flags,0</p><p> mov isend,0</p><p><b> mov n0,0</b></p><p><b> mov n1,0</b></p><p><b> mov n2,0</b></p><p>
29、call initnumbers</p><p> call init8255</p><p> call init8259</p><p> call init8253</p><p> call modifyint</p><p> mov dx,212h</p><p><
30、b> mov al,0</b></p><p><b> out dx,al</b></p><p> call cleardevice</p><p> call display</p><p><b> mov al,0</b></p><p>
31、; mov dx,22ah</p><p><b> out dx,al</b></p><p> mov al,30h</p><p><b> out dx,al</b></p><p> mov al,7fh</p><p><b> sti<
32、;/b></p><p><b> dowhat:</b></p><p><b> push ax</b></p><p><b> dowait:</b></p><p> mov al,0ffh ??;單色燈清零</p>
33、<p> mov dx,211h</p><p><b> out dx,al</b></p><p> mov dx,210h</p><p><b> in al,dx</b></p><p> test al,1 ;判斷開(kāi)關(guān)</p>
34、;<p><b> jz dowait</b></p><p><b> pop ax</b></p><p> call readakey</p><p> cmp keykind,0ah</p><p><b> jnz a1</b></p&g
35、t;<p> mov kind,2</p><p> call gotonext</p><p><b> jmp aa</b></p><p> a1: ??;判斷風(fēng)速改變</p><p> cmp keykind,0bh</p><p>
36、<b> jnz a2</b></p><p> mov kind,1</p><p> call gotonext</p><p><b> jmp aa</b></p><p><b> a2:</b></p><p> cmp keyk
37、ind,0ch</p><p><b> jnz a3</b></p><p> mov kind,0</p><p> call gotonext</p><p><b> jmp aa</b></p><p><b> a3:</b><
38、;/p><p> cmp keykind,0dh</p><p><b> jnz a4</b></p><p><b> push ax</b></p><p> mov dx,212h</p><p><b> mov al,0</b><
39、/p><p><b> out dx,al</b></p><p><b> pop ax</b></p><p> mov isstop,0</p><p><b> push ax</b></p><p> mov al,oldkey</
40、p><p> mov keykind,al</p><p> call reading</p><p> mov dx,212h</p><p> mov al,0ffh</p><p><b> out dx,al</b></p><p><b> po
41、p ax</b></p><p><b> sti</b></p><p><b> jmp aa</b></p><p><b> a4:</b></p><p> cmp keykind,0eh</p><p><b>
42、 jnz aa</b></p><p><b> not flags</b></p><p><b> push ax</b></p><p> mov al,oldkey</p><p> mov keykind,al</p><p><b>
43、; pop ax</b></p><p><b> aa:</b></p><p> jmp dowhat</p><p> gotonext: ?。粏紊珶粞h(huán)亮滅</p><p> mov dx,211h</p><p><b>
44、out dx,al</b></p><p> cmp flags,0</p><p><b> jnz noror</b></p><p><b> ror al,1</b></p><p><b> noror:</b></p><p&
45、gt; cmp al,0feh</p><p> jnz continue</p><p> jmp continue</p><p><b> continue:</b></p><p> cmp kind,2</p><p><b> jnz mm1</b>&
46、lt;/p><p> call speed2</p><p><b> jmp mm3</b></p><p> mm1: ;改變風(fēng)速</p><p> cmp kind,1</p><p><b> jnz mm2</b></p
47、><p> call speed1</p><p><b> jmp mm3</b></p><p><b> mm2:</b></p><p> cmp kind,0</p><p><b> jnz mm3</b></p><
48、;p> call speed0</p><p><b> mm3:</b></p><p><b> push ax</b></p><p><b> mm33:</b></p><p> cmp isstop,0</p><p><
49、;b> jz mm4</b></p><p> mov dx,211h</p><p> mov al,0ffh</p><p><b> out dx,al</b></p><p> mov dx,210h</p><p><b> in al,dx<
50、;/b></p><p><b> test al,1</b></p><p><b> jnz mm33</b></p><p> mov isstop,0</p><p><b> cli</b></p><p><b>
51、mm4:</b></p><p><b> pop ax</b></p><p><b> ret</b></p><p> readakey: ;讀取鍵盤輸入</p><p><b> push ax</b></p>
52、<p> mov al,keykind</p><p> mov oldkey,al</p><p> mov dx,22ah</p><p><b> in al,dx</b></p><p> and al,0fh</p><p><b> cmp al,0
53、</b></p><p> jz gotoexit</p><p> mov al,40h</p><p> mov dx,22ah</p><p><b> out dx,al</b></p><p> mov dx,228h</p><p><
54、;b> in al,dx</b></p><p> mov keykind,al</p><p><b> gotoexit:</b></p><p><b> pop ax</b></p><p><b> ret</b></p>&
55、lt;p> speed1: ??;速度設(shè)置</p><p><b> push cx</b></p><p> mov cx,18000</p><p><b> sp1:</b></p><p><b> loop sp1</b>&
56、lt;/p><p><b> pop cx</b></p><p><b> ret</b></p><p><b> speed2:</b></p><p><b> push cx</b></p><p> mov cx,
57、50000</p><p><b> sp2:</b></p><p><b> loop sp2</b></p><p><b> pop cx</b></p><p><b> ret</b></p><p><b
58、> speed0:</b></p><p><b> push cx</b></p><p> mov cx,8000</p><p><b> sp0:</b></p><p><b> loop sp0</b></p><p&
59、gt;<b> pop cx</b></p><p><b> ret</b></p><p><b> readisd:</b></p><p><b> key:</b></p><p> mov dx,22ah</p><
60、;p><b> in al,dx</b></p><p> and al,0fh</p><p><b> cmp al,0</b></p><p><b> jz key</b></p><p> mov al,40h</p><p>
61、<b> out dx,al</b></p><p> mov dx,228h</p><p><b> in al,dx</b></p><p> cmp al,0dh</p><p><b> jnz key</b></p><p><
62、;b> ret</b></p><p> reading: ;輸入時(shí)間</p><p><b> push ax</b></p><p><b> mov n0,0</b></p><p><b> mov n1,0</b
63、></p><p><b> mov n2,0</b></p><p> call readanumber</p><p><b> mov n0,al</b></p><p> call display</p><p> call readanumber&l
64、t;/p><p> cmp al,0dh</p><p> jz readexit</p><p><b> mov ah,n0</b></p><p><b> mov n0,al</b></p><p><b> mov n1,ah</b>&l
65、t;/p><p> call display</p><p> call readanumber</p><p> cmp al,0dh</p><p> jz readexit</p><p><b> mov ah,n0</b></p><p><b>
66、 mov n0,al</b></p><p><b> mov al,n1</b></p><p><b> mov n1,ah</b></p><p><b> mov n2,al</b></p><p> call display</p>
67、<p> call readisd</p><p><b> readexit:</b></p><p><b> pop ax</b></p><p><b> ret</b></p><p> readanumber:</p><p
68、><b> key2:</b></p><p> mov dx,22ah</p><p><b> in al,dx</b></p><p> and al,0fh</p><p><b> cmp al,0</b></p><p>&l
69、t;b> jz key2</b></p><p> mov al,40h</p><p><b> out dx,al</b></p><p> mov dx,228h</p><p><b> in al,dx</b></p><p><b
70、> ret</b></p><p> initnumbers:</p><p><b> push bx</b></p><p> mov bx,offset numbers</p><p> mov byte ptr[bx],3fh</p><p> mov byt
71、e ptr[bx+1],6</p><p> mov byte ptr[bx+2],5bh</p><p> mov byte ptr[bx+3],4fh</p><p> mov byte ptr[bx+4],66h</p><p> mov byte ptr[bx+5],6dh</p><p> mov
72、byte ptr[bx+6],7dh</p><p> mov byte ptr[bx+7],7</p><p> mov byte ptr[bx+8],7fh</p><p> mov byte ptr[bx+9],6fh</p><p><b> pop bx</b></p><p>
73、<b> ret</b></p><p> display: ;時(shí)間顯示</p><p> call cleardevice</p><p> mov bx,offset numbers</p><p> mov al,80h</p><p> mov dx
74、,22ah</p><p><b> out dx,al</b></p><p><b> mov al,n0</b></p><p><b> xor ah,ah</b></p><p><b> add bx,ax</b></p>
75、<p> mov al,[bx]</p><p> mov dx,228h</p><p><b> out dx,al</b></p><p> mov bx,offset numbers</p><p> mov al,81h</p><p> mov dx,22ah&
76、lt;/p><p><b> out dx,al</b></p><p> mov dx,228h</p><p><b> mov al,n1</b></p><p><b> xor ah,ah</b></p><p><b> ad
77、d bx,ax</b></p><p> mov al,[bx]</p><p><b> out dx,al</b></p><p> mov bx,offset numbers</p><p> mov al,82h</p><p> mov dx,22ah</p&
78、gt;<p><b> out dx,al</b></p><p> mov dx,228h</p><p><b> mov al,n2</b></p><p><b> xor ah,ah</b></p><p><b> add bx,a
79、x</b></p><p> mov al,[bx]</p><p><b> out dx,al</b></p><p><b> ret</b></p><p><b> intcount:</b></p><p><b&g
80、t; push ax</b></p><p><b> push bx</b></p><p><b> push dx</b></p><p><b> cmp n0,0</b></p><p><b> jz next1</b>&
81、lt;/p><p><b> dec n0</b></p><p><b> jmp next4</b></p><p><b> next1:</b></p><p><b> mov n0,9</b></p><p><
82、;b> cmp n1,0</b></p><p><b> jz next2</b></p><p><b> dec n1</b></p><p><b> jmp next4</b></p><p><b> next2:</b&
83、gt;</p><p><b> mov n1,9</b></p><p><b> cmp n2,0</b></p><p><b> jz next3</b></p><p><b> dec n2</b></p><p&g
84、t;<b> jmp next4</b></p><p><b> next3:</b></p><p><b> mov n2,9</b></p><p><b> next4:</b></p><p><b> cmp n0,0&l
85、t;/b></p><p><b> jnz next5</b></p><p><b> cmp n1,0</b></p><p><b> jnz next5</b></p><p><b> cmp n2,0</b></p>
86、<p><b> jnz next5</b></p><p> mov isstop,1</p><p> mov dx,212h</p><p><b> mov al,0</b></p><p><b> out dx,al</b></p>
87、;<p><b> next5:</b></p><p> call display</p><p><b> pop dx</b></p><p><b> pop bx</b></p><p><b> pop ax</b>&l
88、t;/p><p><b> iret</b></p><p><b> init8255:</b></p><p> mov al,90h</p><p> mov dx,213h</p><p><b> out dx,al</b></p&
89、gt;<p><b> ret</b></p><p><b> init8259:</b></p><p> mov al,13h</p><p> mov dx,220h</p><p><b> out dx,al</b></p>&
90、lt;p> mov dx,221h</p><p> mov al,30h</p><p><b> out dx,al</b></p><p><b> mov al,3</b></p><p><b> out dx,al</b></p>&l
91、t;p> mov al,0feh</p><p><b> out dx,al</b></p><p><b> ret</b></p><p> modifyint:</p><p><b> push ds</b></p><p>&
92、lt;b> push bx</b></p><p><b> push ax</b></p><p><b> xor ax,ax</b></p><p><b> mov ds,ax</b></p><p> mov bx,30h*4</p&
93、gt;<p> mov ax,offset intcount</p><p> mov [bx],ax</p><p> mov ax,8100h</p><p> mov [bx+2],ax</p><p><b> pop ax</b></p><p><b>
94、; pop bx</b></p><p><b> pop ds</b></p><p><b> ret</b></p><p><b> init8253:</b></p><p><b> push ax</b></p&g
95、t;<p> mov al,35h</p><p> mov dx,203h</p><p><b> out dx,al</b></p><p> mov ax,0ffffh</p><p> mov dx,200h</p><p><b> out dx,a
96、l</b></p><p><b> mov al,ah</b></p><p><b> out dx,al</b></p><p> mov al,75h</p><p> mov dx,203h</p><p><b> out dx,a
97、l</b></p><p><b> mov ax,27</b></p><p> mov dx,201h</p><p><b> out dx,al</b></p><p><b> mov al,ah</b></p><p>&
98、lt;b> out dx,al</b></p><p><b> pop ax</b></p><p><b> ret</b></p><p> cleardevice:</p><p><b> push ax</b></p>&l
99、t;p><b> push dx</b></p><p> mov al,0c1h</p><p> mov dx,22ah</p><p><b> out dx,al</b></p><p><b> wait1:</b></p><p&
100、gt; mov dx,22ah</p><p><b> in al,dx</b></p><p> test al,80h</p><p><b> jnz wait1</b></p><p><b> pop dx</b></p><p>
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 微機(jī)原理課程設(shè)計(jì)--模擬電風(fēng)扇動(dòng)作
- 微機(jī)原理-課程設(shè)計(jì)電風(fēng)扇程序設(shè)計(jì)
- 電風(fēng)扇課程設(shè)計(jì)
- 機(jī)械原理課程設(shè)計(jì)臺(tái)式電風(fēng)扇搖頭裝置
- 機(jī)械原理課程設(shè)計(jì)臺(tái)式電風(fēng)扇搖頭裝置
- 機(jī)械原理課程設(shè)計(jì)臺(tái)式電風(fēng)扇搖頭裝置
- proe課程設(shè)計(jì)--電風(fēng)扇
- 機(jī)械原理課程設(shè)計(jì)--臺(tái)式電風(fēng)扇搖頭裝置設(shè)計(jì)
- 電風(fēng)扇工作原理
- 機(jī)械原理課程設(shè)計(jì)臺(tái)式電風(fēng)扇搖頭裝置zsl
- 家用電風(fēng)扇課程設(shè)計(jì)
- 臺(tái)式電風(fēng)扇搖頭機(jī)構(gòu)設(shè)計(jì)機(jī)械原理課程設(shè)計(jì)
- proe課程設(shè)計(jì)--節(jié)能電風(fēng)扇
- 模擬電梯微機(jī)原理課程設(shè)計(jì)
- 機(jī)械原理課程設(shè)計(jì)----臺(tái)式電風(fēng)扇搖頭裝置機(jī)構(gòu)設(shè)計(jì)
- 機(jī)械原理課程設(shè)計(jì)---搖頭電風(fēng)扇設(shè)計(jì)說(shuō)明書(shū)
- 電風(fēng)扇機(jī)械創(chuàng)新設(shè)計(jì)課程設(shè)計(jì)
- 電風(fēng)扇控制系統(tǒng)課程設(shè)計(jì)報(bào)告
- 臺(tái)式電風(fēng)扇的搖頭裝置課程設(shè)計(jì)
- 微機(jī)原理課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論