没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
试读
3页
data segment freq dw 262,294,330,349,392l,440,494 data ends code segment assume ds:data, cs:code main proc far start: push ds mov ax,0 push ax mov ax,data mov ds,ax mov al,10110110b ;8253定时器2初始化 out 43h, al in al,61h ;读pb口 or al,03h out 61h,al ;pb0, pb1=’1’, 打开声音 again: mov ah, 1 ;dos功能调用,键盘输入并回显 int 21h ;按键(键入的ascii码值在al中) cmp al,1bh ; ‘Esc’退出 jz exit lea si, freq and ax,0fh ;ax中得到按键值1~7。 shl ax, 1;双字节 sub ax, 2;地址从0000开始 add si, ax ;si 指向对应的频率值 mov di, [si] mov dx, 12h mov ax, 34f0h
资源详情
资源评论
资源推荐
3.5 8253 定时器实验
一、实验目的和内容
1.掌握 8253 定时器的工作原理及应用。
2.掌握中断程序设计方法。
3.完成 8253 定时器的编程实验。
二、实验电路及说明
编程要求:
1、利用 PC 机内部定时器 0,设计并实现一个数字式计时时钟。显示格式
为 hh:mm:ss(hh 代表时,mm 代表分,ss 代表秒)。
PC 系列机 8253 的接口电路如图 3.7 所示,3 个计数器的时钟输入频率为
1.1932MHZ。系统分配给 8253 的端口地址为 40H~43H。PC 机启动后,计
数器 0 被设置为方式 3,计数初值为 0,即每隔 55ms 中断一次,1 秒中断
18.2(1000÷55)次,若按初始设定,无法实现 1s 精确定时。需重新设定定
时器 0 的时间常数,让其每隔 10ms 中断一次;再设定一个软件计数器,初始
值为 100。每中断一次,软件计数器减 1,当软件计数器减为 0,则定时 1s。
在 PC 机系统中,定时器 0 的中断类型号为 08H,但在中断向量表中,存放
08H 中断服务程序入口地址的单元中实际存放的是 INT 1CH 指令,因此,当
定时器 0 中断时,实际是转至 INT 1CH 的中断服务程序入口处。
图 3.7 PC 机 8253 定时器接口
2、利用 PC 机内部 8253 定时器 0,编写音乐演奏程序。
键盘演奏音乐参考程序
hero2790
- 粉丝: 0
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论5