132***713
GR5515SDK中提供了多种延时函数:delay_ms/tim_delay_ms/sys_delay_ms,请问这几种延时原理上有什么区别?分别在什么情况下使用?
wan****com
sys_delay_ms函数实现是基于MCU指令开销计算实现。例如执行Nop指令为2个系统时钟,那么1us基于64M系统频率下,执行32次为1us,当需要delay 100us时,该函数内部会执行32 * 100个Nop指令。
delay_ms函数主要是基于ARM Cortex DWT模块的硬件计时实现,好处相比sys_delay_ms函数为不因嵌套中断造成计时累加。
tim_delay_ms函数是基于Hardware Timer模块的硬件计时实现。
在开发过程中,建议采用delay_ms函数。
打开微信,使用“扫一扫”即可关注