[应用相关] STM32CUBIDE 如何实现延时

[复制链接]
5576|96
dingy 发表于 2023-7-18 23:12 | 显示全部楼层
STM32都有HAL库  
pengf 发表于 2023-7-18 23:15 | 显示全部楼层
HAL_Delay函数至少会产生1ms的延时
renyaq 发表于 2023-7-18 23:18 | 显示全部楼层
TM32 CUBE MX,可以自动的生成初始化程序
supernan 发表于 2023-7-18 23:19 | 显示全部楼层
像是新版的固件将函数名更改了
Undshing 发表于 2023-7-19 23:37 | 显示全部楼层
要知道定时器频率才行吧
SantaBunny 发表于 2023-10-25 08:41 | 显示全部楼层
用HAL库默认延时函数进行延时  
abotomson 发表于 2023-11-11 13:11 | 显示全部楼层
在代码中调用HAL_GetTick()函数获取当前时间戳,例如:uint32_t current_time = HAL_GetTick();。
通过计算当前时间戳与目标时间戳之间的差值,来控制程序的执行时间,例如:while(HAL_GetTick() < target_time)。
chenci2013 发表于 2023-11-11 16:50 | 显示全部楼层
SysTick定时器是STM32单片机内部的一个24位倒计时器,可以在系统时钟(System Clock)上产生1ms的中断。通过配置SysTick定时器,可以实现1ms到1s之间的延时
hilahope 发表于 2023-11-12 09:45 | 显示全部楼层
在代码中,使用HAL库函数实现延时功能 HAL_Delay()
sdlls 发表于 2023-11-12 11:17 | 显示全部楼层
在代码中调用us延时函数,例如:HAL_Delay(1000),表示延时1000微秒,即1毫秒。
maudlu 发表于 2023-11-12 11:54 | 显示全部楼层
STM32CUBIDE提供了一些预定义的Delay函数,如__NOP()、__delay()、__udelay()等
kmzuaz 发表于 2023-11-12 12:08 | 显示全部楼层
在循环中执行一定次数的 NOP 指令,以便获得想要的延时时间。
iyoum 发表于 2023-11-12 12:41 | 显示全部楼层
使用定时器实现延时,例如 TIM6、TIM7 等。
primojones 发表于 2023-11-12 13:06 | 显示全部楼层
使用软件定时器               
burgessmaggie 发表于 2023-11-12 16:44 | 显示全部楼层
可以使用标准库中的HAL_Delay()函数实现延时
juliestephen 发表于 2023-11-12 17:07 | 显示全部楼层
利用 systick 计数器实现精确延时。
cemaj 发表于 2023-11-13 10:00 | 显示全部楼层
HAL库为STM32单片机提供了丰富的延时函数,如HAL_Delay()
hudi008 发表于 2023-11-13 13:00 | 显示全部楼层
SysTick定时器是STM32单片机内部的一个24位倒计时器,可以在系统时钟(System Clock)上产生1ms的中断。通过配置SysTick定时器,可以实现1ms到1s之间的延时
hilahope 发表于 2023-11-13 14:15 | 显示全部楼层
在代码中,使用HAL库函数实现延时功能 HAL_Delay()
beacherblack 发表于 2023-11-13 15:16 | 显示全部楼层
配置SysTick定时器,设置计数周期(Tick)和中断优先级。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部
0