C51定时器几个周期及定时计算

一、几个周期详解

  1. 时钟周期:时序中最小单位
    1/时钟源频率
    11.0592M=1/11059200秒

  2. 机器周期:单片机完成一个操作的最短时间,但是主要针对汇编而言,汇编下每一个机器周期都是每条语句的整数倍,而c语句时间不确定,c51统一标准一个周期为12个时钟周期也就是12/11059200

  3. 定时器计数周期:统一标准为机器周期12/11059200

二、定时器计数\定时计算

一个机器周期为12x1/晶振(假如晶振为11.0592M)那么一个定时器加一的的时间为12x1/11059200=1.09us,假如定时50ms那么50000us/1.09us=45872则65536—45872=15536就是初值为高8位的值

写程序可以不用
计算初值的公式方法适用方式一:
TH0=(65536-N)/256
TL0=(65536-N)%256

万能计算:
N(需要计数个数)=总定时时间/指令周期(机器周期)然后将 总值—N再换成16进制高2位为TH0低2位TL0

三、中断服务程序写法

起处理作用所以无返回值
void 函数名()interrupt 中断号
{
服务程序
}
记:中断号

  • INT0 0
  • T0 1
  • INT1 2
  • T1 3
  • TI/RI 4
  • T2 5
    定时器一启动就会一直执行定时中断功能
  • 5
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值