initialise_monitor_handles causes SIGTRAP
Yes, this incomplete configuration is to enable semihosting (not SWO/SWV) :
you have missed the : -lc -lrdimon
the complete linker flags are :
-specs=nano.specs -u _printf_float -specs=rdimon.specs -lc -lrdimon
To use SWO/SWV:
in syscalls.c, add #include “stm32f4xx.h” (depends on your device) & (you should include CMSIS folder)
and modify the _write function :
int _write(int file, char *ptr, int len) { int DataIdx; for (DataIdx = 0; DataIdx < len; DataIdx++) { ITM_SendChar( *ptr++ ); } return len; }
After that, you can use printf to output message via printf.
To visualize the ITM output, you can use ST-Link Utility (menu : ST-LINK > Printf via SWO Viewer)
Best Regards,
Tarek