Difference between revisions of "STLink"

From PaparazziUAV
Jump to navigation Jump to search
m
Line 18: Line 18:


==Install Software==
==Install Software==
For Ubuntu/Debian. <br/>
 
''st-flash'' and ''st-util'' are needed [https://github.com/texane/stlink Tools from texane]
The ''st-flash'' and ''st-util'' tools are needed, provied by [https://github.com/texane/stlink texane]


Download and compile
Download and compile
Line 34: Line 34:
  $ source ~/.profile
  $ source ~/.profile


Add udev rules (replace user with your username)
Add udev rules  
  $ sudo cp /opt/stlink/49-stlinkv*.rules /etc/udev/rules.d
  $ sudo cp /opt/stlink/49-stlinkv*.rules /etc/udev/rules.d
  $ sudo udevadm control --reload-rules
  $ sudo udevadm control --reload-rules
Line 43: Line 43:


Connect the ST-Link to the MCU.
Connect the ST-Link to the MCU.
If a complete STM32F-Discovery board is used, CN3 jumpers need to be set. To program a external MCU, remove CN3 jumpers and connect the external MCU with the SWD header.
If a complete STM32Fx-Discovery board is used, CN3 jumpers need to be set. To program a external MCU, remove CN3 jumpers and connect the external MCU with the SWD header.


To use STLink via SWD<br/>
To use STLink via SWD<br/>

Revision as of 05:25, 16 June 2014

St-link.jpg


Serial Wire Debug (SWD) is a program and debug protocol for ARM processors. It's a low pin count and high-performance alternative to JTAG

Every STM discovery board comes with a ST-Link V2 on board, with one exception; the STM32VL version, that board comes with ST-Link V1.

SWD Header

Pinout with Apogee connector

Install Software

The st-flash and st-util tools are needed, provied by texane

Download and compile

$ cd /opt
$ git clone git://github.com/texane/stlink.git stlink
$ cd stlink
$ ./autogen.sh
$ ./configure
$ make

Set enviroment variable

$ exportline="PATH=$PATH:/opt/stlink"
$ if grep -Fxq "$exportline" ~/.profile; then echo nothing to do ; else echo $exportline >> ~/.profile; fi
$ source ~/.profile

Add udev rules

$ sudo cp /opt/stlink/49-stlinkv*.rules /etc/udev/rules.d
$ sudo udevadm control --reload-rules

ST-LinkV1 requires a bit different treatment, read the Readme.txt

Airframe.xml setup

Connect the ST-Link to the MCU. If a complete STM32Fx-Discovery board is used, CN3 jumpers need to be set. To program a external MCU, remove CN3 jumpers and connect the external MCU with the SWD header.

To use STLink via SWD
Set FLASH_MODE=STLINK

Update the ST-Link to blackmagic probe

The STM32F103 (STLink MCU) can be flashed with the blackmagic's firware.
This is irveversable !

How to upload the blackmagic probe firmware to the STLink of a discovery board