Skip to main content
Associate III
August 28, 2024
Solved

Regarding OSAL Delay functions

  • August 28, 2024
  • 1 reply
  • 827 views

Dear all,

Good morning, I am facing issues with some functions in autodevkit.

The functions osalThreadDelayMilliseconds() and osalThreadDelayMilliseconds() are blocking the entire execution.

As the Autodevkit driver doesn't support the CANTP(response taken from AutoDevKit Community) so I am sending 8 bytes and then 8 bytes and so on. For this I need delay between each set of 8 bytes for this delay implementation I am using above mentioned function in different ways, but this is blocking entire CAN communication.

So Can anyone help me to figure out this issue.

 

Thanks & Regards,

Aishwarya 

Best answer by Chronal

Hi,

probably you an issue with nested interrupt.

Please, enable "Preemptable ISRs" option on "OSAL component RLA" and put in your CAN IRQ callback routine OsalEnterCritical() and OsalExitCritical() functions in order to disable interrupt during callback execution.

If problem persist, please, share your example code.

 

Luca R.

1 reply

ChronalBest answer
ST Employee
August 28, 2024

Hi,

probably you an issue with nested interrupt.

Please, enable "Preemptable ISRs" option on "OSAL component RLA" and put in your CAN IRQ callback routine OsalEnterCritical() and OsalExitCritical() functions in order to disable interrupt during callback execution.

If problem persist, please, share your example code.

 

Luca R.