Closed JohnK1987 closed 10 months ago
The linker script looks wrong: the L432 has 64 kB RAM, but not consecutive. The linker script is assuming that: https://github.com/mbed-ce/mbed-os/blob/d9676cccca35cfba5ed60c1661cdde5998827876/targets/TARGET_STM/TARGET_STM32L4/TARGET_STM32L432xC/TOOLCHAIN_GCC_ARM/stm32l432xc.ld#L41
https://github.com/mbed-ce/mbed-os/blob/d9676cccca35cfba5ed60c1661cdde5998827876/targets/TARGET_STM/TARGET_STM32L4/TARGET_STM32L432xC/cmsis_nvic.h#L29-L41 Removing +RAM1_Size should fix it. The other part of Ram could be used by sections in code and custom linker script.
hope it helps.
I saw that too and I already tested cut out RAM1 from the calculation but still same.
Ok, the datasheet says the SRAM2 is also mapped to 0x2000 C000, so it is 64 k continuous. difficult, I don’t have this MCU.
I also do not have another board from L4 family for test if this is MCU specific or family specific.
I tested it on my L452RE board
Start!
Start!
Start!
Start!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
Toggle LED!
No issues...
I wonder, could this be a debouncing related issue? If we're seeing errors like "ISR queue overflow", could that be related to electrical noise making the ISR trigger many times in succession?
You hit the nail. I connected a rotary encoder with implemented debouncing circuit and it is working like a charm. Only when I rotate very very fast in both direction then the crash comes.
Hello, I was asked for some help with call I2C::transfer() from Interrupt. Of course I recomanded EventQueue (later just with bool flag). However the person told me he has some issues with that. So he shared very basic example and i am facing same issue that i do not understand and I think it should work.
Code
mbed_app
Console output>
Also very strange is when you comented out the printf from called evet then the crash report is changed to different one.
Same result with ARM MbedOS 6.17 and 5.15. I understand the L432KC do not have so much RAM but anyway... @multiplemonomials @JojoS62 any ideas?
BR, Jan