nullnullMCS-51定时/计数器的工作原理
定时/计数器中的核心部件为16位 可预置初值加1计数器。预置初值后开始计数,直至计数值产生归0溢出,可申请中断。
定时/计数器定时/计数器定时/计数器的应用
计数功能:
生产线上产品计数。每个产品通过得到一个脉冲信号,计数器记录脉冲个数,当计数值与设定值相等,启动包装机器。
检测转速。电机转动一圈发出一个脉冲,计数器记录一秒时间内脉冲个数,显示转速。
null计数方式
计数脉冲来自Tx引脚的外部负跳变脉冲。每个机器周期的S5P2状态采样Tx端口,第一个机器周期为“1”,第二个为“0”,则计数器加1。
单片机需两个机器周期识别1次计数,所以最大计数频率为1/24*fosc。外部事件高电平在改变之前至少保持1个机器周期。nullMCS-51的加1计数器
计数器是两个8位特殊功能寄存器THx和TLx
定时计数器有4种工作方式,由工作方式控制寄存器TMOD设定工作方式
启停与中断控制寄存器TCON实现控制功能。nullTMOD方式寄存器(89H)T1T0null计算时间常数X(计算初值)
计数功能:X= 2n -计数值 n:8/13/16
定时功能:X= 2n - t/T
t:定时时间,
T:机器周期=12/振荡频率null初始化编程格式:
MOV TMOD,# 方式字 ;选择方式
MOV THx,#XH ;装入Tx时间常数
MOV TLx,#XL
(SETB EA) ;开Tx中断
(SETB ETx)
SETB TRx ;启动Tx定时器
1. 按实际需要选择定时/计数功能
2. 按时间或计数长度选择方式
3. 计算时间常数null10ms计数器利用定时/计数器T0的方式1,产生10ms的定时,设系统的晶振频率为12 MHz。 确定方式字:
T0在定时的方式1时:
M1M0=01,GATE=0 ,C/T=0
方式控制字为01H 求计数初值X:
Tcy为1µS
N=10ms/1µS=10 000
X=65536-10000=D8F0H
应将D8送TH0, F0H送TL0 null源程序如下: ORG 0000H
LJMP MAIN ;跳转到主程序
ORG 0100H ;主程序
MAIN:MOV TMOD,#01H ;置T0工作于方式1
LOOP:MOV TH0,#0D8H ;装入计数初值
MOV TL0,#0F0H
SETB TR0 ;启动定时器T0
JNB TF0,$ ;TF0=0,查询等待
CLR TF0 ;清TF0
SJMP LOOP
ENDnull
本文档为【计数器1】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。