CAN handler development

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

CAN handler development

Jump to solution
1,515 Views
shrutib
Contributor I

Dear Community,

I am using s32k144 EVB with s32 design studio version R1.2018. While calling CAN_init and CAN_deinit from ISR routine, the code got stuck into vPortEnterCritical(). Please find the attachment for more details. Looking forward to your reply.

 

Tags (4)
0 Kudos
1 Solution
1,237 Views
raresvasile
NXP Employee
NXP Employee

Hi Shruti,

CAN_Init and CAN_Deinit are using FreeRTOS API to create/destroy semaphores. This is the reason why the FreeRTOS flow will block into assert.

If CAN driver initialization and deinitialization are made outside of the ISR, then everything should work ok.

Best regards,

Rares

View solution in original post

0 Kudos
4 Replies
1,237 Views
raresvasile
NXP Employee
NXP Employee

Hi,

Is your application using SDK? 

Thank you,

Rares

0 Kudos
1,237 Views
shrutib
Contributor I

Hi Rares,

Yes, RTM SDK v2.0.0, also using FreeRTOS v8.2.1 

Thanks,

Shruti.

0 Kudos
1,238 Views
raresvasile
NXP Employee
NXP Employee

Hi Shruti,

CAN_Init and CAN_Deinit are using FreeRTOS API to create/destroy semaphores. This is the reason why the FreeRTOS flow will block into assert.

If CAN driver initialization and deinitialization are made outside of the ISR, then everything should work ok.

Best regards,

Rares

0 Kudos
1,237 Views
shrutib
Contributor I

Hi Rares,

Currently we did the same as you told. It means there is no other way to call CAN_init and CAN_deinit through ISR. Thanks for your time.

Regards,

Shruti.

0 Kudos