cancel
Showing results for 
Search instead for 
Did you mean: 

like to know about __disable_irq() effect on systick

kasi viswanadh
Associate II

systick was getting disabled with __disable_irq() . is it possible to use __disable_irq() without causing any effect to systick?

1 ACCEPTED SOLUTION

Accepted Solutions
David SIORPAES
ST Employee

Hello,

I am afraid it is not possible using __disable_irq() but you can do it this way: set the SysTick priority to higher value than other interrupts and then use CMSIS-Core __set_BASEPRI() function to mask them out.

View solution in original post

3 REPLIES 3
David SIORPAES
ST Employee

Hello,

I am afraid it is not possible using __disable_irq() but you can do it this way: set the SysTick priority to higher value than other interrupts and then use CMSIS-Core __set_BASEPRI() function to mask them out.

S.Ma
Principal

Well, as long as interrupts are not disabled too long, (about 1 msec), the IRQ is only delayed.

The most challenging task in embedded SW development is to estimate:

  • How long each interrupt takes
  • How late each interrupt can be without malfunction

Then interrupt priorities and MCU core frequency can be properly set.

Thank you david its very helpful.

if I use __set_BASEPRI() , and systick interrupt occurs when cpu is doing SPI read/write operation can it cause any errors in spi operation?