数码之家

 找回密码
 立即注册
搜索
查看: 981|回复: 9

[C51] 还是关于单片机定时器的疑问

[复制链接]
发表于 2023-12-26 17:40:01 | 显示全部楼层 |阅读模式

爱科技、爱创意、爱折腾、爱极致,我们都是技术控

您需要 登录 才可以下载或查看,没有账号?立即注册

x
经过坛友的指点,已经搞明白65536是定时器的最大值,用65536减去你想定时的值作为定时器的初始值,现在又有一个疑问,这里的10是代表10毫秒吗?单片机里的定时器是自动1毫秒运行一次?
  1. TH0=(65536-10)/256;      //10ms初值高8位
  2. TL0=(65536-10)%256;      //10ms初值低8位
复制代码



发表于 2023-12-26 17:46:49 | 显示全部楼层
看你主频多少,有没有分频之类的,
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-12-26 18:12:43 | 显示全部楼层
qwer1415926 发表于 2023-12-26 17:46
看你主频多少,有没有分频之类的,

主频不知道,是这种开发板:
image.png
回复 支持 反对

使用道具 举报

发表于 2023-12-26 18:43:55 | 显示全部楼层
这里的 10 代表定时器走【10格】对应的时间。

定时器走【1格】要多久,与定时器的时钟频率有关: T= 1/f_tim.
这个时钟可能是系统主时钟(晶振)分频所得,也可能直接就是系统的主时钟。

对于标准 51 单片机,系统主时钟一般为晶振(f_osc),到定时器时钟固定有 12 分频,即 f_tim = f_osc/12;
对于手推车的单片机,有 12T, 1T 两种模式,因而调整寄存器可以设定 f_tim = f_osc/1 或者 f_tim = f_osc/12;
对于现代单片机(例如STM32),从系统时钟 f_osc 到 定时器 f_tim 之间有更复杂的分频器,可以 f_tim = f_osc/N,
其中 N 可以设定为 1~最大 之间的任意整数。
回复 支持 反对

使用道具 举报

发表于 2023-12-26 18:46:42 | 显示全部楼层
使用12Mhz晶振,然后51是12T,算下来就是1ms
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-12-26 18:52:41 | 显示全部楼层
t3486784401 发表于 2023-12-26 18:43
这里的 10 代表定时器走【10格】对应的时间。

定时器走【1格】要多久,与定时器的时钟频率有关: T= 1/f_t ...

假如是用12Mhz晶振的51单片机,那定时器+1需要的时间是多久呢?
回复 支持 反对

使用道具 举报

发表于 2023-12-26 18:54:48 | 显示全部楼层
抽空我也开始学习学习
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-12-26 19:02:23 | 显示全部楼层
t3486784401 发表于 2023-12-26 18:43
这里的 10 代表定时器走【10格】对应的时间。

定时器走【1格】要多久,与定时器的时钟频率有关: T= 1/f_t ...

12M的晶振试着算了一下,应该是1us一次?
f_tim = f_osc/12=12/12=1M
T= 1/f_tim = 1/1M =1微秒
image.png
回复 支持 反对

使用道具 举报

发表于 2023-12-26 19:17:14 | 显示全部楼层
猪小呆 发表于 2023-12-26 18:52
假如是用12Mhz晶振的51单片机,那定时器+1需要的时间是多久呢?

标准51,或者手推车12T模式,12M 晶振下,定时器 +1对应 1us
回复 支持 反对

使用道具 举报

发表于 2023-12-26 19:18:12 | 显示全部楼层
猪小呆 发表于 2023-12-26 19:02
12M的晶振试着算了一下,应该是1us一次?
f_tim = f_osc/12=12/12=1M
T= 1/f_tim = 1/1M =1微秒

是的,12M 就是个方便计算的玩意
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2024-4-27 15:51 , Processed in 0.187200 second(s), 13 queries , Redis On.

Powered by Discuz!

© 2006-2023 smzj.net

快速回复 返回顶部 返回列表