- 1、本文档共52页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计数与定时技术
计数/定时技术
概述
•实现定时的三种方法:
(1) 软件定时
由CPU执行指令序列所花费的时间来构成一定的时间间隔,从而达到定时的目的。
例如:
MOV CX , ××××H
HERE: LOOP HERE
优点:不需要专门的硬件设备。
缺点: 浪费了宝贵的CPU资源。
(2)不可编程的硬件定时
采用分频器、单稳电路或简易定时电路控制定时时间
(3)可编程计数器/定时器
可用软件的方法(通过初始化编程)设定或调整定时范围。
软件硬件相结合、用可编程定时器芯片构成一个方便灵活的定时电路
典型产品:ZilogZ80-CTC
Intel 8253(8254)
可编程计数器/定时器8253
1. 8253 的主要功能
(1)具有三个独立的16位计数通道;
(2)每个计数通道可按二进制或二-十进制计数;
(3)每个计数通道的计数速率可达2MHz;
(4)每个计数通道有六种工作方式;
(5)全部输入输出都与TTL电平兼容。
8253的结构
8253的内部由与CPU的接口、内部控制电路以及三个计数器通道所组成
(1) 数据总线缓冲器
这是8253与CPU的数据总线(D7~D0)连接的8位双向三态缓冲器。
CPU用输入输出指令对8253进行读写操作时的所有信息都通过这个缓冲器传送。
(2) 读/写逻辑
这是8253内部操作的控制电路,它从系统控制总线上接收输入信号,然后转换成8253内部操作的各种控制信号。
(3)控制字寄存器
当地址信号A1和A0都为1时,访问控制字寄存器。
控制字寄存器从数据总线上接收CPU送来的控制字,并由控制字的D7、D6两位的编码决定控制字写入哪个通道的控制寄存器中去。
由寄存在每个通道内的控制寄存器的内容决定该通道的工作方式,选择计数器是按二进制还是BCD数计数,并确定每个计数器初值的写入顺序。
(4)计数器0、计数器1、计数器2
这是三个计数器/定时器通道,每一个都由16位的可设置计数初值的减法计数器构成。
三个通道的操作是完全独立的。每个通道都有两个输入引脚CLK和GATE以及一个输出引脚OUT。
从编程的角度看,8253的结构框图如图所示。
“控制寄存器”及“计数初值寄存器(CR)”可由CPU写入;
“输出锁存器(OL)”可由CPU读出。
8253的引脚
8253的引脚
8253 的工作方式
8253的每个通道均可以通过编程选择6种工作方式之一:
(1) 方式0——计数到零产生中断请求(Interrupt on Terminal Count)
方式0的时序图
方式0的主要特点是:
1) 计数器只计一遍而不能自动重复工作。
•当减1计数到零时,并不自动恢复计数初值重新开始计数,且OUT输出保持为高电平。
只有CPU再次写入一个新的计数值(即使计数值相同也需再次写入),OUT才变为低电平,计数器按新写入的计数值重新开始计数。
或者CPU重新对8253设置方式0控制字,它的OUT输出也可以立即变为低电平,并等再次写入计数初值后重新开始计数。
2) CPU向CR寄存器写入计数初值后的第一个CLK脉冲(即图中用斜线标出的那个脉冲),将CR的内容送入CE,从此之后计数器才开始减1计数。
•这第一个CLK脉冲不包括在减1计数过程中。
•如果设置计数初值为N,则输出OUT是在N+1个CLK脉冲之后才变为高电平。
3) 在计数过程中,可由GATE信号控制暂停计数。
•当GATE变低时,计数暂停;
•当GATE变高后又接着计数。
方式0计数过程中改变GATE信号
4) 在计数过程中也可改变计数值。
在写入新的计数值后,计数器将立即按新的计数值重新开始计数,即改变计数值是立即有效的。
当按新的计数值减1计数到0时,输出OUT变为高电平。
(2) 方式1—硬件可重复触发的单稳态触发器
方式1的时序
在方式1,当CPU输出控制字后(WR的上升沿),OUT输出变为高电平(若原为高电平,则保持为高电平);
在CPU写入计数初值后,计数器并不开始计数,直至门控信号GATE上升沿(即门控触发信号)出现,并在其下一个CLK脉冲的下降沿,CR的内容送入CE,同时使OUT输出变为低电平,然后开始对随后的CLK脉冲进行减1计数。
在计数过程中,OUT一直维持为低电平,直至减1计数到0时,OUT输出变为高电平。
即由于GATE上升沿的触发,使OUT输出端产生一个宽度为N个CLK周期的负脉冲。
此后,若再次由GATE上升沿触发,则输出再次产生一个同样宽度的负脉冲。
方式1的主要特点是:
1)若设置计数初值为N,则输出负脉冲的宽度为N个CLK脉冲周期。
2) 当计数到零时,可再次由GATE上升沿触发,输出同样宽度的负脉冲,而不必重新写入计数初值。
3) 在计数过程中(输出负脉冲期间),可由GATE上升沿再触发。并使计数器
文档评论(0)