OLIMEX-STM32-H405

Overview

The OLIMEX-STM32-H405 board is based on the STMicroelectronics STM32F405RG ARM Cortex-M4 CPU.

Hardware

Information about the board can be found at the OLIMEX-STM32-H405 website and OLIMEX-STM32-H405 user manual. The ST STM32F405RG Datasheet contains the processor’s information and the datasheet.

Supported Features

The olimex_stm32_h405 board supports the hardware features listed below.

on-chip / on-board
Feature integrated in the SoC / present on the board.
2 / 2
Number of instances that are enabled / disabled.
Click on the label to see the first instance of this feature in the board/SoC DTS files.
vnd,foo
Compatible string for the Devicetree binding matching the feature.
Click on the link to view the binding documentation.
olimex_stm32_h405
/
stm32f405xx

Type

Location

Description

Compatible

CPU

on-chip

ARM Cortex-M4F CPU1

arm,cortex-m4f

ADC

on-chip

STM32F4 ADC1

st,stm32f4-adc

on-chip

STM32 ADC2

st,stm32-adc

CAN

on-chip

STM32 CAN controller2

st,stm32-bxcan

Clock control

on-chip

STM32 RCC (Reset and Clock controller)1

st,stm32-rcc

on-chip

STM32 HSE Clock1

st,stm32-hse-clock

on-chip

Generic fixed-rate clock provider1 2

fixed-clock

on-chip

STM32F4 Main PLL1

st,stm32f4-pll-clock

on-chip

STM32F4 PLL I2S1

st,stm32f4-plli2s-clock

on-chip

STM32 Microcontroller Clock Output (MCO)2

st,stm32-clock-mco

Counter

on-chip

STM32 counters12

st,stm32-counter

DAC

on-chip

STM32 family DAC1

st,stm32-dac

DMA

on-chip

STM32 DMA controller (V1)2

st,stm32-dma-v1

Flash controller

on-chip

STM32 Family flash controller1

st,stm32-flash-controller

GPIO & Headers

on-chip

STM32 GPIO Controller9

st,stm32-gpio

I2C

on-chip

STM32 I2C V1 controller3

st,stm32-i2c-v1

I2S

on-chip

STM32 I2S controller2

st,stm32-i2s

Input

on-board

Group of GPIO-bound input keys1

gpio-keys

Interrupt controller

on-chip

ARMv7-M NVIC (Nested Vectored Interrupt Controller)1

arm,v7m-nvic

on-chip

STM32 External Interrupt Controller1

st,stm32-exti

LED

on-board

Group of GPIO-controlled LEDs1

gpio-leds

Memory controller

on-chip

STM32 Battery Backed RAM1

st,stm32-bbram

MMC

on-chip

STM32 SDMMC Disk Access1

st,stm32-sdmmc

MTD

on-chip

STM32F4 flash memory1

st,stm32f4-nv-flash

PHY

on-chip

This binding is to be used by all the usb transceivers which are built-in with USB IP2

usb-nop-xceiv

Pin control

on-chip

STM32 Pin controller1

st,stm32-pinctrl

PWM

on-chip

STM32 PWM12

st,stm32-pwm

Reset controller

on-chip

STM32 Reset and Clock Control (RCC) Controller1

st,stm32-rcc-rctl

RNG

on-chip

STM32 Random Number Generator1

st,stm32-rng

RTC

on-chip

STM32 RTC1

st,stm32-rtc

Sensors

on-chip

STM32 quadrature decoder6

st,stm32-qdec

on-chip

STM32 family TEMP node for production calibrated sensors with two calibration temperatures1

st,stm32-temp-cal

on-chip

STM32 VREF+1

st,stm32-vref

on-chip

STM32 VBAT1

st,stm32-vbat

Serial controller

on-chip

STM32 USART1 3

st,stm32-usart

on-chip

STM32 UART2

st,stm32-uart

SMbus

on-chip

STM32 SMBus controller3

st,stm32-smbus

SPI

on-chip

STM32 SPI controller4

st,stm32-spi

SRAM

on-chip

Generic on-chip SRAM description1

mmio-sram

Timer

on-chip

ARMv7-M System Tick1

arm,armv7m-systick

on-chip

STM32 timers14

st,stm32-timers

USB

on-chip

STM32 OTGFS controller1

st,stm32-otgfs

on-chip

STM32 OTGHS controller1

st,stm32-otghs

Watchdog

on-chip

STM32 watchdog1

st,stm32-watchdog

on-chip

STM32 system window watchdog1

st,stm32-window-watchdog

Pin Mapping

LED

  • USER_LED (green) = PC12

  • PWR_LED (red) = power

Push buttons

  • USER_BUTTON = PA0

  • RST = NRST

External Connectors

JTAG debug

PIN #

Signal Name

Pin #

Signal Name

1

+3.3V

2

+3.3V

3

PB4 / TRST

4

GND

5

PA15 / TDI

6

GND

7

PA13 / TMS

8

GND

9

PA14 / TCK

10

GND

11

GND

12

GND

13

PB3 / TDO

14

GND

15

GND

16

GND

17

RST

18

GND

19

GND

20

GND

USB Type B

PIN #

Signal Name

1

+5V_USB

2

PA11 / USBDM

3

PA12 / USBDP

4

GND

EXT1 header

PIN #

Signal Name

Pin #

Signal Name

1

2

9

PC11 (USB DISC)

10

PC12 (LED)

25

26

EXT2 header

PIN #

Signal Name

Pin #

Signal Name

1

2

5

6

GND

7

PA2 / USART2_TX

8

9

10

PA3 / USART2_RX

25

26

System Clock

OLIMEX-STM32-H405 has two external oscillators. The frequency of the slow clock is 32.768 kHz. The frequency of the main clock is 8 MHz. The processor can setup HSE to drive the master clock, which can be set as high as 168 MHz.

Programming and Debugging

The OLIMEX-STM32-H405 board does not include an embedded debug tool interface. You will need to use ST tools or an external JTAG probe. In the following examples a ST-Link V2 USB dongle is used.

Flashing an application to the Olimex-STM32-H405

The sample application Hello World is being used in this tutorial.

Connect the ST-Link USB dongle to your host computer and to the JTAG port of the OLIMEX-STM32-H405 board.

Now build and flash the application.

# From the root of the zephyr repository
west build -b olimex_stm32_h405 samples/hello_world
west flash

Run a serial host program to connect with your board:

$ minicom -D /dev/ttyACM0

After resetting the board, you should see the following message:

*** Booting Zephyr OS build v2.7.99-3008-g2341052abe7c  ***
Hello World! olimex_stm32_h405

Debugging

You can debug an application in the usual way. Here is an example for the Hello World application.

# From the root of the zephyr repository
west build -b olimex_stm32_h405 samples/hello_world
west debug