基于STM32的Can_Festival调试问题3 -- SDO修改心跳时间过很久才有反应

修改心跳时间,最终会进入lifegrd.c 文件中的OnHeartbeatProducerUpdate()函数,原函数如图1;在注册心跳的回调函数时,原函数将Value位赋值为0,导致在SetAlarm函数中设置
NextTime==当前的Time_Cnt,进不了本次的中断,只能等Time_Cnt溢出,在++到NextTime才能触发执行回调函数,也就是一个周期,才能正常。
基于STM32的Can_Festival调试问题3 -- SDO修改心跳时间过很久才有反应
图1

将这段程序改为如下图就可以了

基于STM32的Can_Festival调试问题3 -- SDO修改心跳时间过很久才有反应