2014-04-13 04:46 AM
Hello!
When using CubeMX and going to Configuration and System --> NVIC ''System tick timer'' Interrupt is enabled. When I disable it, click apply and ok and then open NVIC dialog again it's enabled instead of disabled. With other interrupts this behaviour takes not place. I don't need the Systick and therefore my question is: How can I manage to disable it with the CubeMX software? Thanks for answers! Florian2014-04-15 12:50 AM
Hi,
You are lucky, my ''systick timer it'' is ON but never occured ...2014-04-15 05:50 AM
Hello Florian
The systick handler is mandatory for the use of HAL. MX is made to use HAL and so the systick interrupt is always enabled. Without this, you cannot use HAL even for a simple toggle on a port for a LED. Also, I agree with Thierry, have a systick interrupt running is a good point to start your application. Rémi2015-10-07 03:15 PM
I'm not sure this is true; GPIO (and almost anything else) doesn't depend on systick.
I also need it disabled; I have a time-sensitive application and don't need interrupts all the time. Sure I can make it low priority but why if I don't need it? Cat2015-10-07 03:35 PM
I was able to easily disable the systick by calling
SysTick->CTRL = 0; //Disable Systick
in the first ''user code'' section after ''HAL_Init()
;'' Everything else still works; I don't know if it will keep doing so but I don't know why anything (no RTOS) would depend on the systick if I don't make it so.2015-10-07 05:35 PM
Hello,
Many hal drivers' funtions used systick, such as for timeout, HAL_Delay() used it too.2024-07-06 09:26 PM
I did a trick that for me worked: I disabled the SysTick interrupt because my system was too time critical; I couldn't allow Interrupts I was not generating. But I called the SysTick handler from the main loop, an vaguely same frequency. Delays, etc. relying on systick were out of wack but still happening eventually. And I got full control of the system timing.