PEmicro-erlebniswelt

Debug STM32CubeIDE with PEmicro Cyclone or Multilink

STMicroelectronics' STM32CubeIDE is an Eclipse-based enablement platform that supports code development and debugging on STM32 ARM microprocessors. PEmicro Hardware Interfaces: Multilink and Cyclone can be leveraged for advanced debugging capabilities via an Eclipse GDB plugin available for installation into any Eclipse IDE from the PEmicro update site (http: //www.pemicro.com/eclipse/updates) is freely available. This blog shows the steps required to install and configure PEmicro Multilink and Cyclone debug support in STM32CubeIDE before starting a debug session.

 

Installation progressFrequency
1. Install the PEmicro GDB server for the Arm device pluginOnce Total
2. Create a launch configurationOnce per project

Installing the PEmicro GDB server for the plugin for ARM devices

a.) Start STM32CubeIDE and proceed with Help -> Install New Software to invoke the plugin installation and update wizard.

b.) Check the GNU ARM PEMicro Interface Debugging Support and PEmicro ARM Device Expansion Plugin checkboxes and click the Next button.

Installieren_des_PEmicro_GDB-Servers_fuer_das_Plugin_fuer_ARM-Geraete

Figure 1. Plugin installation wizard

c.) This will install support for PEmicro's Multilink and Cyclone hardware into STM32CubeIDE. A dialog box appears prompting you to restart STM32CubeIDE. Click Yes.

Start a debug session

a.) It's incredibly easy to start a debug session from PEmicro's debug probes with STM32CubeIDE. Open a project of your choice and enter the debug configuration manager:

Start_einer_Debug_Sitzung_STmicro
Figure 2. Launching the Debug Configuration Wizard

b.) This opens the dialog where the startup settings are configured. PEmicro interfaces require a dedicated boot debug configuration, which can be created first by double-clicking on the GDB PEMicro Interface Debugging category in the left pane.

zweiter_Schritt_oeffnen_einer_Debugsitzung_STmicro
Figure 3. Creating the debug configuration for PEmicro Launch

After the PEmicro boot debug configuration has been created, on the Main tab navigate to a current project as well as a C/C++ application .elf file that you wish to debug.

c.) On the Debug tab, the user may want to change many startup settings to control the following features:

  • ITM / Printf / Power measurements via SWO
  • exceptional catch
  • Automatically supplies/switches power to the target MCU
  • Memory area preservation during programming
  • The application object files to program and debug
  • Any additional object files to be programmed into the device (bootloader, etc.)
  • Indicates whether to reset/program a target MCU or connect (hotsync) to a running device
  • Semihosting options that allow code to emit debug messages
  • Temporary Breakpoints
  • MCU device selection
  • Debug probe selection via USB or Ethernet
  • initialization scripts

For a complete list of features, see the PEmicro plugin documentation (http://www.pemicro.com/downloads/download_file.cfm?download_id=482).

The user should properly configure at least the following settings to start a debugging session:

  • Debug the hardware interface
  • MCU device part number
  • Project and application binary to start with
  • A link to the GDB client executable
PEmicro_STmicro

Figure 4. PEmicro debug configuration settings

Wenn eine neue Start-Debug-Konfiguration erstellt wird, sollte der Benutzer zunächst die zu verwendende Debug-Hardwareschnittstelle auswählen. Der PEmicro GDB-Server unterstützt Debug-Verbindungen über die USB Multilink-Debug-Sonden von PEmicro sowie Cyclone-Programmierer über USB und Ethernet.

Abbildung 5. Auswahl der PEmicro-Debug-Schnittstelle

Figure 5. PEmicro debug interface selection

PEmicro's USB and local Ethernet devices are automatically detected. Remote networked Ethernet debug interfaces can be specified by their IP address. 

Next, the user should select a specific STM32 MCU device to debug and program.

PEmicro_stmicro3

Figure 6. STM32 device tea selection

When creating a new debug configuration, the user should ensure that a path to a GDB client is specified under GDB Client Settings in the debug configuration. STM32CubeIDE comes with a preinstalled GNU plugin for external tools: com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32.7-2018-q2-update.win32_1.0.0.201904181610. Therefore, point to the GDB Client Setting text box with a direct path to the arm-none-eabi-gdb.exe client. Please note that the actual path depends on the version of the plugin as well as the location of your STM32Cube installation directory (STM32CubeIDE\plugins\com.st.stm32cube.ide.mcu.externaltools.gnu-tools-for-stm32) may vary. 7-2018-q2-update.win32_1.0.0.201904181610\tools\bin\arm-none-eabi-gdb.exe).

Pemicro_stmicro_4

Figure 7. GDB Client Path

Once these debug settings are complete, a debug session can be started by pressing the debug button.

