__weak uint32_t HAL_GetTick(void) { return uwTick; } __weak void HAL_IncTick(void) { uwTick++; } __weak void HAL_Delay(__IO uint32_t Delay) { uint32_t tickstart = 0; tickstart = HAL_GetTick(); while((HAL_GetTick() - tickstart) < Delay) { } } 这里使用这个延时函数有没有这种情况,当HAL_GetTick()的计数正好要溢出时,是不是延时就不准了? |
只是时间稍微长点,如果一直不复位,这个问题还是有的,关键的地方还是最好不要用,碰到致命打击。。。
你还是没有按我说的动手测试一下,答案是这个是不会有问题的,我已经告诉你结果了,结合大学里学的计算机原理,你自己去测试弄明白吧。
明白了,非常感谢!~~