For hardware, I am using on STM32 microcontrollers. I have a Black Magic Probe programmer/Debugger and I am targeting a 1Bitsy development board. I also have an STM32F072B-DISCOVERY board that includes an integrated ST-Link.
I have dabbled with a handful of different tool sets for writing embedded code, but have not really been happy with most of them.
Recently, I have tried Microsoft’s Visual Studio Code, aka VSCode. It is a free, extensible, general-purpose code editor, and I really like it! It doesn’t have any built-in compilers or debuggers, but can integrate with them to act like an IDE.
Using VSCode for embedded software seems a little off the beaten path. I have found bits and pieces of information, and have solved some puzzles on my own. While I don’t have everything figured out yet, I thought I should collect what I’ve done in one place and share it.
First, these are all of the software tools I’m using:
- Visual Studio Code (obviously!)
- C/C++ – Language plugin provides syntax checking, IntelliSense completion, and other helpful features
- Native Debug – Debugging plugin that works with GDB
- GNU ARM Embedded Toolchain – Includes the GCC compiler and GDB debugger for ARM processors
- MinGW and MSYS – Includes a version of GNU Make for Windows
This series will cover the following steps:
- Include Paths
- Defines
- Build Tasks
- Debugging with Black Magic Probe
- Debugging with ST-Link
Here’s hoping you’ll get round to parts 4 and 5 – would be a great pity if you cut this series short just when it was getting interesting.
Would be great to read part 4 and 5. Debugging on STLink is the one thing I do not manage to run and I’m really sick of using the Systemworkbench from AC6