STM32N6570-DK
Overview
The STM32N6570_DK Discovery kit is a complete demonstration and development platform for the Arm® Cortex®‑M55 core‑based STM32N657X0H3Q microcontroller.
The STM32N6570_DK Discovery kit includes a full range of hardware features that help the user evaluate many peripherals, such as USB Type-C®, Octo‑SPI flash memory and Hexadeca‑SPI PSRAM devices, Ethernet, camera module, LCD, microSD™, audio codec, digital microphones, ADC, flexible extension connectors, and user button. The four flexible extension connectors feature easy and unlimited expansion capabilities for specific applications such as wireless connectivity, analog applications, and sensors.
The STM32N657X0H3Q microcontroller features one USB 2.0 high‑speed/full‑speed Device/Host/OTG controller, one USB 2.0 high‑speed/full‑speed Device/Host/OTG controller with UCPD (USB Type-C® Power Delivery), one Ethernet with TSN (time-sensitive networking), four I2Cs, two I3Cs, six SPIs (of which four I2S‑capable), two SAIs, with four DMIC support, five USARTs, five UARTs (ISO78916 interface, LIN, IrDA, up to 12.5 Mbit/s), one LPUART, two SDMMCs (MMC version 4.0, CE-ATA version 1.0, and SD version 1.0.1), three CAN FD with TTCAN capability, JTAG and SWD debugging support, and Embedded Trace Macrocell™ (ETM).
The STM32N6570_DK Discovery kit integrates an STLINK-V3EC embedded in-circuit debugger and programmer for the STM32 MCU, with a USB Virtual COM port bridge and the comprehensive MCU Package.
Hardware
STM32N657X0H3Q Arm® Cortex®‑M55‑based microcontroller featuring ST Neural-ART Accelerator, H264 encoder, NeoChrom 2.5D GPU, and 4.2 Mbytes of contiguous SRAM, in a VFBGA264 package
5” LCD module with capacitive touch panel
USB Type-C® with USB 2.0 HS interface, dual‑role‑power (DRP)
USB Type-A with USB 2.0 HS interface, host, 0.5 A max
1‑Gbit Ethernet with TSN (time-sensitive networking) compliant with IEEE‑802.3‑2002
SAI audio codec
One MEMS digital microphone
1‑Gbit Octo‑SPI flash memory
256-Mbit Hexadeca‑SPI PSRAM
Two user LEDs
User, tamper, and reset push-buttons
Board connectors:
USB Type-C®
USB Type-A
Ethernet RJ45
Camera module
microSD™ card
LCD
Stereo headset jack including analog microphone input
Audio MEMS daughterboard expansion connector
ARDUINO® Uno R3 expansion connector
STMod+ expansion connector
On-board STLINK-V3EC debugger/programmer with USB re-enumeration capability: Virtual COM port, and debug port
For more details, please refer to:
Supported Features
The stm32n6570_dk
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.
stm32n6570_dk/stm32n657xx/sb
target
Type |
Location |
Description |
Compatible |
---|---|---|---|
CPU |
on-chip |
ARM Cortex-M55 CPU1 |
|
ADC |
on-chip |
||
CAN |
on-chip |
||
Clock control |
on-chip |
STM32N6 RCC (Reset and Clock controller)1 |
|
on-chip |
STM32N6 HSE Clock1 |
||
on-chip |
STM32 HSI Clock1 |
||
on-chip |
STM32 LSE Clock1 |
||
on-chip |
Generic fixed-rate clock provider1 |
||
on-chip |
|||
on-chip |
STM32N6 CPU Clock1 |
||
on-chip |
STM32 Clock multiplexer1 |
||
on-chip |
|||
DMA |
on-chip |
STM32U5 DMA controller1 |
|
GPIO & Headers |
on-chip |
STM32 GPIO Controller12 |
|
on-board |
GPIO pins exposed on Arduino Uno (R3) headers1 |
||
I2C |
on-chip |
||
Interrupt controller |
on-chip |
ARMv8.1-M NVIC (Nested Vectored Interrupt Controller)1 |
|
on-chip |
STM32G0 External Interrupt Controller1 |
||
LED |
on-board |
Group of GPIO-controlled LEDs1 |
|
MMU / MPU |
on-chip |
ARMv8.1-M MPU (Memory Protection Unit)1 |
|
Pin control |
on-chip |
STM32 Pin controller1 |
|
Reset controller |
on-chip |
STM32 Reset and Clock Control (RCC) Controller1 |
|
Serial controller |
on-chip |
||
SPI |
on-chip |
||
SRAM |
on-chip |
Generic on-chip SRAM description2 |
|
Timer |
on-chip |
ARMv8.1-M System Tick1 |
Connections and IOs
STM32N6570_DK Board has 12 GPIO controllers. These controllers are responsible for pin muxing, input/output, pull-up, etc.
For more details please refer to STM32N6570_DK User Manual.
Default Zephyr Peripheral Mapping:
ADC1_INP10 : PA9
ADC1_INP11 : PA10
FDCAN1_TX : PH2
FDCAN1_RX : PD0
I2C1_SCL : PH9
I2C1_SDA : PC1
I2C4_SCL : PE13
I2C4_SDA : PE14
LD1 : PO1
LD2 : PG10
SPI5_SCK : PE15
SPI5_MOSI : PG2
SPI5_MISO : PH8
SPI5_NSS : PA3
USART_1_TX : PE5
USART_1_RX : PE6
USART_2_TX : PD5
USART_2_RX : PF6
System Clock
STM32N6570_DK System Clock could be driven by internal or external oscillator, as well as main PLL clock. By default System clock is driven by PLL clock at 400MHz, driven by 64MHz high speed internal oscillator.
Serial Port
STM32N6570_DK board has 10 U(S)ARTs. The Zephyr console output is assigned to USART1. Default settings are 115200 8N1.
Programming and Debugging
STM32N6570_DK board includes an ST-LINK/V3 embedded debug tool interface. This probe allows to flash and debug the board using various tools.
Flashing or loading
The board is configured to be programmed using west STM32CubeProgrammer runner, so its installation is needed. Version 2.18.0 or later of STM32CubeProgrammer is required.
Note
Firmware is run in secure mode of execution, which requires a signature.
After build, the build system will automatically generate a signed version of the
binary using STM32CubeProgrammer utility STM32_SigningTool_CLI
.
This utility is installed along with STM32CubeProgrammer, but make sure it is
available in your PATH
variable.
To program the board, there are two options:
Program the firmware in external flash. At boot, it will then be loaded on RAM and executed from there.
Optionally, it can also be taken advantage from the serial boot interface provided by the boot ROM. In that case, firmware is directly loaded in RAM and executed from there. It is not retained.
Programming an application to STM32N6570_DK
Here is an example to build and run Hello World application.
First, connect the STM32N6570_DK to your host computer using the ST-Link USB port.
Build and flash an application using
stm32n6570_dk
target.# From the root of the zephyr repository west build -b stm32n6570_dk samples/hello_world west flashNote
For flashing, before powering the board, set the boot pins in the following configuration:
BOOT0: 0
BOOT1: 1
After flashing, to run the application, set the boot pins in the following configuration:
BOOT1: 0
Power off and on the board again.
Additionally, connect the STM32N6570_DK to your host computer using the USB port. In this configuration, ST-Link is used to power the board and for serial communication over the Virtual COM Port.
Note
Before powering the board, set the boot pins in the following configuration:
BOOT0: 1
BOOT1: 0
Build and load an application using
stm32n6570_dk/stm32n657xx/sb
target (you can also use the shortened form:stm32n6570_dk//sb
)# From the root of the zephyr repository west build -b stm32n6570_dk//sb samples/hello_world west flash
Run a serial host program to connect with your Disco board:
$ minicom -D /dev/ttyACM0
You should see the following message on the console:
Hello World! stm32n6570_dk/stm32n657xx
Debugging
For now debugging is only available through STM32CubeIDE:
Go to File > Import and select C/C++ > STM32 Cortex-M Executable.
In Executable field, browse to your <ZEPHYR_PATH>/build/zephyr/zephyr.elf.
In MCU field, select STM32N657X0HxQ.
Click on Finish.
Finally, click on Debug to start the debugging session.
Note
For debugging, before powering on the board, set the boot pins in the following configuration:
BOOT0: 0
BOOT1: 1
Running tests with twister
Due to the BOOT switches manipulation required when flashing the board using stm32n6570_dk
board target, it is only possible to run twister tests campaign on stm32n6570_dk/stm32n657xx/sb
board target which doesn’t require BOOT pins changes to load and execute binaries.
To do so, it is advised to use Twister’s hardware map feature with the following settings:
- platform: stm32n6570_dk/stm32n657xx/sb
product: BOOT-SERIAL
pre_script: <path_to_zephyr>/boards/st/common/scripts/board_power_reset.sh
runner: stm32cubeprogrammer