设PC系统机外扩了一片8254及相应的实验电路。 ① 根据由门电路构成的译码电路,分析出该片8254 的四个端口地址。其中控制口的地址是_____________(填16进制格式)。 ② 已知1号计数器的输入时钟为4MHz,要求输出2KHz的方波。请编写8254初始化程序段(采用二进制计数方式)。
时间: 2024-02-22 14:54:53 浏览: 20
① 该片8254的四个端口地址如下:
- 计数器0数据端口:0x40
- 计数器1数据端口:0x41
- 计数器2数据端口:0x42
- 控制端口:0x43,控制口的地址为0x43。
② 为了使8254输出2KHz的方波,需要进行以下操作:
1. 设置计数器1为工作模式3(即方波发生器模式),同时设置计数器1的输出为高电平。
2. 设定计数器1的初值和计数器1的计数器重载值,使得计数器1的计数频率为2KHz。
3. 将计数器1的初值和计数器重载值写入计数器1数据端口。
下面是8254初始化程序段的示例代码(汇编语言):
```
MOV AL, 00110110B ; 设置计数器1为工作模式3,同时将计数器1的输出设为高电平
OUT 43H, AL ; 将设置值写入控制端口
MOV AX, 1000000B ; 计数器1的初值,2MHz的方波需要500个时钟周期
OUT 41H, AL ; 写入计数器1数据端口的低8位
MOV AL, AH
OUT 41H, AL ; 写入计数器1数据端口的高8位
MOV AX, 10000000B ; 计数器1的计数器重载值,产生2KHz的方波
OUT 41H, AL ; 写入计数器1数据端口的低8位
MOV AL, AH
OUT 41H, AL ; 写入计数器1数据端口的高8位
```
注意,在程序中使用的是二进制计数方式,因此数字后面的“B”表示该数字为二进制。
相关问题
设PC系统机外扩了一片8254及相应的实验电路。① 根据由门电路构成的译码电路,分析出该片8254 的四个端口地址。其中控制口的地址是什么(填16进制格式)? ② 已知1号计数器的输入时钟为4MHz,要求输出2KHz的方波。请编写8254初始化程序段(采用二进制计数方式)。
① 根据8254的芯片手册,8254的四个端口地址如下:
- 端口0:计数器0的数据端口
- 端口1:计数器1的数据端口
- 端口2:计数器2的数据端口/读写控制字端口
- 控制口地址为 0x43
② 8254的计数器可以分为三个,编号分别为0、1、2。每个计数器都有一个16位的计数器值,用于指定计数器的计数范围。计数器0和计数器1都有一个输入时钟,可以选择不同的时钟源,而计数器2只有一个外部时钟输入。根据题目要求,我们需要使用计数器0输出2KHz的方波,计数器0的输入时钟为4MHz,计数范围为2KHz,那么计数器0的计数器值应该为 4000(即 0xFA0)。
8254的初始化程序段如下:
```assembly
mov al, 00110110b ; 控制字,选择计数器0,二进制计数方式,工作模式为3(方波输出)
out 43h, al ; 将控制字写入控制口(端口0x43)
mov ax, 0FA0h ; 计数器值为0xFA0,用于产生2KHz的方波
out 40h, al ; 先输出低8位
mov al, ah
out 40h, al ; 再输出高8位
```
以上程序段将控制字写入控制口,并将计数器的值写入计数器0的数据端口(端口0x40)。由于计数器值是16位的,因此需要分别输出低8位和高8位。
利用一片74LS139和一片74LS00设计一个3线-8线译码器给出电路图和真值表
74LS139是一种双2-4译码器,而74LS00是一种四输入与门。我们可以利用它们来设计一个3线-8线译码器。
首先,我们需要了解3线-8线译码器的功能。它有3个输入线(A、B、C),可以产生8个输出线(Y0-Y7),每个输出线对应一个特定的输入组合。
下面是电路图和真值表:
电路图:
```
+---+--+---+
A ---|1 +--+ 16|--- Y0
B ---|2 15|--- Y1
C ---|3 14|--- Y2
GND/Vcc -|4 74LS00 13|--- Y3
Y4 ---|5 12|--- Y4
Y5 ---|6 11|--- Y5
Y6 ---|7 10|--- Y6
Y7 ---|8 9|*********************************
相关推荐
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)