1.8253的通道1的CLK1信号接5M时钟信号,GATE1接高电平,OUT1产生1ms的方波,OUT1接通道0的CLK0,GATE0接高电平,OUT0产生1s的方波。端口地址为80H-83H。 ①计算通道0与通道1的计数初值。②要求采用BCD码计数,请编写初始化程序段
时间: 2023-12-30 22:06:03 浏览: 129
2011年1月微型计算机及接口技术附答案.pdf
好的,针对你的问题,我做如下回答:
1. 对于通道1,它每接收一个时钟信号就会输出一个1ms的方波,因此通道1的计数初值为5M-1 = 4999999(即每秒计数5000000次)。
对于通道0,它需要接收1000个通道1的方波才会输出一个1s的方波,因此通道0的计数初值为5000(即每秒计数5000次)。
2. 以下是初始化程序段的示例,它可以设置8253芯片的通道0和通道1:
```
MOV AL, 00110110B ; 选择通道0,设置工作方式为方式 3
OUT 80H, AL ; 将 AL 的值输出到 80H 端口
MOV AL, 11001000B ; 设置通道0的计数初值的低 8 位
OUT 81H, AL ; 将 AL 的值输出到 81H 端口
MOV AL, 10111101B ; 设置通道0的计数初值的高 8 位
OUT 81H, AL ; 将 AL 的值输出到 81H 端口
MOV AL, 00110110B ; 选择通道1,设置工作方式为方式 3
OUT 80H, AL ; 将 AL 的值输出到 80H 端口
MOV AL, 11101000B ; 设置通道1的计数初值的低 8 位
OUT 81H, AL ; 将 AL 的值输出到 81H 端口
MOV AL, 11000110B ; 设置通道1的计数初值的高 8 位
OUT 81H, AL ; 将 AL 的值输出到 81H 端口
```
注意,以上代码仅供参考,实际实现中需要根据具体的硬件环境进行修改。
阅读全文