STM32 Arduino IDE

sorry we are not native speakers, so the content may not be clear. We just want to share with you!
5 sao

sorry we are not native speakers, so the content may not be clear. We just want to share with you!

Arduino IDE is famous as a simple programming tool with a large development community, this article will guide you to program STM32 Arduino IDE.

See more:


The STM32 family of 32-bit microcontrollers based on the Arm® Cortex®-M processor is designed to offer new degrees of freedom to MCU users. It offers products combining very high performance, real-time capabilities, digital signal processing, low-power / low-voltage operation, and connectivity, while maintaining full integration and ease of development.

The unparalleled range of STM32 microcontrollers, based on an industry-standard core, comes with a vast choice of tools and software to support project development, making this family of products ideal for both small projects and end-to-end platforms.

Read more about the benefits of the 32-bit Arm Cortex-M7 processor for MCUs here.

the benefits of the 32-bit Arm Cortex-M7 processor

What is Arduino IDE

The open-source Arduino Software (IDE) makes it easy to write code and upload it to the board. This software can be used with any Arduino board.

Arduino IDE is a programing editor

Where is stm32 usually programmed?

We can code stm32 at:


STM32CubeIDE is an all-in-one multi-OS development tool, which is part of the STM32Cube software ecosystem.

Keil C


Cocos Code IDE

we need to have driver: https://www.st.com/en/development-tools/st-link-v2.html

All of the above software are used quite commonly, but require programmers to have good knowledge with C language. So today ESPITEK guides you through a fairly familiar tool that is STM32 programming on the Arduino platform.


Arduino IDE: download here

Install STM32 Boards Manager on Arduino

Introducing STM32 Boards

Built upon:

STM32Cube MCU Packages include:

  • The HAL hardware abstraction layer.
  • The Low-Layer (LL) APIs.
  • CMSIS device definition for STM32.

CMSIS: Cortex Microcontroller Software Interface Standard packaged for Arduino IDE: https://github.com/stm32duino/ArduinoModule-CMSIS

GNU Arm Embedded Toolchain: Compiler and library for Arm Cortex-M provided by The xPack GNU Arm Embedded GCC: https://github.com/xpack-dev-tools/arm-none-eabi-gcc-xpack

Support programming of STM32 boards:

Nucleo 144 boards

Nucleo 64 boards

Nucleo 32 boards

Discovery boards

Eval boards

STM32MP1 series coprocessor boards

Generic STM32F0 boards

Generic STM32F1 boards

Generic STM32F3 boards

Generic STM32F4 boards

Generic STM32H7 boards

Generic STM32L0 boards

3D printer boards

LoRa boards

Electronic Speed Controller boards

Generic flight controllers

Garatronics boards

Midatronics boards

Install STM32 on Arduino environment to be able to program STM32 with Arduino

  1. Open Arduino IDE > File > Preferences.
  2. . At “Additional Board Manager URLs” enter https://github.com/stm32duino/BoardManagerFiles/raw/master/STM32/package_stm_index.json – Note: if a URL already exists, separate it with a “,“.
Install STM32 on Arduino environment

3. Choose Tool > Board > Boards Manager…

Board manager arduino

4. Choose “Contributed” and install “STM32 Cores“.

install stm32 cores

5. Choose board in Tool > Board to start program STM32 Arduino.

Install STM32CubeProgrammer

You need to download and install the STM32CubeProgrammer if using the Upload method via SWD (STLink), Serial or DFU.

Upload code

After the installation is complete, we can start programming with Blink example

  1. Connect the STLink charger circuit to your board.
  2. Choose “Tools > Upload Method > SWD
stm32 blink on arduino ide

3. Choose “File> Examples > 01.Basics > Blink

4. Upload

upload code stm32 arduino ide


NOTE: This document we are refer from: https://randomnerdtutorials.com/,if the author see this post, please we are want to share your known to our student country

Leave a Reply

Your email address will not be published. Required fields are marked *