cancel
Showing results for 
Search instead for 
Did you mean: 

Signal handler called 0xffffffb8 after HAL_TIM_Base_Start+IT() invoked

Grizz
Associate III

New project with STM32CubeIDE version 1.10.01 Part is STM32L562Q

Configured chip, running bare metal (no RTOS). SysTick source is TIM2.

main() -> HAL_Init() -> HAL_InitTick -> HAL_TIM_Base_Start_IT()

Then, right after the TIM2 is enabled, we get <signal handler called>() at 0xffffffb8

The Segger J-LINK Plus Compact probe green LED flashes rapidly once this happens. What did the code generator leave out? This code doesn't even get out of the gate and get through HAL Init. We turn on TIM2 and we're done/hung.

3 REPLIES 3

Check IRQHandler name and binding.

Watch for .cpp or C++ compilation for name mangling.

Check Vector Table address/mapping.

Custom board, make sure boot0 pulled low.​

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..
Grizz
Associate III

Thanks, you bring up a good point on BOOT0. I was enabling trust zones and using the boot loader but decided to drop that complexity until the base design is solid. Forgot to flip BOOT0 from pullup to pulldown. You're correct in assuming I want default 0x08000000 as my default starting address.

I'll check on the name mangling, as I do have interrupt handlers for all the interrupts I use. I did notice that 4 of my vectors in device memory do not point to code. So I'm digging into that.

Thank you for the debug tips.

Mat1
Associate III

Hi Grizz,

Did you find a solution?

I have the same problem. Using FreeRtos and because of that I'm using TIM7 as timebase for the HAL.

Mat1_0-1688026944888.png