I finally managed to include the build flags in platformio.ini but when I try to build I get the following error:
Compiling .pio/build/nucleo_f767zi/src/FreeRTOS/Source/croutine.o
Compiling .pio/build/nucleo_f767zi/src/FreeRTOS/Source/event_groups.o
Compiling .pio/build/nucleo_f767zi/src/FreeRTOS/Source/list.o
Compiling .pio/build/nucleo_f767zi/src/FreeRTOS/Source/portable/GCC/ARM_CM7/r0p1/port.o
Compiling .pio/build/nucleo_f767zi/src/FreeRTOS/Source/portable/MemMang/heap_1.o
Compiling .pio/build/nucleo_f767zi/src/FreeRTOS/Source/portable/MemMang/heap_2.o
Compiling .pio/build/nucleo_f767zi/src/FreeRTOS/Source/portable/MemMang/heap_3.oβ
/tmp/ccl5OtCY.s: Assembler messages:
/tmp/ccl5OtCY.s:342: Error: selected processor does not support vstmdbeq r0!,{s16-s31}' in Thumb mode /tmp/ccl5OtCY.s:344: Error: instruction not allowed in IT block --
stmdb r0!,{r4-r11,r14}β
/tmp/ccl5OtCY.s:366: Error: selected processor does not support vldmiaeq r0!,{s16-s31}' in Thumb mode /tmp/ccl5OtCY.s:368: Error: instruction not allowed in IT block --
msr psp,r0β
*** [.pio/build/nucleo_f767zi/src/FreeRTOS/Source/portable/GCC/ARM_CM7/r0p1/port.o] Error 1
I think this is related to hardware floating point config or some missing build flag.
This is my project hierarchy:
pio_nucleo_freertos/
βββ include
β βββ FreeRTOSConfig.h
β βββ main.h
β βββ README
βββ lib
β βββ README
βββ platformio.ini
βββ src
β βββ FreeRTOS
β β βββ Source
β β βββ croutine.c
β β βββ event_groups.c
β β βββ include
β β βββ list.c
β β βββ portable
β β βββ queue.c
β β βββ stream_buffer.c
β β βββ tasks.c
β β βββ timers.c
β βββ main.c
βββ test
βββ README
And this is the code: