考的芯片是8255。
題目是用方式0,pa作輸出,pc作輸入,高2位求反,低6位不變,并且程序能夠循環(huán),只在接收到鍵盤有輸入字符時,結(jié)束程序并退回到DOS界面。
程序不難,老師先將兩個例子(程序都列好了),只要你手動的把例子敲進(jìn)去,編譯,連接,生成exe文件,然后連線,撥動開關(guān),作完了,報告老師,這樣就通過了練習(xí)。
第一個實驗用的是8255,第二個用的是8253,基本上就考8255,將原有的程序改動一點就可以通過考試了。
端口地址是:PA-288H,PB-289H,PC-28AH,控制-28BH
不會使用PB端口,因為板子上的8255只有PA和PC
方式0 pa輸入,pc輸出,高2位求反,低6位不變
程序如下: 只是循環(huán)忘了怎么做了code segment
assume cs:code input:mov al,90h 初始化,方式選擇控制字 10010000B
mov dx,28bh
out dx,al
mov dx,288h 從PA口接受輸入
in al,dx
xor al ,0c0h 將輸入端的高2位求反,第6位不變
mov dx,28ah 輸出到PC口
out dx,al
mov ah,4ch
int 21h code ends
end input
這個只是今天11:30—2:30考試的上機(jī)程序的一部分,循環(huán)和中斷我忘了,別害怕,老師的例子里有
就是 mov ah,01h
int 16h
只不過我忘了應(yīng)該加在那里。
實驗很簡單,難點是很多朋友都沒用過MASM,這沒關(guān)系,老師先將實驗的步驟都寫在黑板上了,如果在編譯(執(zhí)行MASM)的時候,有erro出現(xiàn),就說明你的程序?qū)懙挠袉栴},erro后面有一個數(shù)字,那個數(shù)字可以提醒你,你的程序第幾行出現(xiàn)問題,這樣就很快找到問題了。
在做老是給的例子的時候,時間是1個半小時,時間足夠了,考試還會發(fā)一個考試冊子,這個冊子上有兩個例子的完整程序和邏輯連接圖,它會指導(dǎo)你如何連線。
好了,說了這么多,相信大家都會取得好成績,祝你們考試順利!