打印
[MCU]

单片机定时器问题

[复制链接]
1104|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yml1104|  楼主 | 2020-4-13 13:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
ayb_ice| | 2020-4-13 14:20 | 只看该作者
定时器设置2倍频?

是什么意思。

使用特权

评论回复
板凳
yml1104|  楼主 | 2020-4-13 14:34 | 只看该作者
ayb_ice 发表于 2020-4-13 14:20
定时器设置2倍频?

是什么意思。

就是变成32MHZ吧?芯片手册上写的HIRC的2倍频 HIRC是16MHZ的

使用特权

评论回复
地板
ayb_ice| | 2020-4-13 14:42 | 只看该作者
yml1104 发表于 2020-4-13 14:34
就是变成32MHZ吧?芯片手册上写的HIRC的2倍频 HIRC是16MHZ的

也就是说定时器是32M的频率

如果是51的话
计时值就是
1000*32,,初值就是65536-1000*32 = 0x8300

使用特权

评论回复
5
人中狼| | 2020-4-13 14:45 | 只看该作者
不同的单片机可能不同的算法,先根据频率,分频系数等算出定时器的频率,通过这个频率可以得出定时器每加一的时间,通过这个时间可以算出定时器是否能满足定时要求等数据

使用特权

评论回复
6
yml1104|  楼主 | 2020-4-13 14:51 | 只看该作者
ayb_ice 发表于 2020-4-13 14:42
也就是说定时器是32M的频率

如果是51的话

能解答一下为什么是32*1000吗   12MHZ为什么是直接1000?是因为有分频还是什么原因

使用特权

评论回复
7
ayb_ice| | 2020-4-13 15:03 | 只看该作者
yml1104 发表于 2020-4-13 14:51
能解答一下为什么是32*1000吗   12MHZ为什么是直接1000?是因为有分频还是什么原因 ...

标准的51,时钟是12M,定时器时钟其实是12M/12=1M,这是硬件设计的原因,所以计时1MS就是1000VS,就是1000

你现在这个芯片定时器的时钟如果是32M,那当然就是32*1000,当然这是个假设,我并不知道你说的与芯片事实是否相符,对于51来说一般不会设计成这么高的定时器时钟

使用特权

评论回复
8
yml1104|  楼主 | 2020-4-13 15:30 | 只看该作者
ayb_ice 发表于 2020-4-13 15:03
标准的51,时钟是12M,定时器时钟其实是12M/12=1M,这是硬件设计的原因,所以计时1MS就是1000VS,就是100 ...

懂了 谢谢

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

14

主题

66

帖子

0

粉丝