4)计数器0~28253内部有3个结构完全相同的计数器:计数器0、计数器1和计数器2。每个计数器的输入和输出都决定于本身所带的控制寄存器的控制字,互相之间工作完全独立每个计数器通过3个引脚和外部联系:时钟输入端CLK门控信号输入端GATE输出端OUT。每个计数器内部有:11个8位控制寄存器CW11个16位计数初值寄存器CR11个16位减1计数执行部件CB1个16位输出锁存器OL
4)计数器0~2 ➢ 8253内部有3个结构完全相同的计数器:计数器0、计数器1 和计数器2。 ➢ 每个计数器的输入和输出都决定于本身所带的控制寄存器的 控制字,互相之间工作完全独立。 ➢ 每个计数器通过3个引脚和外部联系: ◼ 时钟输入端CLK ◼ 门控信号输入端GATE ◼ 输出端OUT。 ➢ 每个计数器内部有: ◼ 1个8位控制寄存器CW ◼ 1个16位计数初值寄存器CR ◼ 1个16位减1计数执行部件CE ◼ 1个16位输出锁存器OL
8253的工作原理由程序首先写控制字给控制寄存器,再写计数初值给相应计数器,初值在CR中保存,并送CE中,在GATE门控信号允许或触发下,CE便开始对CLK脉冲进行减I计数,直到计数值被减到O时,计数结束或本周期结束,输出OUT端产生相应波形。输出信号的波形由事先规定的工作方式决定并受控于GATE信号。在减1计数过程中,CE中当前的计数值同时送给OL。因此,若想要知道计数过程中的当前计数值,则必须用指令将当前值锁存,然后从OL中读出,同时又不影响CE的连续计数注意:不能直接从CE中读出。计数初值寄存器CR高8位低8位CLKOUT低8位高8位计数执行部件CEGATE高8位低8位输出锁存器OL
8253的工作原理 ➢ 由程序首先写控制字给控制寄存器,再写计数初值给相应计数器,初值在CR中保存,并 送CE中,在GATE门控信号允许或触发下,CE便开始对CLK脉冲进行减l计数,直到计数 值被减到0时,计数结束或本周期结束,输出OUT端产生相应波形。 ➢ 输出信号的波形由事先规定的工作方式决定并受控于GATE信号。 ➢ 在减1计数过程中,CE中当前的计数值同时送给OL。因此,若想要知道计数过程中的当 前计数值,则必须用指令将当前值锁存,然后从OL中读出,同时又不影响CE的连续计数。 注意:不能直接从CE中读出
8253的引脚信号和功能8D9CLKo7D11-GATEOC6>计数器0510+OUToS数据线:4D丽丽3Intel-CLKi1528253GATE114计数器113OUTi2223控制线NN191820-CLK2CS1621-GATE计数器2Vco2417+OUT2电源线12GND
8253的引脚信号和功能 数据线 控制线 电源线 D0 D1 D2 D3 D4 D5 D6 D7 RD WR A0 A1 CS VCC GND 8 7 6 5 4 3 2 1 22 23 19 20 21 24 12 Intel 8253 9 11 10 15 14 13 18 16 17 CLK0 GATE0 OUT0 CLK1 GATE1 OUT1 CLK2 GATE2 OUT2 计数器 0 计数器 1 计数器 2
D,~D.数据线双向三态输入/输出数据线,与系统数据总线柜连,供8253与CPU之间传送数据、命令信息用
D7 ~D0数据线 双向三态输入/输出数据线,与系统数据总线相 连,供8253与CPU之间传送数据、命令信息用
CS、RD、WR、A}、Ao信号CS片选信号输入,低电平有效只有在保持低电平的情况下,8253才能被选中,才能对它进行读/写操作。RD读信号输入,低电平有效有效时,表示CPU正在对8253的一个计数器进行读操作。WR写信号输入,低电平有效有效时,表示CPU正在对8253的一个计数器写入计数初值或者对控制寄荐器写入控制学A1、A.地址线3个独立的计数器各有一个端口地址,另外三个控制寄存器共用一个端口地址,所以8253共有4个端口地址。当A,Ao=11时,为控制寄存器端口;当A,Ao=00、01、10时,分别为计数器0、计数器1、计数器2的端口
CS、RD、WR、A1、A0信号 ➢ CS片选信号 ◼ 输入,低电平有效。 ◼ 只有在保持低电平的情况下,8253才能被选中,才能对它进行读/写 操作。 ➢ RD读信号 ◼ 输入,低电平有效。 ◼ 有效时,表示CPU正在对8253的一个计数器进行读操作。 ➢ WR写信号 ◼ 输入,低电平有效。 ◼ 有效时,表示CPU正在对8253的一个计数器写入计数初值或者对控 制寄存器写入控制字。 ➢ A1、A0地址线 ◼ 3个独立的计数器各有一个端口地址,另外三个控制寄存器共用一个 端口地址,所以8253共有4个端口地址。 ◼ 当A1A0=11时,为控制寄存器端口; ◼ 当A1A0=00、01、10时,分别为计数器0、计数器1、计数器2的端口