下载此文档

微机接口综合实验.doc


文档分类:IT计算机 | 页数:约16页 举报非法文档有奖
1/16
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/16 下载此文档
文档列表 文档介绍
一、实验目的
(1)了解可编程定时/计数器芯片8253在PC机里的工作情况。
(2)掌握PC机定时操作的工作原理。
二、实验内容及要求
1.【实验内容】:
对PC机中的8253进行编程,使得PC机成为一个精确的时钟;
【实验要求】:
(1)程序截获系统原有的时钟中断向量,置入用户自己的时钟中断向量。
(2)将8253的通道0设置为工作方式3,二进制数,装入计数初值11932,使其没10ms产生一次定时中断,即每秒钟中断100次,在程序中设置每一个中断次数计数器count100,初值为100,每次中断减一,到0后又重新置为100,并对时间显示串进行处理。
(3)程序运行时,在命令行输入用户指定的当前时间“nn:mm:ss”,即以两位数给出的“时:分”秒”,按任意键后开始计时,并以12小时的格式显示当前时间。
(4)在程序运行过程中,即时间显示过程中,用户按住任意键,恢复系统原中断向量,退出时钟程序的运行。
3.【实验流程图】:
结束
退出时钟循环显示
检查用户是否按键
读8259A的中断屏蔽寄存器,开中断
8253命令字设计:通道0,方式3,二进制
送往8253编程端口
设置用户中断向量
关中断,保护中断向量
是否有按键输入
开始
保护首地址
数据段置寄存器
置“nn:mm:ss”8个字节ASCII码入段

N
Y
时钟循环显示
N
Y
【计时操作判断流程图】
开始
中断次数计数器减一
中断次数计数器是否为0
N
Y
秒加1
秒是否到9
N
Y
秒个位置0,十位加1
秒的十位到是否到6
N
Y
秒的十位置0,分个位加1
分的个位到是否到9
N
Y
分的个位置0,分十位加1

分的十位到是否到6
N

分的十位置0,小时十位加1
Y
时的个位到是否到3
N
时的十位到是否到2
Y
Y

时的十位到是否到9
N
N
Y
时的个位置0,小时十位加1
退出
【用户定时中断程序流程图】
4.【实验代码】:
.model small
.model small
.stack 256
.data
count100 db 100 ;中断次数计数器
tenhour db 0 ;一小时的十位数
hour db 0 ;一小时的个位数
db ':'
tenmin db 0 ;分钟的十位数
minute db 0 ;分钟的个位数
db ':'
tensec db 0 ;秒钟的十位数
second db 0 ;秒钟的个位数
oldtime dw 0 ;保存原时钟中断向量
dw 0

.code
start proc far
push ds ;进行程序的首地址保护
xor ax, ax
push ax
mov ax, ***@data
mov es, ax ;指向数据段
mov si, 82h ;指向PSP内命令行参数
mov di, offset tenhour
mov cx, 8 ;放入“nn:mm:ss”的8个ASCII码的值
cld
rep movsb ;命令行的参数移入显示串中
mov ds, ax ;将数据段的段地址ax存入ds中
mov ah, 0 ;等待按键程序启动
int 16h
cli ;关中断
mov ax, 0
mov es, ax ;将段地址ax存入es段中
mov di, 20h ;产生类型号为20H的中断放入di中
mov bx, es:[di] ;将中断向量保存在bx中
mov oldtime, bx
mov bx, es:[di+2]
mov [oldtime+2], bx
mov ax, offset timer ;设置用户的中断向量
stosw
mov ax, seg timer
stosw
mov al, 36h ;8253中的命令字:通道0,方式3,二进制数
out 43h, al ;将设置好的命令字送到8253控制端口
mov bx, 11932 ;每秒钟中断100次计数值
mov al, bl
out 40h, al ;置入通道0的寄存器
mov al, bh
out 40h, al
in al, 21h ;读取8259A的中断屏蔽寄存器
and al,0fch ;开放键盘和时钟中断
out 21h, al ;写入8259A的新的屏蔽字
sti ;开中断
forever: mov ah, 0bh ;循环检查用户书否

微机接口综合实验 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数16
  • 收藏数0 收藏
  • 顶次数0
  • 上传人mh900965
  • 文件大小349 KB
  • 时间2017-06-30