不是固定时间出现该问题,程序进入IIC超时函数时,由于HAL_GetTick()函数获取到的值没有更新,导致循环无法跳出,并且在获取计时前enable()打开中断也无用,随后看门狗复位
|
可以关掉看门狗,调试一下,看看Tick 有没有增加,或者为什么get 不到。 找到原因了也就能解决了。
系统时钟没有开启,还是HAL_IncTick()没有被调用执行
系统时钟没有开启,还是HAL_IncTick()没有被调用执行
已经开启了,是运行一段时间后复位的,关闭看门狗后发现卡在这个地方
可以关掉看门狗,调试一下,看看Tick 有没有增加,或者为什么get 不到。 找到原因了也就能解决了。 [/m ...
[md]关掉看门狗,调试结果是tick没有增加,才导致时间相减不变
关掉看门狗,调试结果是tick没有增加,才导致时间相减不变
应该可以调试再看看是不是TICK的中断出了问题,是计数逻辑问题还是中断被关闭了。