S32K148 flexcan driver

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

S32K148 flexcan driver

1,686件の閲覧回数
pranitekatpure
Contributor I
call to function "FLEXCAN_DRV_Init()", global data is getting changed. In debugging it is obsevered that after few iteration of for loop: for (i = 0; i < FEATURE_CAN_MAX_MB_NUM; i++) { osifStat = OSIF_SemaCreate(&state->mbs[i].mbSema, 0U); if (osifStat != STATUS_SUCCESS) { for (j = 0; j < i; j++) { (void)OSIF_SemaDestroy(&state->mbs[j].mbSema); } return STATUS_ERROR; } state->mbs[i].isBlocking = false; state->mbs[i].mb_message = NULL; state->mbs[i].state = FLEXCAN_MB_IDLE; } it is changing global variables. Which is leading to a segmentation fault. what could be the reason?
0 件の賞賛
返信
4 返答(返信)

1,644件の閲覧回数
pranitekatpure
Contributor I

@Robin_Shen could you help with it.

0 件の賞賛
返信

1,629件の閲覧回数
Robin_Shen
NXP TechSupport
NXP TechSupport

I am sorry for not help you.
I am not familiar with this part, maybe you can post this question at S32 Design Studio.
My colleague should be able to help you.

Have you try to right click the mbs[i] and View Memory?

It will show you the address of them. Maybe you can check if there is a conflict with yours.

view memory.png

0 件の賞賛
返信

1,670件の閲覧回数
pranitekatpure
Contributor I

Hi Robin_Shen,

I'm sorry I can't share data. Actually I'm using hardware independent library of CAN which is being ported with flexcan drivers. It contains multiple global objects for example object of a structure containing callback function pointers etc. One of my structure object members, which stores pointers to callback functions, are getting changed after the call to FLEXCAN_DRV_init(). I'm observing it as expression while debugging. Is this call overlapping my previously allocated memory, as it allocates 32 state->mbs[i] during run time? Also, is it possible to view the memory of MCU during a run time like FreeRTOS task memory view?

0 件の賞賛
返信

1,676件の閲覧回数
Robin_Shen
NXP TechSupport
NXP TechSupport

Hi pranitekatpure,

Would you please show me which global variables was changed?
I don’t understand what the segmentation fault you mentioned is.
If you can capture a picture show it would be better for me to understand it.

FLEXCAN_DRV_Init.png

Best Regards,
Robin

0 件の賞賛
返信