這幾天北大上機(jī)考試都開(kāi)始了,這幾天考的接口上機(jī)考題都有一些難度,至少比上次考的難些!今天下午的考題是:8255的A口交替輸出AAh和55h,時(shí)間間隔為1秒。當(dāng)8253方式0輸入三個(gè)單脈沖事終止。8253為通道1.
9月11號(hào)上午的考題
8253性質(zhì)通道1方式0,手動(dòng)輸入單脈沖,out1給8255的pa0,8255a口輸入c口輸出給8個(gè)指示燈。
當(dāng)pa0=0的時(shí)候指示燈每隔一個(gè)亮,且間隔一秒當(dāng)
pa0=1的時(shí)候指示燈每隔兩個(gè)亮,且間隔一秒
9月10日下午考題
8253通道1方式0,記數(shù)初值3,out1輸出到pa0口,8255方式0,a口輸入,c 口輸出到LED燈上,當(dāng)PA0=0時(shí),01010101-10101010循環(huán),當(dāng)PA0=1時(shí),00110011-11001100循環(huán),有鍵按下返回DOS.
9月6日上午題
8255A c口低四位輸入,a口輸出到數(shù)碼段,當(dāng)pc0=0 時(shí),a口輸出是加一循環(huán)(0~f),pc0=1時(shí),a口輸出是減一循環(huán)(f~0),輸出時(shí)延一秒鐘,有鍵按下就退出……
data segment
led db 71h,79h,3fh,39h,7fh,77h,67h,7fh
db 07h,7ch,6dh,6eh,4fh,5bh,06h,3fh
count db 0(定義循環(huán)初始值為零)
data ends
code segment
assume cs:code,ds:data
start: mov ax,data
mov ds,ax
mov dx,28bh
mov al,81h
out dx,al(8255初始化)
input:mov dx,28ah
in al,dx and al,0fh
and al,01h(判斷pc0)
jz a1 mov al,count
and al,0fh(要屏蔽高四位,以免超過(guò)15后出亂碼)
lea bx,led
xlat
mov dx,288h
out dx,al
call delay(延遲子程序老師會(huì)給出)
dec count
mov ah,1
int 16h
jzinput(判斷是否有鍵按下,無(wú)則繼續(xù)判斷pc0)
jmp a2(有則返回dos)
a1: mov al,count
and al,0fh
lea bx,led
xlat
mov dx,288h
out dx,al
call delay
inc count
mov ah,1
int 16h
jz input
a2: mov ah,4ch
int 21h
delay proc near.
.
.
.
delay endp
code ends
end start
9月8日接口上午題
8253方式0,通道1,計(jì)數(shù)初值來(lái)自8255A口低四位,將計(jì)數(shù)結(jié)果從8255C口顯示至七段數(shù)碼管,并從8255A口高四位輸出到指示燈高四位,鍵盤(pán)有鍵按下返回DOS,否則繼續(xù)執(zhí)行。
9月7號(hào)下午考題
8253clk0輸入1MHZ脈沖,OUT1輸出1HZ到8255C囗,若PC0=1,則PA囗輸出11001100,
若PC0=0,則PA囗輸出00110011.
不難吧!我二十分鐘就搞定了。答案太長(zhǎng)了,我給出一部分吧。
初始化部分
l1:mov dx,281h
in al,dx
mov dx,28ah
out dx,al
mov dx,28ah
in al,dx
test al,01
jz l2
mov dx,288h
mov al,cch
out dx,al
jmp l3
l2: mov dx,288h
mov al,33h
out dx,al
l3:mov ah.01h
int 16h
jz l1
mov ah,4ch
int 21h
9月7日上午考題
8255方式0,從C口輸入一個(gè)數(shù)值為0FFH,再檢測(cè)C0輸入的數(shù)據(jù),如為1,則+1,從A口輸出,如為0,則—1從A口輸出,延時(shí)一秒,有鍵按下則退出
code segment
assume cs:code
start:mov al,89h
mov dx,28bh
out dx ,al
mov dx,28ah
in al,dx
mov bl,al
mov cl,al
l:mov dx,28ah
in al,dx
test al,1
jz a
inc bl
mov al,bl
jmp b
a:dec cl
mov al,cl
b:mov dx,288h
out dx.al
mov ah,16h
int 21h
jz l
mov ah,4ch
int 21h
delay proc near
.
.
.
dalay endp
code ends
end start
9月11號(hào)上午的考題
8253性質(zhì)通道1方式0,手動(dòng)輸入單脈沖,out1給8255的pa0,8255a口輸入c口輸出給8個(gè)指示燈。
當(dāng)pa0=0的時(shí)候指示燈每隔一個(gè)亮,且間隔一秒當(dāng)
pa0=1的時(shí)候指示燈每隔兩個(gè)亮,且間隔一秒
9月10日下午考題
8253通道1方式0,記數(shù)初值3,out1輸出到pa0口,8255方式0,a口輸入,c 口輸出到LED燈上,當(dāng)PA0=0時(shí),01010101-10101010循環(huán),當(dāng)PA0=1時(shí),00110011-11001100循環(huán),有鍵按下返回DOS.
9月6日上午題
8255A c口低四位輸入,a口輸出到數(shù)碼段,當(dāng)pc0=0 時(shí),a口輸出是加一循環(huán)(0~f),pc0=1時(shí),a口輸出是減一循環(huán)(f~0),輸出時(shí)延一秒鐘,有鍵按下就退出……
data segment
led db 71h,79h,3fh,39h,7fh,77h,67h,7fh
db 07h,7ch,6dh,6eh,4fh,5bh,06h,3fh
count db 0(定義循環(huán)初始值為零)
data ends
code segment
assume cs:code,ds:data
start: mov ax,data
mov ds,ax
mov dx,28bh
mov al,81h
out dx,al(8255初始化)
input:mov dx,28ah
in al,dx and al,0fh
and al,01h(判斷pc0)
jz a1 mov al,count
and al,0fh(要屏蔽高四位,以免超過(guò)15后出亂碼)
lea bx,led
xlat
mov dx,288h
out dx,al
call delay(延遲子程序老師會(huì)給出)
dec count
mov ah,1
int 16h
jzinput(判斷是否有鍵按下,無(wú)則繼續(xù)判斷pc0)
jmp a2(有則返回dos)
a1: mov al,count
and al,0fh
lea bx,led
xlat
mov dx,288h
out dx,al
call delay
inc count
mov ah,1
int 16h
jz input
a2: mov ah,4ch
int 21h
delay proc near.
.
.
.
delay endp
code ends
end start
9月8日接口上午題
8253方式0,通道1,計(jì)數(shù)初值來(lái)自8255A口低四位,將計(jì)數(shù)結(jié)果從8255C口顯示至七段數(shù)碼管,并從8255A口高四位輸出到指示燈高四位,鍵盤(pán)有鍵按下返回DOS,否則繼續(xù)執(zhí)行。
9月7號(hào)下午考題
8253clk0輸入1MHZ脈沖,OUT1輸出1HZ到8255C囗,若PC0=1,則PA囗輸出11001100,
若PC0=0,則PA囗輸出00110011.
不難吧!我二十分鐘就搞定了。答案太長(zhǎng)了,我給出一部分吧。
初始化部分
l1:mov dx,281h
in al,dx
mov dx,28ah
out dx,al
mov dx,28ah
in al,dx
test al,01
jz l2
mov dx,288h
mov al,cch
out dx,al
jmp l3
l2: mov dx,288h
mov al,33h
out dx,al
l3:mov ah.01h
int 16h
jz l1
mov ah,4ch
int 21h
9月7日上午考題
8255方式0,從C口輸入一個(gè)數(shù)值為0FFH,再檢測(cè)C0輸入的數(shù)據(jù),如為1,則+1,從A口輸出,如為0,則—1從A口輸出,延時(shí)一秒,有鍵按下則退出
code segment
assume cs:code
start:mov al,89h
mov dx,28bh
out dx ,al
mov dx,28ah
in al,dx
mov bl,al
mov cl,al
l:mov dx,28ah
in al,dx
test al,1
jz a
inc bl
mov al,bl
jmp b
a:dec cl
mov al,cl
b:mov dx,288h
out dx.al
mov ah,16h
int 21h
jz l
mov ah,4ch
int 21h
delay proc near
.
.
.
dalay endp
code ends
end start