Timebase source 时基解释

本文介绍了STM32在裸机运行和使用操作系统时的时基配置,强调了时基对于延时函数和其他需要时间参考的函数的重要性。在裸机环境下,通常使用SysTick或TIM1作为时基源,而在操作系统中,为避免HAL库和RTOS之间的冲突,需要为两者分别设置独立的时基,如TIMx。同时提醒开发者,共享时基可能导致计时混乱和程序错误,建议在资源充足的情况下使用独立时基。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.软硬件版本信息:

STM32Cube Mx 5.30
Keil 5.29.0.0
STM32H750XB

二.时基

裸机运行时只需要维护一个时基就可以了,在加上操作系统时我们需要提供第二个时基来保证hal库和操作系统同时运行
运行需要的时基:
1.HAL的时基:Timebase Source
2.OS的时基: 使用操作系统时

1.为什么要有时基

时基就是为运行程序时提供一个时间,比如延时函数,在HAL库和操作系统都有,还有其他需要提供时钟的函数,而时基就是为这些需要时钟的函数提供一个时间线(说简单点就是给他一个表,让他计时)。要明白这个不是RCC。

2.裸机运行

裸机运行时时基的配置:
在这里插入图片描述
这是默认配置,也就是CubeMX在裸机运行时推荐使用滴答定时器来作为时钟源,当然也可以选用定时器TIM1或者其他。

(1)默认配置SysTick

在生成的工程中stm32h7xx_hal.c中的初始化HAL库的函数 HAL_Init(void);
下面展示一些 内联代码片

HAL_StatusTypeDef HAL_Init(void)
{
#if defined(DUAL_CORE) && defined(CORE_CM4)
   /* Configure Cortex-M4 Instruction cache through ART accelerator */
   __HAL_RCC_ART_CLK_ENABLE();                   /* Enable the Cortex-M4 ART Clock */
   __HAL_ART_CONFIG_BASE_ADDRESS(0x08100000UL);  /* Configure the Cortex-M4 ART Base address to the Flash Bank 2 : */
   __HAL_ART_ENABLE();                           /* Enable the Cortex-M
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Particle-ROS

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值