首页 圈子 我的社区 微课程 问答 积分兑换 活动 投票 搜索 文章 软件 用户 相册 资料

1 STM32使用HAL库延时函数HAL_Delay()时产生1ms的误差的原理?

薛小川 发表于  2022-03-18 11:07:04

HAL库中HAL_Delay()的定义:

__weak void HAL_Delay(uint32_t Delay){
  uint32_t tickstart = HAL_GetTick();
  uint32_t wait = Delay();
   
  if(wait < HAL_MAX_DELAY){
    wait += (uint32_t)(uwTickFreq);
  }
  while((HAL_GetTick() - tickstart) < wait){
  }
}


1个回答
按投票排序 | 按时间排序

zhangls

2022-12-20 17:51:58

0支持  /  0反对

请使用8.14SP3版本或者以上,CPU属性设置72M

意见反馈