Hey everyone,
I'm working on a project with the allknown nRF24L01+. I'm using an STM32F4-discovery to get my proof of concept working, connected with STLINK V2 via SWD.
Software setup is eclipse with the C++ library from Andy's workshop with GDB.
https://github.com/andysworkshop/stm32plus. Not that it matters, but some background..
Issue: External Interrupts.
Description: I've got the pushbutton(PA0) set-up as an EXTI-line, SPI via DMA to the nRF module, and the IRQ-pin from the nRF module also configured as EXTI, UART for printing to terminal.
So
pheriperals used:
2 EXTI, 1 SPI via DMA, UART, Systick Timer set to 1ms.
Problem: So i'm setting everything up, and looping a string to the UART-bus.
The moment i push the button on the PA0-line, the activity on the UART stops.
I've set a breakpoint to my interrupt function, but it doesn't stop at the breakpoint.
Solutions:I think the pointer reference became invalid. Maybe it was a heap-problem. Fixed it by putting the functions into the right place.
EDIT: The PA EXTI interrupt is from an example so normally it works. I've got some peripheral compliancy issues is guess.. Is the Systick timer interrupting everything ?
EDIT: Added the 'solution'. Quite dicky solution, but hey
.
Any help is welcome, also debugging-tips are welcome. For instance, how can you detect a hardfault failure via GDB&SWD ?