54 December 2017
Our target ARM Nucleo development board is based
on the STM32F030R8T6. If you ignore the ST-LINK
programming portion of the Nucleo board, the
STM32F030R8T6 is host to a very basic configuration.
Right now, we only have a single pushbutton and one
lonely LED that we can directly control via the
STM32F030R8T6. That’s okay because we are mainly
interested in how to get the STM32F030R8T6 to do tricks
on our application’s command.
As you can see in Photo 1, we are using the Nucleo-
F030R8’s Morpho connectors to realize our physical
connections to the STM32F030R8T6 microcontroller
instead of the existing Arduino portals. The Nucleo-
F030R8’s Morpho connectors are nothing more than dual-row male headers with connections to the
We’re able to access most all of the STM32F030R8T6
pins directly from the Nucleo-F030R8’s Morpho headers.
The Morpho headers fit nicely into a pair of dual-row
female headers that are supported by a Twin Industries
perfboard. The Twin Industries perfboard we are using is
equipped with plated-through holes and ground planes on
both sides of the board. There’s enough room left on the
perfboard to mount a solderless breadboard, which could
come in handy later. There are also unused female header
pins that we could use to accommodate other pluggable
The idea behind the Nucleo-F030R8 development
board is low cost. That’s why the ST-LINK
programmer/debugger is included in the Nucleo-F030R8
development board’s design. However, with a little bit of
wiring, the Nucleo-F030R8 board can be programmed and
debugged using an external Segger J-LINK device. We’ll
forego the Nucleo-F030R8’s onboard ST-LINK
programming system and opt for the more
powerful external J-LINK solution.
A ready-made SWD (Serial Wire
Debug) programming/debugging portal is
provided on the Nucleo-F030R8 in the
form of a six-pin male header, which you
can easily pick out in Photo 1. The J-LINK’s
standard programming/debugging interface
is a 20-pin male header.
Instead of crafting a custom
programming/debugging header board to
accommodate the J-LINK’s 20-pin monster
header, we’ll call upon a tricky little SWD
adapter from Adafruit on the Nucleo-
F030R8 end of the programming cable and
a just-as-tricky J-LINK adapter from Olimex
at the J-LINK end of the 10-pin
The 20-pin to 10-pin adapter
arrangement we’ll use is shown in Photo 2.
The Olimex ARM-JTAG- 20-10 adapter can
be obtained from Digi-Key.
Go ARM in ARM with Hardware
■ BY FRED EADY
Let’s get serious about some ARM hardware and firmware. In this edition, we are
going to assemble some ARM hardware and write some ARM code. The ARM
hardware will consist of an STMicroelectronics Nucleo-F030R8 development board
pinned down to a Twin Industries perfboard. Enough talk. Let’s get to work.
THE DESIGN CYCLE
■ PHOTO 1. The Twin Industries perfboard is the
perfect foundation for our Nucleo-F030R8. There’s
plenty of room for expansion and everything we
need right now is there.