This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
I'm trying to run the example project, specifically the AUD demo that come with the Bluetopia stack with the STM32F4 discovery board.
I've ported the code following the process in the "Enable_STM32_Discovery.pdf". The exact processor is an STM32F407VG.
The NoOS project works, but when I try to run the FreeRTOS project the processor goes into hard fault. Using the debugger I've verified at which point of the code it does this. The stack trace is:
main() -> vTaskStartScheduler() -> xPortStartScheduler() -> vPortStartFirstTask()
The processor then faults on the svc 0 instruction within the vPortStartFirstTask function. I've tried with both the IAR and Keil IDEs.
I haven't changed the example project at all, apart from following the instructions within "Enable_STM32_Discovery.pdf". Does anybody have a solution to this problem?
Read this here about STM32F4 and priorities: www.freertos.org/RTOS-Cortex-M3-M4.html
Double-check the pins, I don't know what profile you are using.
Update the FreeRTOS to the V8.2.3.
These 3 things solved my hard fault problem.
Did you have to change the priorities at all in he demo project? If so what to?
Currently trying the AUD profile so all the jumpers are in the discovery mode.
I'll try updating the RTOS.
Thanks for your help.
From FreeRTOS page: If you are using an STM32 with the STM32 driver library then ensure all the priority bits are assigned to be preempt priority bits by calling NVIC_PriorityGroupConfig( NVIC_PriorityGroup_4 ); before the RTOS is started.