The complete documentation for Arm® Debugger and the other Keil® Studio extensions is available on Arm Developer.
The Arm Debugger extension provides access to the Arm Debugger engine for Visual Studio Code by implementing the Microsoft Debug Adapter Protocol (DAP). The Arm Debugger engine supports connections to physical and virtual targets:
- Physical targets. Either through external debug probes such as the Arm's ULINK™ family of debug probes, or through on-board low-cost debugging such as ST-Link or CMSIS-DAP based debug probes.
- Virtual targets. Using Fixed Virtual Platform models (FVPs).
See the Arm Debugger Release Note for an overview of each release.
We recommend installing the Keil Studio Pack for Visual Studio Code Desktop to quickly set up your environment. You can then import a solution example from keil.arm.com, download a μVision project from keil.arm.com, create a solution from scratch, or convert an existing μVision project.
The Arm Debugger extension works with the Arm CMSIS Solution (Identifier: arm.cmsis-csolution
), the Arm Device Manager (Identifier: arm.device-manager
), and the Arm Virtual Hardware (Identifier: arm.virtual-hardware
) extensions.
The Arm Debugger extension allows you to:
- Load images (for example, .elf, .axf, or .bin files) and debug information as per the DWARF Debugging Information Format Standard, up to and including version 5
- Run images
- Set breakpoints
- Do source and instruction stepping
- Access variables and registers
- View the content of memory
- Debug FVPs
- Access the CLI using the Debug Console
The Arm Debugger engine supports debug connections based on:
- The debug setup with CMSIS-Pack
- The integrated configuration database (configdb)
-
Armv6-M architecture
Cortex®-M0, Cortex-M0+, Cortex-M1, Arm SecurCore® SC000
-
Armv7-M architecture
Cortex-M3, Cortex-M4, Cortex-M7, Arm SecurCore SC300
-
Armv8-M architecture
Cortex-M23, Cortex-M33, Cortex-M35P
-
Armv8.1-M architecture
Cortex-M55, Cortex-M85
- Arm ULINK family
- ST-LINK from STMicroelectronics
- Probes based on the CMSIS-DAP debug adapter protocol v1.x and v2.x
Some capabilities of the Arm Debugger engine that are not yet exposed in Visual Studio Code include:
- CoreSight™ trace
- Symmetric and asymmetric multicore debug
- RTOS awareness
See the documentation for the Arm Debugger extension to run a project on your hardware and start a debug session.
To submit feedback on the Arm Debugger extension preview version, please open a bug report or a feature request.