7ulp M4 core heartbeat timer period value set

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

7ulp M4 core heartbeat timer period value set

632 次查看
Anonymous
不适用

There is an m4 core within 7ulp. I am using m4 core sdk 2.11.
A power mode switch is being developed on the sdk source.
However, heartbeat timeout occurs in M4 during 7ulp boot and reboots.

confirmation result,
from the M4
heartBeatTimer = xTimerCreate("HeartBeat", APP_MS2TICK(APP_HEART_BEAT_TIMER_PERIOD_MS), pdFALSE, NULL, APP_HeartBeatTimerCallback);
generate
APP_HEART_BEAT_TIMER_PERIOD_MS is 31000.
APP_HeartBeatTimerCallback should operate at 31 seconds.
However, Callback operates at 30.6sec.
[2023-06-12 14:23:04.910] <APP_SRTM_LfclEventHandler> at heartBeatTimer Reset
[2023-06-12 14:23:35.510] Heart Beat timeout
=> 30.6

For the test, APP_HEART_BEAT_TIMER_PERIOD_MS was changed to 29000. Operation operates at 28.614sec.
[2023-06-12 18:20:03.143] <APP_SRTM_LfclEventHandler> at heartBeatTimer Reset
[2023-06-12 18:20:31.757] Heart Beat timeout
=> 28.614
There is an error.

What is the root cause?

0 项奖励
回复
1 回复

556 次查看
Manuel_Salas
NXP TechSupport
NXP TechSupport

Hello,

The responsible for do the conversion of milliseconds to Ticks is the APP_MS2TICK(APP_HEART_BEAT_TIMER_PERIOD_MS)

In the app_srtm.c file you can find the definition for APP_MS2TICK:

#define APP_MS2TICK(ms) ((ms + portTICK_PERIOD_MS - 1) / portTICK_PERIOD_MS)

 

You can try modifying the macro to change the ticks value.

 

Best regards.

0 项奖励
回复