Skip to content

eclipse-cdt-cloud/vscode-peripheral-inspector

Repository files navigation

Embedded Peripheral Inspector

Standalone SVD Viewer extension extracted from cortex-debug

Specifying SVD Files

The SVD Viewer extension uses System View Description (SVD) files to display information about the selected part, including the Cortex Peripherals view.

Choose one of the following methods to specify your SVD file in your launch.json configuration(s):

Use the CMSIS pack asset service

Set the definitionPath configuration variable to a qualified pack reference in the form <vendor>::<device family pack>@<version> e.g.:

{
    ...
    "definitionPath": "NXP::K32L3A60_DFP@15.0.0"
    ...
}

If the pack supports multiple devices and/or processors, you will be prompted to select these. Alternatively, set them in your configuration using the optional deviceName and processorName variables:

{
    ...
    "definitionPath": "NXP::K32L3A60_DFP@15.0.0",
    "deviceName": "K32L3A60VPJ1A",
    "processorName": "cm4"
    ...
}

TIP: The pack reference and device name can be automatically derived if you use the Arm Device Manager extension in VS Code using these commands:

{
    ...
    "definitionPath": "${command:device-manager.getDevicePack}",
    "deviceName": "${command:device-manager.getDeviceName}"
    ...
}

Install a Cortex Debug Support Pack

Find a Cortex Debug Support Pack for your device and install it. You can then specify just the deviceName variable in your launch configuration:

{
    ...
    "deviceName": "STM32F439BI"
    ...
}

Specify the path to your SVD file

You can obtain an SVD file from a CMSIS pack or from your device manufacturer. For example use these instructions for ST devices.

Other vendors may ship SVD files when you install their software or device packs or you could write your own custom SVD file.

Once you have the SVD file, specify the location of it in your launch.json using the definitionPath variable:

{
    ...
    "definitionPath": "${workspaceFolder}/STM32F103.svd"
    ...
}

Extending Peripheral Inspector

It is possible to extend the Peripheral Inspector with new file extension providers in your VSCode extension. This method will provide reading new file formats and load the peripherals information into the Peripheral Inspector.

{
    ...
    "definitionPath": "${workspaceFolder}/STM32F103.<customFileExtension>"
    ...
}

For more details about the implementation, please check the Extending Peripheral Inspector document.

Settings

All variable key names used to extract data from debug launch configurations can be modified. This allows variable name clashes to be avoided as well as the need to duplicate configuration entries.

The following list outlines the setting names and default values:

  • peripheral-inspector.definitionPathConfig - Debug configuration key to use to get the SVD path (default definitionPath)
  • peripheral-inspector.deviceConfig - Debug configuration key to use to get the device name (default: deviceName)
  • peripheral-inspector.processorConfig - Debug configuration key to use to get the processor name (default: processorName)