Starting Electronics Needs Your Help!
It is that time of the year when we need to pay for web hosting and buy new components and equipment for new tutorials. You can help by making a donation. Contribute to this website by clicking the Donate button. The total will be updated once daily. (You may need to clear your browser cache to see the updates.)

Target Amount: $2000
Amount Raised: $118

Donations Received


Using the ST-LINK/V2 to Program STM32F100 Microcontrollers

Created on: 28 August 2012

Only four wires need to be connected between the ST-LINK/V2 programmer/debugger and a STM32F100 microcontroller in order to load a program to it.

This is achieved by using SWD (Serial Wire Debug) mode and the STM32 ST-LINK Utility program from ST.

The Hardware

To test the ST-LINK/V2, a STM32 value line discovery board was used. Wires must be connected from the 20-pin ST-LINK cable to the STM32VLD board. The four wires used for SWD from this 20-pin connector are shown below.

SWD connections on the ST-LINK/V2 20 pin header.

The STM32 value line discovery board already has a built in embedded ST-LINK on the board, so the two jumpers on header pins CN3 must be removed.

The Software and Drivers

If you have already installed the STM32 ST-LINK Utility software from ST Microelectronics then the drivers for the ST-LINK will be available on your PC. The drivers for the ST-LINK/V2 will be configured after plugging the ST-LINK into a spare USB port on the PC. The external ST-LINK/V2 can now be used to program the STM32 value line discovery board or other STM32 board as described in the Programming STM32 Microcontroller Flash in Windows article on this website. This article also describes how to install the software which includes the necessary drivers.

The video below shows the connection of the ST-LINK/V2 to the STM32VLD board and programming using the STM32 ST-LINK Utility software.

Can't see the video? View on YouTube →

Single solid core wires with single pin female connectors are used to connect between the 20-pin IDC connector on the ST-LINK and the pins on the board. Note that the two jumpers from header CN3 have been removed. After programming, the reset button is pressed to run the new program that flashes the two user programmable LEDs.