This article introduces the structure and the content of the STM32CubeMP15 Package / STM32CubeMP1 Package (a.k.a., STM32CubeMP15 / STM32CubeMP1) , the embedded software part of STM32Cube™, running on the Arm® Cortex®-M4 processor. It references also other interesting wiki articles to better understand and use the STM32CubeMP15 Package.
1. What is the STM32CubeMP15 Package?
STM32CubeMP15 Package, running on the Arm® Cortex®-M4 processor, consists of:
- The hardware abstraction layer (HAL), enabling portability between different STM32 devices via standardized API calls
- The low-layer API (LL), a light-weight, optimized, expert oriented set of APIs designed for runtime efficiency and so enhanced performance
- The board support package drivers (BSP), based on HAL drivers, an API set for the evaluation board and third-party components.
- A collection of middleware components (such as FreeRTOS)
- A collection of examples, running on an MPU board and allowing demonstration of a basic implementation of features from a set of IPs
The STM32CubeMP15 Package is based on the STM32CubeMCU Package and has been adapted to a Linux framework (OpenSTLinux).
STM32CubeMP15 Package introduces new components such as OpenAMP and ResourceManager that allow easy communication and resource sharing between main processors running with Linux on Arm® Cortex®-A7, and MCU processors running on Arm® Cortex®-M4.
- OpenAMP is a library implementing the remote processor service framework (RPMsg) which is a virtio-based messaging bus that allows a local processor to communicate with remote processors available on the system.
- ResourceManager is a utility that handles peripheral-accessibility requests and system-resource configuration.
![]() |
Note:
|
2. Software architecture overview
Software architecture overview is described in STM32CubeMP15 Package architecture.
3. STM32CubeMP15 Package structure
This chapter describes the structure of the STM32CubeMP15 Package (drivers, middleware components...).
STM32CubeMP15 Package offers a highly portable Hardware Abstraction Layer (HAL), built around a generic and modular architecture.
This HAL allows the upper layers, middleware and application, to implement functions whatever the STM32MP1 device used. This improves the library code re-usability and guarantees easy portability from one device to another.
STM32CubeMP15 Package also offers a highly portable Low Layer interface (LL), which allows a quick, simple and optimized API to access the STM32MP15 registers.
The STM32CubeMP15 Package is provided with the structure shown below.
4. STM32CubeMP15 Package content
This chapter describes the content of the STM32CubeMP15 Package (drivers, middleware components...).
4.1. Drivers
The Drivers folder contains all the STM32Cube Drivers, including BSP and HAL drivers.
The STM32CubeMP15 Package provides all driver user manuals:
- The BSP user manual for STM32MP157x-EV1 Evaluation board
is available in Drivers/BSP/STM32MP15xx_EVAL/STM32MP15xx_EVAL_BSP_User_Manual.chm
- The BSP user manual for STM32MP157x-DK2 Discovery kit
is available in Drivers/BSP/STM32MP15xx_DISCO/STM32MP15xx_DISCO_BSP_User_Manual.chm
- The HAL user manual is available in Drivers/STM32MP1xx_HAL_Driver/STM32MP157Cxx_CM4_User_Manual.chm
Chapters, here after, give the list of available BSP, HAL and LL drivers.
4.1.1. HAL drivers
STM32CubeMP15 HAL Driver items | Description |
---|---|
ADC |
* This driver provides firmware functions to manage the following
* functionalities of the Analog to Digital Convertor (ADC)
* peripheral:
* + Initialization and de-initialization functions
* ++ Initialization and Configuration of ADC
* + Operation functions
* ++ Start, stop, get result of conversions of regular
* group, using 3 possible modes: polling, interruption or DMA.
* + Control functions
* ++ Channels configuration on regular group
* ++ Analog Watchdog configuration
* + State functions
* ++ ADC state machine management
* ++ Interrupts and flags management
* + Operation functions
* ++ Start, stop, get result of conversions of ADC group injected,
* using 2 possible modes: polling, interruption.
* ++ Calibration
* +++ ADC automatic self-calibration
* +++ Calibration factors get or set
* ++ Multimode feature when available
* + Control functions
* ++ Channels configuration on ADC group injected
* + State functions
* ++ ADC group injected contexts queue management
|
CEC |
* This driver provides firmware functions to manage the following
* functionalities of the High Definition Multimedia Interface
* Consumer Electronics Control Peripheral (CEC).
* + Initialization and de-initialization function
* + IO operation function
* + Peripheral Control function
|
CRC |
* This driver provides firmware functions to manage the following
* functionalities of the Cyclic Redundancy Check (CRC) peripheral:
* + Initialization and de-initialization functions
* + Peripheral Control functions
* + Peripheral State functions
* + Extended features functions
|
CORTEX |
* This driver provides firmware functions to manage the following
* functionalities of the CORTEX (MPU, Cache, …):
* + Initialization and de-initialization functions
* + Peripheral Control functions
|
CRYP |
* This driver provides firmware functions to manage the following
* functionalities of the Cryptography (CRYP) peripheral:
* + Initialization and de-initialization functions
* + AES processing functions
* + DES processing functions
* + TDES processing functions
* + DMA callback functions
* + CRYP IRQ handler management
* + Peripheral State functions
* + Extended AES processing functions
|
DAC |
* This driver provides firmware functions to manage the following
* functionalities of the Digital to Analog Converter (DAC) peripheral:
* + Initialization and de-initialization functions
* + IO operation functions
* + Peripheral Control functions
* + Peripheral State and Errors functions
* + Extended features functions
|
DCMI |
* This driver provides firmware functions to manage the following
* functionalities of the Digital Camera Interface (DCMI) peripheral:
* + Initialization and de-initialization functions
* + IO operation functions
* + Peripheral Control functions
* + Peripheral State and Error functions
|
DFSDM |
* This driver provides firmware functions to manage the following
* functionalities of the Digital Filter for Sigma-Delta Modulators
* (DFSDM) peripherals:
* + Initialization and configuration of channels and filters
* + Regular channels configuration
* + Injected channels configuration
* + Regular/Injected Channels DMA Configuration
* + Interrupts and flags management
* + Analog watchdog feature
* + Short-circuit detector feature
* + Extremes detector feature
* + Clock absence detector feature
* + Break generation on analog watchdog or short-circuit event
* + Set and get pulses skipping on channel.
|
DMA |
* This driver provides firmware functions to manage the following
* functionalities of the Direct Memory Access (DMA) peripheral:
* + Initialization and de-initialization functions
* + IO operation functions
* + Peripheral State and errors functions
* + Extended features functions
|
EXTI |
* This driver provides firmware functions to manage the following
* functionalities of the General Purpose Input/Output (EXTI) peripheral:
* + Initialization and de-initialization functions
* + IO operation functions
|
FDCAN |
* This driver provides firmware functions to manage the following
* functionalities of the Flexible DataRate Controller Area Network
* (FDCAN) peripheral:
* + Initialization and de-initialization functions
* + IO operation functions
* + Peripheral Configuration and Control functions
* + Peripheral State and Error functions
|
FMC_SRAM |
* This driver provides a generic firmware to drive SRAM memories
* mounted as external device.
|
GPIO |
* This driver provides firmware functions to manage the following
* functionalities of the General Purpose Input/Output (GPIO) peripheral:
* + Initialization and de-initialization functions
* + IO operation functions
* + Extended Peripheral Control functions
|
HAL |
* This driver provides firmware functions to manage the following
* functionalities of HAL, Tick, SYSCFG, DBGMCU:
* + Initialization and de-initialization functions
* + HAL Initialization and de-initialization functions
* + Configure the source of the time base
* + HAL Control functions
* + Tick management (get/set/inc/priority/suspend/resume)
* + Get HAL revision, the device revision identifier, the device identifier
* + Enable/Disable DBG wake up on AIEC
* + Enable/Disable the Debug Module during Domain1 SLEEP mode
* + Enable/Disable the Debug Module during Domain1 STOP mode
* + Enable/Disable the Debug Module during Domain1 STANDBY mode
* + Configure the internal voltage reference buffer voltage scale
* + Configure the internal voltage reference buffer high impedance mode
* + Tune the Internal Voltage Reference buffer (VREFBUF)
* + Enable/Disable the Internal Voltage Reference buffer (VREFBUF)
* + Ethernet PHY Interface Selection either MII or RMII
* + Analog Switch control for dual analog pads
* + Enable/Disable the booster to reduce the total harmonic distortion of the analog
* + Enable/Power-down the I/O Compensation Cell
* + To Enable/Disable optimize the I/O speed when the product voltage is low
* + Code selection for the I/O Compensation cell
|
HASH |
* This driver provides firmware functions to manage the following
* functionalities of the HASH peripheral:
* + Initialization and de-initialization methods
* + HASH or HMAC processing in polling mode
* + HASH or HMAC processing in interrupt mode
* + HASH or HMAC processing in DMA mode
* + Peripheral State methods
* + HASH or HMAC processing suspension/resumption
* Additionally, this driver provides functions to manage HMAC
* multi-buffer DMA-based processing for MD-5, SHA-1, SHA-224
* and SHA-256.
|
HSEM |
* This driver provides firmware functions to manage the following
* functionalities of the semaphore peripheral:
* + Semaphore Take function (2-Step Procedure) , non blocking
* + Semaphore FastTake function (1-Step Procedure) , non blocking
* + Semaphore Status check
* + Semaphore Clear Key Set and Get
* + Release and release all functions
* + Semaphore notification enabling and disabling and callnack functions
* + IRQ handler management
|
I2C |
* This driver provides firmware functions to manage the following
* functionalities of the Inter Integrated Circuit (I2C) peripheral:
* + Initialization and de-initialization functions
* + IO operation functions
* + Peripheral State and Errors functions
* + Extended features functions
|
IPCC |
* This driver provides firmware functions to manage the following
* functionalities of the Inter-Processor communication controller
* peripherals (IPCC).
* + Initialization and de-initialization functions
* + Configuration, notification and interrupts handling
* + Peripheral State and Error functions
|
LPTIM |
* This driver provides firmware functions to manage the following
* functionalities of the Low Power Timer (LPTIM) peripheral:
* + Initialization and de-initialization functions.
* + Start/Stop operation functions in polling mode.
* + Start/Stop operation functions in interrupt mode.
* + Reading operation functions.
* + Peripheral State functions.
|
MDIOS |
* This driver provides firmware functions to manage the following
* functionalities of the MDIOS Peripheral.
* + Initialization and de-initialization functions
* + IO operation functions
* + Peripheral Control functions
|
MDMA |
* This driver provides firmware functions to manage the following
* functionalities of the Master Direct Memory Access (MDMA) peripheral:
* + Initialization/de-initialization functions
* + I/O operation functions
* + Peripheral State and errors functions
|
PWR |
* This driver provides firmware functions to manage the following
* functionalities of the Power Controller (PWR) peripheral:
* + Initialization and de-initialization functions
* + Peripheral Control functions
* + Peripheral Extended features functions
|
QUADSPI |
* This driver provides firmware functions to manage the following
* functionalities of the QuadSPI interface (QSPI).
* + Initialization and de-initialization functions
* + Indirect functional mode management
* + Memory-mapped functional mode management
* + Auto-polling functional mode management
* + Interrupts and flags management
* + MDMA channel configuration for indirect functional mode
* + Errors management and abort functionality
|
RCC |
* This driver provides firmware functions to manage the following
* functionalities of the Reset and Clock Control (RCC) peripheral:
* + Initialization and de-initialization functions
* + Peripheral Control functions
* + Extended Peripheral Control functions
|
RNG |
* This driver provides firmware functions to manage the following
* functionalities of the Random Number Generator (RNG) peripheral:
* + Initialization and configuration functions
* + Peripheral Control functions
* + Peripheral State functions
|
RTC |
* This driver provides firmware functions to manage the following
* functionalities of the Real-Time Clock (RTC) peripheral:
* + Initialization/de-initialization functions
* + Calendar (Time and Date) configuration
* + Alarms (Alarm A and Alarm B) configuration
* + WakeUp Timer configuration
* + TimeStamp configuration
* + Tampers configuration
* + Backup Data Registers configuration
* + RTC Tamper and TimeStamp Pins Selection
* + Interrupts and flags management
|
SAI |
* This driver provides firmware functions to manage the following
* functionalities of the Serial Audio Interface (SAI) peripheral:
* + Initialization/de-initialization functions
* + I/O operation functions
* + Peripheral Control functions
* + Peripheral State functions
* + Modify PDM microphone delays.
|
SD |
* This driver provides firmware functions to manage the following
* functionalities of the Secure Digital (SD) peripheral:
* + Initialization and de-initialization functions
* + IO operation functions
* + Peripheral Control functions
* + Peripheral State functions
* + Extended features functions
|
SMARTCARD |
* This driver provides firmware functions to manage the following
* functionalities of the SMARTCARD peripheral:
* + Initialization and de-initialization functions
* + IO operation functions
* + Peripheral Control functions
* + Peripheral State and Error functions
* + Extended features functions
|
SMBUS |
* This driver provides firmware functions to manage the following
* functionalities of the System Management Bus (SMBus) peripheral,
* based on I2C principles of operation :
* + Initialization and de-initialization functions
* + IO operation functions
* + Peripheral State and Errors functions
|
SPDIFRX |
* This driver provides firmware functions to manage the following
* functionalities of the SPDIFRX audio interface:
* + Initialization and Configuration
* + Data transfers functions
* + DMA transfers management
* + Interrupts and flags management
|
SPI |
* This driver provides firmware functions to manage the following
* functionalities of the Serial Peripheral Interface (SPI) peripheral:
* + Initialization and de-initialization functions
* + IO operation functions
* + Peripheral Control functions
* + Peripheral State functions
* + IO operation functions
* + Peripheral Control functions
|
TIMER |
* This driver provides firmware functions to manage the following
* functionalities of the Timer (TIM) peripheral:
* + Time Base Initialization
* + Time Base Start
* + Time Base Start Interruption
* + Time Base Start DMA
* + Time Output Compare/PWM Initialization
* + Time Output Compare/PWM Channel Configuration
* + Time Output Compare/PWM Start
* + Time Output Compare/PWM Start Interruption
* + Time Output Compare/PWM Start DMA
* + Time Input Capture Initialization
* + Time Input Capture Channel Configuration
* + Time Input Capture Start
* + Time Input Capture Start Interruption
* + Time Input Capture Start DMA
* + Time One Pulse Initialization
* + Time One Pulse Channel Configuration
* + Time One Pulse Start
* + Time Encoder Interface Initialization
* + Time Encoder Interface Start
* + Time Encoder Interface Start Interruption
* + Time Encoder Interface Start DMA
* + Commutation Event configuration with Interruption and DMA
* + Time OCRef clear configuration
* + Time External Clock configuration
* + Time Hall Sensor Interface Initialization
* + Time Hall Sensor Interface Start
* + Time Complementary signal bread and dead time configuration
* + Time Master and Slave synchronization configuration
* + Time Output Compare/PWM Channel Configuration (for channels 5 and 6)
* + Time OCRef clear configuration
* + Timer remapping capabilities configuration
|
U(S)ART |
* This driver provides firmware functions to manage the following
* functionalities of the Universal (Synchronous) Asynchronous Receiver Transmitter
* Peripheral (U(S)ART).
* + Initialization and de-initialization functions
* + IO operation functions
* + Peripheral Control functions
* + Peripheral State and Error functions
* + Peripheral Control functions
|
WWDG |
* This driver provides firmware functions to manage the following
* functionalities of the Window Watchdog (WWDG) peripheral:
* + Initialization and Configuration functions
* + IO operation functions
|
4.1.2. LL drivers
STM32CubeMP15 LL Driver items | Description |
---|---|
ADC |
* This driver provides firmware functions to manage the following
* functionalities of the ADC peripheral:
* + Initialization/de-initialization functions
* + Configuration functions (ADC instance, group regular, group injected,
* channels, analog watchdog, oversampling, multimode)
* + IT/FLAGS management functions
|
BUS |
* This driver provides firmware functions to manage the following
* functionalities of the BUS peripheral:
* + Enable/disable/reset clocks for all system BUS (AHB2, AHB3, AHB4, AHB5, AHB6,
* AXI, MLAHB, APB1, APB2, APB3, APB4, APB5)
|
CORTEX |
* This driver contains a set of generic APIs that can be used by user:
* + SYSTICK configuration used by @ref LL_mDelay and @ref LL_Init1msTick functions
* + Low power mode configuration (SCB register of Cortex®-MCU)
* + API to access to MCU info (CPUID register)
|
DMA |
* This driver provides firmware functions to manage the following
* functionalities of the DMA peripheral:
* + Initialization/de-initialization functions
* + Configuration functions
* + IT/FLAGS management functions
|
DMAMUX |
* This driver provides firmware functions to manage the following
* functionalities of the DMAMUX peripheral:
* + Initialization/de-initialization functions
* + IT/FLAGS management functions
|
EXTI |
* This driver provides firmware functions to manage the following
* functionalities of the EXTI peripheral:
* + Initialization/de-initialization functions
* + IT/FLAGS/Trigger management functions
* + Configuration functions
|
FMC_SRAM |
* This driver provides firmware functions to manage the following
* functionalities of the PSRAM peripheral:
* + Initialization/de-initialization functions
* + Timing management functions
* + Configuration functions
|
GPIO |
* This driver provides firmware functions to manage the following
* functionalities of the GPIO peripheral:
* + Initialization/de-initialization functions
* + Data access functions
* + Port configuration functions
|
HSEM |
* This driver provides firmware functions to manage the following
* functionalities of the HSEM peripheral:
* + IT/FLAGS management functions
* +Data management functions
|
I2C |
* This driver provides firmware functions to manage the following
* functionalities of the I2C peripheral:
* + Initialization/de-initialization functions
* + IT/FLAGS management functions
* +Data management functions
* + Configuration functions
|
IPCC |
* This driver provides firmware functions to manage the following
* functionalities of the IPCC peripheral:
* + IT/FLAGS management functions
* + Enable/disable transmit and receive channels functions
|
LPTIM |
* This driver provides firmware functions to manage the following
* functionalities of the LPTIM peripheral:
* + Initialization/de-initialization functions
* + IT/FLAGS management functions
* + Configuration (Trigger / Clock / Encoder / LPTIM) functions
|
PWR |
* This driver provides firmware functions to manage the following
* functionalities of the PWR peripheral:
* + Initialization/de-initialization functions
* + FLAGS management functions
* + Configuration functions
|
RCC |
* This driver provides firmware functions to manage the following
* functionalities of the RCC peripheral:
* + Clocks management functions (HSE/HSI/CSI/LSE/LSI/MCO/PLL)
* + RTC/TIMERS functions
* + IT/FLAGS management functions
* + De-initialization functions
* + Get system and peripherals clocks frequency functions
|
RTC |
* This driver provides firmware functions to manage the following
* functionalities of the RTC peripheral:
* + Initialization/de-initialization functions
* + TIME/DATE/ALM functions
* + Configuration functions
|
SPI |
* This driver provides firmware functions to manage the following
* functionalities of the SPI peripheral:
* + Initialization/de-initialization functions
* + IT/FLAGS management functions
* + Data / DMA management functions
* + Configuration functions
|
SYSTEM |
* This driver provides firmware functions to manage the following
* functionalities of the SYSTEM peripheral:
* + SYSCFG and DBGMCU functions
|
TIM |
* This driver provides firmware functions to manage the following
* functionalities of the TIM peripheral:
* + Initialization/de-initialization functions
* + Configuration functions (Time base, Capture Compare, Output and Input Channel,
* Timer Synchro, Break, DMA Burst Mode )
* + Counter clock selection functions
* + Timer input remapping functions
* + IT/FLAGS management functions
* + DMA management functions
* + Event management functions
|
USART |
* This driver provides firmware functions to manage the following
* functionalities of the USART peripheral:
* + Initialization/de-initialization functions
* + Configuration functions (Irda, Smartcard, Half duplex,
* SPI Slave, LIN, Driver enable)
* + Advanced configurations services functions
* + IT/FLAGS management functions
* + DMA management functions
* + Data management functions
* + Execution functions
|
UTILS |
* This driver provides firmware functions to manage the following
* functionalities of the UTILS peripheral:
* + Device Electronic Signature functions
* + DELAY functions
* + SYSTEM functions
|
WWDG |
* This driver provides firmware functions to manage the following
* functionalities of the WWDG peripheral:
* + Enable / Disable functions
* + Configuration functions
* + IT/FLAGS management functions
|
4.1.3. BSP drivers
The BSP drivers offer a set of APIs relative to the hardware components available in the hardware boards (LEDs, Buttons and COM port).
├── STM32MP15xx_DISCO
│ ├── bumpversion.cfg
│ ├── Release_Notes.html
│ ├── STM32MP15xx_DISCO_BSP_User_Manual.chm
│ ├── stm32mp15xx_disco_bus.c
│ ├── stm32mp15xx_disco_bus.h
│ ├── stm32mp15xx_disco.c
│ ├── stm32mp15xx_disco_conf_template.h
│ ├── stm32mp15xx_disco_errno.h
│ ├── stm32mp15xx_disco.h
│ ├── stm32mp15xx_disco_stpmic1.c
│ └── stm32mp15xx_disco_stpmic1.h
└── STM32MP15xx_EVAL
│ ├── bumpversion.cfg
│ ├── Release_Notes.html
│ ├── STM32MP15xx_EVAL_BSP_User_Manual.chm
│ ├── stm32mp15xx_eval_bus.c
│ ├── stm32mp15xx_eval_bus.h
│ ├── stm32mp15xx_eval.c
│ ├── stm32mp15xx_eval_conf_template.h
│ ├── stm32mp15xx_eval_errno.h
│ ├── stm32mp15xx_eval.h
│ ├── stm32mp15xx_eval_stpmic1.c
│ └── stm32mp15xx_eval_stpmic1.h
4.2. Middlewares
The Middlewares folder contains all available STM32Cube Middlewares including:
- FreeRTOS
- OpenAMP
![]() |
Note:
|
4.3. Projects
The "Projects" folder contains all STM32Cube examples that are classified in 3 levels as described below :
- Level 0 : Examples. It uses only the HAL drivers without any middleware component. They are available in directory Firmware/Projects/<board_name>/Examples.
- Level 1 : Applications. It provides typical use cases of each middleware component. They are available in directory Firmware/Projects/<board_name>/Applications.
- Level 2 : Demonstrations. It involves all the HAL, BSP and middleware components. They are available in directory Firmware/Projects/<board_name>/Demonstrations.
ATemplate folder is available in Firmware/Projects/<board_name>/Templates and allows quick creation and building of any firmware application on a given board.
All examples respect the same structure :
describes the example behavior and the setup required to make it work │ ├── Inc contains all header files │ ├── Remoteproc (optional): contains specific files related to the use of Linux® remote processor framework to load STM32Cube Cortex-M4 firmware │ ├── Src contains all the sources code files │ └── STM32CubeIDE contains the preconfigured project for Eclipse IDE├── OpenAMP_TTY_echo │ ├── readme.txt
You will find below a list of examples, applications and demonstrations available for STM32MP157x-EV1 Evaluation board and STM32MP157x-DK2 Discovery kit
:
Find below, the list of available projects for those boards:
Legend:
- (*) : List of STM32MP157x-DK2
and STM32MP157x-EV1
examples available with 3 IDEs ( STM32CubeIDE, IARTM, KEIL®), the others are only available with STM32CubeIDE.
- Examples, applications and demonstrations for STM32MP157C-EV1
├── STM32MP157C-EV1
│ ├── Applications
│ │ ├── CoproSync
│ │ ├── CoproSync_ShutDown
│ │ ├── FreeRTOS
│ │ ├── FreeRTOS_ThreadCreation
│ │ └── OpenAMP
│ │ ├── OpenAMP_Dynamic_ResMgr
│ │ ├── OpenAMP_for_signed_fw
│ │ ├── OpenAMP_FreeRTOS_echo
│ │ ├── OpenAMP_raw
│ │ ├── OpenAMP_TTY_echo
│ │ └── OpenAMP_TTY_echo_wakeup
│ ├── Demonstrations
│ │ └── AI_Character_Recognition
│ ├── Examples
│ │ ├── ADC
│ │ │ └── ADC_AnalogWatchdog
│ │ │ └── ADC_MultiChannelSingleConversion
│ │ │ └── ADC_OverSampler
│ │ │ └── ADC_SingleConversion_TriggerTimer_DMA
│ │ ├── Cortex
│ │ │ └── CORTEXM_MPU
│ │ ├── CRC
│ │ │ └── CRC_UserDefinedPolynomial
│ │ ├── CRYP
│ │ │ └── CRYP_AES_DMA
│ │ ├── DAC
│ │ │ └── DAC_SimpleConversion
│ │ ├── DMA
│ │ │ └── DMA_FIFOMode
│ │ ├── FDCAN
│ │ │ └── FDCAN_Loopback
│ │ ├── GPIO
│ │ │ └── GPIO_EXTI
│ │ ├── HASH
│ │ │ └── HASH_SHA224SHA256_DMA
│ │ ├── I2C
│ │ │ ├── I2C_TwoBoards_ComDMA
│ │ │ └── I2C_TwoBoards_ComIT
│ │ ├── LPTIM
│ │ │ └── LPTIM_PulseCounter
│ │ │ └── LPTIM_PWM_LSE
│ │ ├── PWR
│ │ │ └── PWR_STOP_CoPro
│ │ ├── QSPI
│ │ │ └── QSPI_ReadWrite_IT
│ │ ├── SPI
│ │ │ ├── SPI_FullDuplex_ComDMA_Master
│ │ │ └── SPI_FullDuplex_ComDMA_Slave
│ │ ├── TIM
│ │ │ └── TIM_DMABurst
│ │ │ └── TIM_OnePulse
│ │ │ └──TIM_PWMOutput
│ │ │ └── TIM_Synchronization
│ │ │ └── TIM_TimeBase
│ │ ├── UART
│ │ │ └── UART_Receive_Transmit_Console
│ │ │ └── UART_TwoBoards_ComIT
│ │ └── WWDG
│ │ └── WWDG_Example
- Examples, applications and demonstrations for STM32MP157C-DK2
- Examples, applications and demonstrations for STM32MP157C-DK2
├── STM32MP157C-DK2
│ ├── Applications
│ │ ├── CoproSync
│ │ ├── CoproSync_ShutDown
│ │ ├── FreeRTOS
│ │ ├── FreeRTOS_ThreadCreation
│ │ └── OpenAMP
│ │ ├── OpenAMP_for_signed_fw
│ │ ├── OpenAMP_FreeRTOS_echo
│ │ ├── OpenAMP_raw
│ │ ├── OpenAMP_TTY_echo
│ │ └── OpenAMP_TTY_echo_wakeup
│ ├── Demonstrations
│ │ └── AI_Character_Recognition
│ ├── Examples
│ │ ├── ADC
│ │ │ └── ADC_SingleConversion_TriggerTimer_DMA
│ │ ├── Cortex
│ │ │ └── CORTEXM_MPU
│ │ ├── CRC
│ │ │ └── CRC_UserDefinedPolynomial
│ │ ├── CRYP
│ │ │ └── CRYP_AES_DMA
│ │ ├── DMA
│ │ │ └── DMA_FIFOMode
│ │ ├── FDCAN
│ │ │ └── FDCAN_Loopback
│ │ ├── GPIO
│ │ │ └── GPIO_EXTI
│ │ ├── HASH
│ │ │ └── HASH_SHA224SHA256_DMA
│ │ ├── I2C
│ │ │ └── I2C_TwoBoards_ComIT
│ │ ├── LPTIM
│ │ │ └── LPTIM_PulseCounter
│ │ ├── PWR
│ │ │ └── PWR_STOP_CoPro
│ │ ├── SPI
│ │ │ ├── SPI_FullDuplex_ComDMA_Master
│ │ │ ├── SPI_FullDuplex_ComDMA_Slave
│ │ │ ├── SPI_FullDuplex_ComIT_Master
│ │ │ └── SPI_FullDuplex_ComIT_Slave
│ │ ├── TIM
│ │ │ └── TIM_DMABurst
│ │ ├── UART
│ │ │ └── UART_Receive_Transmit_Console
│ │ │ ├── UART_TwoBoards_ComDMA
│ │ │ └── UART_TwoBoards_ComIT
│ │ └── WWDG
│ │ └── WWDG_Example
5. Get started with STM32CubeMP15 Package
The STM32CubeMP15 Package is available through the three packages (starter, developer, and distribution). To know how to get them, read STM32CubeMP15_Package_-_Getting_started article.