Olimex Support Forum

ARM => ST => Topic started by: Rover_Ray on August 05, 2017, 08:47:34 am

Title: Olimex ARM-USB-TINY-H and STM32L471RGT6TR
Post by: Rover_Ray on August 05, 2017, 08:47:34 am
Hello, dear users. Is the programmer Olimex used for programming and debugging STM32L471RGT6TR?
About the debugging interface of the microcontroller is the following:

Serial wire JTAG debug port (SWJ-DP)
The ARM SWJ-DP interface is embedded, and is a combined JTAG and serial wire debug
port that enables either a serial wire debug or a JTAG probe to be connected to the target.
Debug is performed using 2 pins only instead of 5 required by the JTAG (JTAG pins could
be re-use as GPIO with alternate function): the JTAG TMS and TCK pins are shared with
SWDIO and SWCLK, respectively, and a specific sequence on the TMS pin is used to
switch between JTAG-DP and SW-DP.

In what IDE is it better to work with these programmer and microcontroller?
Thank you very much in advance!
Title: Re: Olimex ARM-USB-TINY-H and STM32L471RGT6TR
Post by: LubOlimex on August 15, 2017, 01:35:07 pm
Hey there,

People typically choose Olimex ARM-USB-TINY-H when they aim to setup a low-cost environment to program and debug an ARM microcontroller. This usually also implies the usage of OpenOCD debugger software, since OpenOCD is popular, free and open-source. Of course, there is a downside of this approach - it might be a bit hard to setup initially and would typically consume more time than using commercial software. Your target microcontroller seems popular, there is a good chance there would be a configuration file already available for that specific target.

ARM-USB-TINY-H is a mature and well-known product, supported in OpenOCD.

Since OpenOCD grew in popularity, major commercial IDE companies provided option to use such tools. For example, you can also use ARM-USB-TINY-H with commercial environments like IAR EW for ARM, Rowley Crossworks for ARM, CooCox IDE, among others.

One important thing to notice is that the hardware of ARM-USB-TINY-H supports only full JTAG by default and you need an adapter called ARM-JTAG-SWD to enable SWD programming. The adapter is available here: https://www.olimex.com/Products/ARM/JTAG/ARM-JTAG-SWD/

This SWD adapter is also supported in OpenOCD.

Best regards,
Lub/OLIMEX