Loading...
 

Zephyr project on STM32

   Zephyr Workbench, a VSCode extension to manage Zephyr on STM32.
It enables users to easily create, develop, and debug Zephyr applications.
Main features:
  • Install host dependencies.
  • Import toolchain and SDK.
  • Create, configure, build and manage apps.
  • Debug STM32.
You can directly download it from the VSCode marketplace
For more details, visit the Zephyr Workbench
Location : OpenSTM32 Community Site » Documentation » System Workbench for STM32 » User Guide » Debugging a project Debugging a project

Debugging a project

The debug is displayed into the “Debug perspective”. This page consists on a command toolbar and views related to the debug features.

Debugging commands

  • Instruction step mode
    • To go through the code step by step. In Disassembly view, the step by step mode is attach to the assembler code.

  • Skip all breakpoints
    • To disable all the breakpoint previously set.

  • Step over
    • To step over (without entering) the next function at the currently executing line code (while you are in suspended mode).

  • Step into
    • To step into the next function at the currently executing line code (while you are in suspended mode).

  • Resume
    • To resume the execution of the currently suspended debug target.

  • Suspend
    • To halt the execution of the currently selected thread in the debug target. In suspended mode, you can examine the stack frames.

  • Terminate
    • To terminate the selected debug target.

  • Disconnect
    • To terminate the connection between the debugger and the remote debug target.

  • Remove
    • To remove the selected debug target (if the target is terminated).

Debugging views

  • Debug

The Debug View allows you to manage the debugging or running of a program in the workbench. It displays the stack frame for the suspended threads for each target you are debugging. Each thread in your program appears as a node in the tree. It displays the process for each target you are running.

  • Console

The Console View displays a variety of console types depending on the type of development and the current set of user settings.

  • Breakpoints

The Breakpoints view lists all the enabled or disabled breakpoints and show the location in the source code.

  • Disassembly

The Disassembly view shows the loaded program as assembler instructions mixed with source code for comparison. The currently executing line is indicated by an arrow marker and highlighted in the view. You can do the following tasks in the Disassembly view:
- Set breakpoints at the start of any assembler instruction
- Enable and disable breakpoints and their set their properties
- Step through the disassembly instructions of your program
- Jump to specific instructions in the program

  • Variables

The Variables View displays information about the variables associated with the stack frame selected in the Debug View. When debugging a C/C++ program, variables can be selected to have more detailed information be displayed in the Detail Pane.

  • Registers

The Registers view of the Debug perspective lists information about the registers in a selected stack frame. Values that have changed are highlighted in the Registers view when your program stops.

  • I/O Registers

The I/O Registers view of the Debug perspective lists information about the target peripherals registers. To visualize the registers value, double-click on it. The registers in read mode are enlighten in green.

  • Memory

The Memory view of the Debug perspective lets you monitor and modify your process memory. The process memory is presented as a list of so called memory monitors. Each monitor represents a section of memory specified by its location called base address. Each memory monitor can be displayed in different predefined data formats - memory renderings. The debugger supports five rendering types - hexadecimal (default), ASCII, signed integer and unsigned integer. The default rendering is displayed automatically on the monitor creation.