硬汉嵌入式论坛

 找回密码
 立即注册
查看: 3440|回复: 5
收起左侧

[有问必答] 请问V4-001_不一样的流水灯里面TIM频率是怎么计算的?

[复制链接]

5

主题

3

回帖

18

积分

新手上路

积分
18
发表于 2020-2-6 00:18:44 | 显示全部楼层 |阅读模式
V4-001_不一样的流水灯(软件定时器、状态机)(V1.0)
bsp_timer.c 有一段程序

uiTIMxCLK = SystemCoreClock / 2;
usPrescaler = uiTIMxCLK / 1000000 ; /* 分频到周期 1us */

#if defined (USE_TIM2) || defined (USE_TIM5)
//usPeriod = 0xFFFFFFFF; /* 407支持32位定时器 */
usPeriod = 0xFFFF; /* 103支持16位 */
#else
usPeriod = 0xFFFF;
#endif
/* Time base configuration */
TIM_TimeBaseStructure.TIM_Period = usPeriod;
TIM_TimeBaseStructure.TIM_Prescaler = usPrescaler;

假设是STM32F103芯片,SystemCoreClock=72MHz,
那么usPrescaler=72M/2/1000000=36,
则驱动计数器的时钟是72M/(36+1)=1,945,945.94594,约为2M,请问是这么计算吗?不是个整数值,貌似不对?



回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107145
QQ
发表于 2020-2-6 01:14:52 | 显示全部楼层
这段程序有点年久失修了,应该这么写,F103ZET的所有定时器都是72MHz:

uiTIMxCLK = SystemCoreClock;
sPrescaler = uiTIMxCLK / 1000000 - 1




回复

使用道具 举报

5

主题

3

回帖

18

积分

新手上路

积分
18
 楼主| 发表于 2020-2-6 21:47:56 | 显示全部楼层
感谢回答
TIM每一次的定时时间是usPeriod*(1/usPrescaler)=0xFFFF/2M=65535/2M=32.7675ms呗
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107145
QQ
发表于 2020-2-6 23:46:18 | 显示全部楼层
arm7tdmi 发表于 2020-2-6 21:47
感谢回答
TIM每一次的定时时间是usPeriod*(1/usPrescaler)=0xFFFF/2M=65535/2M=32.7675ms呗

理解错了,不是这么理解的,学习下V7用户手册的这个章节吧:

软件框架是一木一样的
http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980&extra=page%3D1


QQ截图20200206234707.png
回复

使用道具 举报

5

主题

3

回帖

18

积分

新手上路

积分
18
 楼主| 发表于 2020-2-7 23:20:53 | 显示全部楼层
有STM32F103的开发板吗?V5/V6/V7都是芯片比F103高一个档次的板吧?目前不想学高端的,能把103的搞懂了就不错了。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107145
QQ
发表于 2020-2-8 09:13:08 | 显示全部楼层
arm7tdmi 发表于 2020-2-7 23:20
有STM32F103的开发板吗?V5/V6/V7都是芯片比F103高一个档次的板吧?目前不想学高端的,能把103的搞懂了就不 ...

不是让你学这个芯片,是让你学习软件。。。软件都是一样的,仅仅是硬件平台不同

学习阶段一定不让让用什么工具把自己锁死。
回复

使用道具 举报

19

主题

150

回帖

207

积分

高级会员

积分
207
发表于 2021-11-26 10:54:01
MARK 定时器应用之高精度单次延迟实现 H7里有。

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-20 12:16 , Processed in 0.305085 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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