第十一章 可编程定时什计数器8253
第十一章 可编程定时/计数器8253
本章重点】 本章重点介绍可编程定时器/计数器 8253的内部结构、6种工作方式及初始化 编程应用。 本章难点 本章难点是可编程定时/计数器8253 的引脚结构、6种工作方式的区别及使用 场合,灵活掌握初始化编程应用
【本章重点】 本章重点介绍可编程定时器/计数器 8253的内部结构、6种工作方式及初始化 编程应用。 【本章难点】 本章难点是可编程定时/计数器8253 的引脚结构、6种工作方式的区别及使用 场合,灵活掌握初始化编程应用
11.18253花片内部结构 可编程定时器8253的外部引线如图11-1所示,相应的内 部结构框图如图11-2所示 CLKo DDDDDDDD GATE OUT CLK ATE OUT CLK. RD Gate2 WR OUT2 A A GND 图11-18253外部引线图
11.1 8253芯片内部结构 可编程定时器8253的外部引线如图11—1所示,相应的内 部结构框图如图11—2所示。 D0 D3 D1 D2 D4 D5 D6 D7 A0 A1 CLK0 GATE0 OUT0 CLK1 CLK2 OUT1 OUT2 VCC GND CS WR RD GATE1 GATE2 图11-1 8253外部引线图
<+CLK 数据 计数 总线 ←GATE D 器0 缓冲器 RD 读/写 CLKI 计数 逻辑 片内总线 -GATEI A 器I CS OUTI < CLK 控制 寄存器 +GATE 器2 →OUT2 图11-28253的内部结构
图11-2 8253的内部结构 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? RD CS WR A0 A1 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? D0˜ D7 CLK0 GATE0 OUT0 CLK1 CLK2 GATE1 GATE2 OUT1 OUT2 寄存器 控制 缓冲器 总线 数据 逻辑 读/写 器0 计数 器1 计数 器2 计数 线 总 内 片
8253与总线相连接的引线主要是 DoD:双向数据线.用以传送数据和控制字.计数 器的计数值亦通过此数据总线进行读写。 S:输入信号.低电平有效.当它有效时,才能选中 该定时器芯片,实现对它的读或写 RD:读控制信号,低电平有效 WR:写控制信号,低电平有效 以上两信号输入到8253上,与其他信号一起,共同完成 对8253的读写操作
8253与总线相连接的引线主要是: Do—D7:双向数据线.用以传送数据和控制字.计数 器的计数值亦通过此数据总线进行读写。 CS:输入信号.低电平有效.当它有效时,才能选中 该定时器芯片,实现对它的读或写. :读控制信号,低电平有效. :写控制信号,低电平有效. 以上两信号输入到8253上,与其他信号一起,共同完成 对8253的读写操作. RDWR
A。、A1为8253的内部计数器和一个控制寄存器的 编码选择信号,其功能如下: A。 00可选择计数器0 01可选择计数器1 10可选择计数器2 11可选择控制寄存器 CLK02:是每个计数器的时钟输入端,计数器对此时 钟信号进行计数.CLK最高频率可达2MHz GATE:叫门控信号,即计数器的控制输入信号,用来 控制计数器的工作。 OUT2:计数器输出信号,用来产生不同方式工作时 的输出波形
A。、Al为8253的内部计数器和一个控制寄存器的 编码选择信号,其功能如下: Al A。 0 0 可选择计数器0 0 1 可选择计数器1 1 0 可选择计数器2 1 1 可选择控制寄存器 CLK0~2:是每个计数器的时钟输入端,计数器对此时 钟信号进行计数.CLK最高频率可达2MHz。 GATE0~2:叫门控信号,即计数器的控制输入信号,用来 控制计数器的工作。 OUT0~2:计数器输出信号,用来产生不同方式工作时 的输出波形.
1128253工作方式 1.方式0(计数结束产生中断) 在这种方式下,计数器对CIK输入信号进行减法计数,每 个时钟周期计数器减1 当设定该方式后,计数器的输出OUT变低.设置装入计数 值时也使输出OUT变低 当计数减到零—计数结束时,输出OUT变高.该输出信 号即可以作为中断请求信号来使用. 如果在计数过程中修改计数值,则写入第一个字节使原先 的计数停止。写入第二个字节后,开始以新写入的计数值重新 计数。 上面所说的计数过程受到计数器的门控信号GATE的控制。 当GATE为高电平时,允许计数;若GATE为低电平时,则禁止 计数
11.2 8253工作方式 1.方式0 (计数结束产生中断) 在这种方式下,计数器对CLK输入信号进行减法计数,每 一个时钟周期计数器减1. 当设定该方式后,计数器的输出OUT变低.设置装入计数 值时也使输出OUT变低. 当计数减到零——计数结束时,输出OUT变高.该输出信 号即可以作为中断请求信号来使用. 如果在计数过程中修改计数值,则写入第一个字节使原先 的计数停止。写入第二个字节后,开始以新写入的计数值重新 计数。 上面所说的计数过程受到计数器的门控信号GATE的控制。 当GATE为高电平时,允许计数;若GATE为低电平时,则禁止 计数
2.方式1(可编程单稳) 当计数值装入计数器后,要由门控信号GATE上升沿开始启 动计数。同时,记数器的OUT输出低电平。当记数结束时, OT输出高电平。这样就可以从计数器的0T端得到一个由 GATE的上升沿开始,直到计数结束时的负脉冲。若想再次获 得一个所希望宽度的负脉冲,可用GATE上升沿重新触发一次 计数器,或重新装入计数值并用GATE上升沿触发计数器。 如果在形成单个负脉冲的计数过程中改变计数值,则不 会影响正在进行的计数。新的计数值只有在前面的负脉冲形 成后,又出现GATE上升沿才起作用。但是,若在形成单个负 脉冲的计数过程中又出现新的GATE上升沿,则当前计数停止, 而后面的计数以新装入的计数值开始工作。这时的负脉冲宽 度将包括前面未计完的部分,使负脉冲加宽
2.方式1(可编程单稳) 当计数值装入计数器后,要由门控信号GATE上升沿开始启 动计数。同时,记数器的OUT输出低电平。当记数结束时, OUT输出高电平。这样就可以从计数器的OUT端得到一个由 GATE的上升沿开始,直到计数结束时的负脉冲。若想再次获 得一个所希望宽度的负脉冲,可用GATE上升沿重新触发一次 计数器,或重新装入计数值并用GATE上升沿触发计数器。 如果在形成单个负脉冲的计数过程中改变计数值,则不 会影响正在进行的计数。新的计数值只有在前面的负脉冲形 成后,又出现GATE上升沿才起作用。但是,若在形成单个负 脉冲的计数过程中又出现新的GATE上升沿,则当前计数停止, 而后面的计数以新装入的计数值开始工作。这时的负脉冲宽 度将包括前面未计完的部分,使负脉冲加宽
3.方式2(频率发生器) 在该方式下,计数器装入初值。开始工作后,计数器的输 出OUT将连续输出一个时钟周期宽的负脉冲。两负脉冲之间 的时钟周期数就是计数器装入的计数初值。这样一来,就可 以利用不同的计数值达到对时钟脉冲的分频,而分频输出就 是OUT输出。 在这种方式下,门控信号GATE用作控制信号。当GATE 为低电平时,强迫OUT输出高电平。当GATE为高时,分频 继续进行 在此方式下,计数周期数应包括负脉冲所占的那一个时 钟周期。也就是说,计数减到1时开始送出负脉冲。 在计数过程中,若改变计数值,则不影响当前的计数过 程,而在下一次计数分频时.采用新的计数值
3.方式2(频率发生器) 在该方式下,计数器装入初值。开始工作后,计数器的输 出OUT将连续输出一个时钟周期宽的负脉冲。两负脉冲之间 的时钟周期数就是计数器装入的计数初值。这样一来,就可 以利用不同的计数值达到对时钟脉冲的分频,而分频输出就 是OUT输出。 在这种方式下,门控信号GATE用作控制信号。当GATE 为低电平时,强迫OUT输出高电平。当GATE为高时,分频 继续进行。 在此方式下,计数周期数应包括负脉冲所占的那一个时 钟周期。也就是说,计数减到1时开始送出负脉冲。 在计数过程中,若改变计数值,则不影响当前的计数过 程,而在下一次计数分频时.采用新的计数值
4.方式3(方波发生器) 在这种方式下,可以从OUT得到对称的方波输出。当装 入的计数值N为偶数时,则前N/2计数过程中,OUT为高; 后N/2计数过程中,OUT为低,如此这般一直进行下去。 若N为奇数,则(N+1)/2计数过程中,OUT保持高电平;而 (N-1)/2计数期间,OUT为低电平 在此方式下,GATE信号为低电平时,强迫OUT输出高电 平。当GATE为高电平时,OU输出对称方波。 个电平将反映新计数值所规定的方波宽度,则方波的下 在产生方波过程中,若装入新的计数值
4.方式3(方波发生器) 在这种方式下,可以从OUT得到对称的方波输出。当装 入的计数值N为偶数时,则前N/2计数过程中,OUT为高; 后N/2计数过程中,OUT为低,如此这般一直进行下去。 若N为奇数,则(N+1)/2计数过程中,OUT保持高电平;而 (N—1)/2计数期间,OUT为低电平。 在此方式下,GATE信号为低电平时,强迫OUT输出高电 平。当GATE为高电平时,OUT输出对称方波。 在产生方波过程中,若装入新的计数值,则方波的下一 个电平将反映新计数值所规定的方波宽度