微机原理 8253/8254编程示例

   日期:2020-05-07     浏览:91    评论:0    
核心提示:微机原理 8253/8254编程示例题目已知8254各通道时钟接8MHz信号,端口地址为700H,7

微机原理 8253/8254编程示例

题目

已知8254各通道时钟接8MHz信号,端口地址为700H,702H,704H和706H。

1、 在OUT0产生周期为10µs的方波

2、 OUT1产生2KHz的连续脉冲信号

3、 OUT2产生一个最大的负脉冲

答案:

第一问

方式3可以产生方波,初始值n = 10µs * 8MHz = 80。所以我们的程序为:

MOV DX,706H ; 控制端口地址
MOV AL,00010110B ;输入控制字 通道0 只读/写计数器低字节 方式3 二进制计数
OUT DX,AL
MOV DX,700H ; 端口地址
MOV AX,80D ; 输入初值
OUT DX,AL ; 写入初值

第二问:

方式2可以产生连续脉冲信号,初始值n = 8MHz / 2KHz = 4000D。所以我们的程序为:

MOV DX,706H ; 控制端口地址
MOV AL,01110100B ; 输入控制字 通道1 先读/写计数器低字节 后读/写计数器高字节 方式2 二进制计数
OUT DX,AL ; 将控制字输入到DX
MOV DX,702H ; 通道1端口地址
MOV AX,4000D ; 输入初值到AX
OUT DX,AL ; 先写低字节
MOV AL,AH ; 取高字节
OUT DX,AL ; 后写高字节

第三问:

产生负脉冲我们可以使用方式2,这里需要注意的是,我们输出最大的负脉冲,初值n应为0。程序为:

MOV DX,706H ; 控制端口地址
MOV AL,10110010 ; 控制字 通道2 先读/写计数器低字节 后读/写计数器高字节 方式2 二进制计数
OUT DX,AL
MOV DX,704H ; 端口地址
MOV AL,0 ; 写入初值
OUT DX,AL ;先写低字节
OUT DX,AL; 后写高字节
 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服