java怎么拦截某个对象
743
2022-11-03
8253接口芯片的引脚图和引脚定义及在PC机中的应用代码说明
下面介绍8253引脚图和内部结构及引脚定义等。
8253由以下几个部分组成:
(1) 数据总线缓冲器(8位、三态、双向);
(2) 读/写控制逻辑;
CS:片选信号,低电平有效;
RD:读信号,低电平有效;
WR:写信号,低电平有效
A1A0:端口选择信号
(3) 三个通道( 0 ~ 2);
8253引脚图
当A1A0分别为00 01 10 11时分别选中三个通道和控制字寄存器在8088系统中,8088的A1A0分别与8253的A1A0相连在8086系统中,通常将8253的8位数据线与8086的低8位相连,即使用偶地址,所以8086的A2A1分别与8253的A1A0相连
表8-4 控制功能表
CS | RD | WR | A1A0 | 功 能 |
0 | 1 | 0 | 0 0 | 写计数器0 |
0 | 1 | 0 | 0 1 | 写计数器1 |
0 | 1 | 0 | 1 0 | 写计数器2 |
0 | 1 | 0 | 1 1 | 写控制字寄存器 |
0 | 0 | 1 | 0 0 | 读计数器0 |
0 | 0 | 1 | 0 1 | 读计数器1 |
0 | 0 | 1 | 1 0 | 读计数器2 |
0 | 0 | 1 | 1 1 | 无操作 |
1 | X | X | X X | 禁止使用 |
0 | 1 | 1 | X X | 无操作 |
计数器(0 ~ 2)即三个计数器/定时器通道。每个通道包括:8位控制字寄存器、16位计数初值寄存器、减一计数器和输出锁存器。作定时器用:其CLK端上的输入脉冲应是标准的、精确的;作计数器用:对其CLK端上的脉冲计数,脉冲宽度可以不等。采用减一计数器,为0时,从OUT端上输出一个脉冲定时时间 = 时钟脉冲周期X预置的计数初值
每个通道: | CLK | 计数脉冲或标准脉冲输入端 |
OUT | 计数值为0时输出一个脉冲 | |
GATE | 允许端,当GATE=1时允许计数 |
例8.5.2: 设计一个程序,使扬声器发出600Hz频率的声音,按下任意键声音停止。PC机的发声系统以计数器2为核心。CLK2的输入频率1.19MHz,改变计数器初值可以由OUT2得到不同频率的方波输出对于600Hz,计数初值1.19MHz/600Hz=1938,发声系统受8255芯片B口的两个输出端线PB0、PB1的控制。PB0为1,使GATE2为1,计数器2能正常计数。PB1为1,打开输出控制门。
CODE SEGMENT
ASSUME CS:CODE
START:IN AL, 61H //8253端口
OR AL, 03H
OUT 61H, AL
MOV AX, 1983
OUT 42H, AL
MOV AL, AH
OUT 42, AL
MOV AH, 01H
INT 21H
IN Al, 61H
AND AL, 0FCH
OUT 61H, AL
MOV AH, 4CH
INT 21H
CODE ENDS
END START
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~