PEmicro's Eclipse-based GDB Server Plugin allows developers to use PEmicro's Multicink and Cyclone interfaces to program and debug ARM and PowerPC processors in a wide variety of Eclipse-based IDEs . PEmicro Eclipse GDB Plugins for ARM and PowerPC devices provide the ability to quickly develop and debug code for STM32 ARM and SPC5 ST PowerPC devices.

Cyclone und Multilink Interface

4.01 %
PEmicro Multilink FX UniversalMultilink FX Universal
Multilink FX Universal
Product Nr.: USB-ML-UNIVERSAL-FX
The PEmicro Multilink FX Universal is an interface for debugging and programming ARM and 8/16/32 bit processors
...show more

Features

  • USB data connection between PC and Multilink, allowing fast and uncomplicated programming and debugging
  • USB power supply of the Multilink via the PC, so no external power supply is necessary
  • Supports processors whose voltage range is within 1.8 V to 5.25 V.
  • Supports JTAG daisy chaining of multiple ARM MCUs
  • Supports a wide range of ARM microcontrollers, see the supported architectures page for an exact listing.
  • ARM device support through JTAG as well as through SWD protocol
  • Pipelined programming algorithms for compatible Power Architecture families, dramatically increasing programming speed.
  • Automatic frequency detection + trimming functions for HCS08 devices
  • Automatic frequency detection for HC(S)12(X) devices
  • Generation of programming voltage on RESET line for RS08 devices
  • Support for NXP S32, Coldfire V1-V4, MPC55xx-57xx, DSC, S12Z, HC(S)12(X), HCS08, RS08 and STMicro SPC5 devices
  • fast!! Up to 10 times faster communication speed compared to other multilink models from PEmicro*.
  • Power supply of the target MCU with 3.3V or 5.5V
  • Valid target frequency of 16 kHz-50 MHz (applies to HCS08, RS08, CFV1, S12Z or HCS12X only)
  • I/O line clamping for additional voltage protection
  • support for real-time power measurements
  • additional support for MPC5xx/8xx and HC16/683xx processors

*The huge performance gains of USB Multilink Universal FX are limited to synchronous architectures:

ARM devices, Kinetis, S32, MPC55xx-577xx (& STMicroelectronics SPC5), Coldfire V2-V4, DSC, MPC5xx/8xx and HC16/683xx.

€575.00* €599.00*
PEmicro cyclone lc universalpemicro cyclone lc universal header layout
Cyclone LC Universal
Product Nr.: CYCLONE-LC-UNIV
The PEmicro Cyclone LC Universal (U-Cyclone) is a standalone programmer for ARM and 8/16/32 bit processors.
...show more

Features

  • Free PECloud Access to deploy, monitor, and manage cloud-connected production Programming Jobs
  • Can be operated via PC or stand alone
  • Program MCUs with a PC or without a PC
  • Powerful automation control
  • PC-based SDK, console and GUI control, gang programming, dynamic data programming
  • Multiple communication interfaces including USB 2.0, Ethernet and serial ports
  • LCD display and intuitive touchscreen controls
  • Easy-to-use touchscreen interface with remote access
  • Target Power Management
  • Ability to power the target MCU
  • Automatic counting & common serial numbers
  • Programming can include complex serialization
  • Ethernet-based debugging
  • Compatible with many development IDEs
  • On-board memory
  • Programming control port
  • 10-pin connector for starting programming and retrieving status and programming validation
  • High-speed programming

€999.00*
pemicro cyclone fx universalCyclone FX Universal Header Layout
Cyclone Universal FX
Product Nr.: CYCLONE-FX-UNIV
The PEmicro Cyclone FX Universal is a standalone programmer for ARM and 8/16/32 bit processors.
...show more

Features

  • Free PECloud access to Deploy, monitor, and manage cloud-connected production Programming Jobs
  • Can be operated via PC or stand alone
  • Program MCUs with a PC or without a PC
  • Powerful automation control
  • PC-based SDK, console and GUI control, gang programming, dynamic data programming
  • Multiple communication interfaces including USB 2.0, Ethernet and serial ports
  • LCD display and intuitive touchscreen controls
  • Easy-to-use touchscreen interface with remote access
  • Target Power Management
  • Ability to power the target MCU
  • Automatic counting & common serial numbers
  • Programming can include complex serialization
  • Ethernet-based debugging
  • Compatible with many development IDEs
  • On-board memory
  • Programming control port
  • 10-pin connector for starting programming and retrieving status and programming validation
  • High-speed programming

Only Cyclone FX Models:

  • Download rates up to 75 Mbits/s
  • 1+ gigabytes of encrypted internal memory for 200+ programming images
  • RSA/AES encryption (unique ImageKeys to protect valuable IP)
  • Programming count/date limits, etc. 
  • External memory via SDHC card port
  • Perform complex testing of MCU before programming 
  • Measurement of current and voltage of the target IC

€1,399.00*