西南交大微机实验代码
实验2
开关实验:
io8255a equ 288h
io8255c equ 28ah
io8255z equ 28bh
code segment
assume cs:code
start:
mov dx,io8255z
mov al,8bh
out dx,al
inout:
mov dx,io8255c
in al,dx
mov dx,io8255a
out dx,al
mov dl,0ffh
mov ah,06h
int 21h
jz inout
mov ah,4ch
int 21h
code ends
end start
交通灯控制实验:
data segment
io8255c equ 28Ah
io8255z equ 28Bh
portc1 db 21h
db 81h,01h,81h,01h,81h,01h,81h,01h,81h,01h,81h,01h
db 44h
db 42h,40h,42h,40h,42h,40h,42h,40h,42h,40h,42h,40h
db 0ffh
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
mov dx,io8255z
mov al,90h
out dx,al
mov dx,io8255c
re_on:
mov bx,0;
on:
mov al,portc1[bx]
cmp al,0ffh
jz re_on
out dx,al
inc bx
mov cx,200
test al,24h
jz de1
mov cx,10000
de1: mov di,9000
de0:
dec di
jnz de0
loop de1
push dx
mov ah,06h
mov dl,0ffh
int 21h
pop dx
jz on
exit:mov ah,4ch
int 21h
code ends
end start
七段数码管静态显示实验:
io8255a equ 288h
io8255z equ 28bh
data segment
led db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh
mesg1 db 0dh,0ah,’Input a num(0-9),other key is exit’,0dh,0ah,’$’ data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
mov dx,io8255z
mov ax,80h
out dx,al
sss:
mov dx,offset mesg1
mov ah,09h
int 21h
mov ah,01
int 21h
cmp al,’0’
jl exit
cmp al,’9’
jg exit
sub al,30h
mov bx,offset led
xlat
mov dx,io8255a
out dx,al
jmp sss
exit:
mov ah,4ch
int 21h
code ends
end start
数码管循环显示00—99
data segment
io8255a equ 288h
io8255b equ 289h
io8255c equ 28ah
io8255z equ 28bh
led db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh
buffer1 db 0,0
bz dw 01,00
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
mov dx,io8255b ;将8255设为A口输出
mov al,80h
out dx,al
mov di,offset buffer1 ;设di为显示缓冲区
loop1: mov cx,0300h;循环次数
loop2: mov bh,02
lll: mov byte ptr bz,bh
push di
dec di
add di,bz
mov bl,[di] ;bl为要显示的数
pop di
mov bh,0
mov si,offset led;置led数码管偏移地址为SI
add si,bx;求出对应的led码
mov al,byte ptr[si]
mov dx,io8255c;自8255A的口输出
out dx,al
mov al,byte ptr bz ;使相应的数码管亮
mov dx,io8255a
out dx,al
push cx
mov cx,3000 ;若显示过快,可更改cx值最大为0ffffh
delay: loop delay ;延时
pop cx
mov bh,byte ptr bz
shr bh,1
jnz lll
loop loop2 ;循环延时
mov ax,word ptr[di]
mov ah,01
int 16h
jne exit ;有键按下转exit
mov ax,word ptr[di]
inc al
aaa
mov [di],al;al中为十位
mov [di+1],ah;ah中为个位
jmp loop1
exit: mov dx,io8255a
mov al,0;关掉数码管显示
out dx,al
mov ah,4ch;返回DOS
int 21h
code ends
end start
键盘接口实验(行扫描法)
data segment
io8255a equ 288h
io8255c equ 28ah
io8255z equ 28bh
key db 37h,38h,39h,41h,54h,52h
db 34h,35h,36h,42h,53h,4dh
db 31h,32h,33h,43h,48h,4ch
db 30h,46h,45h,44h,58h,4eh
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
lp0:
mov dx,io8255z
mov al,90h
out dx,al
mov di,0
mov si,0
mov al,0
mov dx,io8255c
out dx,al
mov dx,io8255a
in al,dx
and al,00111111b
cmp al,00111111b
jz lp0
call delay
mov al,0
mov dx,io8255c
out dx,al
mov dx,io8255a
in al,dx
and al,00111111b
cmp al,00111111b
jz lp0
call delay
ABC: mov al,0
mov dx,io8255c
out dx,al
mov dx,io8255a
and al,00111111b
cmp al,00111111b
jz ABC
call delay
mov ah,11111110b;仅使A0输出0
mov cx,4;共四条行线
BCA: mov al,ah
mov dx,io8255c
out dx,al;输出行值
mov dx,io8255a
in al,dx;读入列值
and al,00111111b;保留低4位有效值
cmp al,00111111b;判断A0行是否有键按下
mov bl,al;有键按下,确定该键的值
rol ah;本行无键按下则继续查找下一行,循环左移(使下一行输出0)
loop BCA
jmp ABC
realy: mov dx,io8255c
in al,dx
nop
nop
nop
and al,0fh
cmp al,0fh
jnz realy
mov cx,4
mov al,bl
lp1: shr al,1
jnc lp2
inc di
loop lp1
lp2:
mov cx,6
mov al,ah
lp20:
shr al,1
jnc lp3
loop lp20
lp3:
mov bx,di
mov al,6
mul bl
add ax,si
disp:
mov bx,offset key
xlat
mov dh,0
mov dl,al
mov ah,2
int 21h
jmp lp0
exit:
mov ah,4ch
int 21h
delay proc near
push cx
mov cx,20h
l1: loop l1
pop cx
ret
delay endp
code ends
end start
3.1 脉冲个数记录实验
timer_ctl equ 283h
timer0 equ 280h
io8255z equ 28bh
io8255c equ 28ah
code segment
assume cs:code
start:
mov dx,io8255z
mov al,80h
out dx,al
mov al,00010000b
mov dx,timer_ctl
out dx,al
mov dx,timer0 3 实验
out dx,al
display:
mov al,00000000b
mov dx,time …… 此处隐藏:3356字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [小学教育]四年级综合实践活动课《衣物的洗涤》教
- [小学教育]2014半年工作总结怎么写
- [小学教育]20世纪外国文学专题综合试题及答案
- [小学教育]TS_1循环使用催化丙烯环氧化反应研究
- [小学教育]最实用的考勤签到表(上下班签到表)
- [小学教育]气候与生态建筑——以新疆民居为例
- [小学教育]二人以上股东有限责任公司章程参考样本
- [小学教育]2014届第一轮复习资料4.1,3美好生活的
- [小学教育]土方开挖、降水方案
- [小学教育]手绘儿童绘本《秋天的图画》(蜡笔)
- [小学教育]2002级硕士研究生卫生统计学考试试题
- [小学教育]环保装备重点发展目录
- [小学教育]金蝶K3合并报表培训教材
- [小学教育]岩浆岩试题及参考答案
- [小学教育]知之深爱之切学习心得
- [小学教育]第十二章 蛋白质的生物合成
- [小学教育]Chapter 2-3 Solid structure and basi
- [小学教育]市政道路雨季专项施工方案
- [小学教育]中国海洋大学2012-2013学年第二学期天
- [小学教育]教育心理学第3章-学习迁移
- 浅谈深化国企改革中加强党管企业
- 2006年中国病理生理学会学术活动安排
- 设计投标工作大纲
- 基于ARP的网络攻击与防御
- 2016届湖北省七市(州)教科研协作体高三
- Google_学术搜索及其检索技巧
- 2019-2020学年七年级地理下册6.3美洲教
- 城市道路可研报告
- 【名师指津】2012高考英语 写作基础技
- 6级知识点培训北京师范大学《幼儿智趣
- 注册会计师会计知识点:金融资产
- 新安装 500 kV 变压器介损分析与判断
- PS2模拟器PCSX2设置及使用教程.
- 医院药事管理与药剂科管理组织机构
- {PPT背景素材}丹巴的醉人美景,免费,一
- NAS网络存储应用解决方案
- 青海省西宁市六年级上学期数学期末考试
- 测量管理体系手册依据ISO10012:2003
- 洞子小学培养骨干教师工作计划
- 浅谈《牛津初中英语》的教材特点及教学




