# M5531BSP
**Repository Path**: OpenNuvoton/M5531BSP
## Basic Information
- **Project Name**: M5531BSP
- **Description**: BSP of M5531 Series MCU
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2025-03-26
- **Last Updated**: 2025-10-29
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# M5531 Series CMSIS BSP
To experience the powerful features of M5531 series in few minutes, please select the sample code to download and execute on the NuMaker-M5531 board. Open the project files to build them with Keil® MDK, IAR, NuEclipse or VS Code, and then download and trace them on the NuMaker board to see how it works.
Please note that M5531 Series CMSIS BSP enables CPU Level-1 I/D-Cache by default but does not guarantee Cache coherence.
## .\Document\
- CMSIS.html
Document of CMSIS version 6.1.0.
- NuMicro M5531 Series CMSIS BSP Driver Reference Guide.chm
This document describes the usage of drivers in M5531 Series BSP.
- NuMicro M5531 Series CMSIS BSP Revision History.pdf
This document shows the revision history of M5531 Series BSP.
- VSCode Quick Start Guide
This documents guide to install, configure and use VS Code.
## .\Library\
- CMSIS
Cortex® Microcontroller Software Interface Standard (CMSIS) V6.1.0 definitions by Arm® Corp.
M5531 CMSIS-Drivers do not guarantee thread safety and Cache coherence. The source and RTE_Device header files are in the "Driver\Source" sub-folder. Please add source files and copy RTE_Device header files into your project. Projects can define PRJ_RTE_DEVICE_HEADER macro to include the private RTE_Device.h.
- Commu
Helper functions of communication protocols, e.g., XMODEM.
- CryptoAccelerator
Crypto accelerator source code for mbedtls.
- Device
CMSIS compliant device header files.
- JpegAcceleratorLib
SIMD accelerator library binary and header files for libjpeg.
- PowerDeliveryLib
Power delivery library binary and header files for dual, source and sink role.
- SmartcardLib
Smart card library binary and header files.
- StdDriver
All peripheral driver header and source files.
- Storage
Disk I/O modules for FatFs.
- UsbHostLib
USB host library source code.
## .\Sample Code\
- CortexM55
Cortex®-M55 sample code.
- Crypto
Crypto sample code using Mbed TLS library.
- FreeRTOS
Simple FreeRTOS™ demo code.
- Hard\_Fault\_Sample
Show hard fault information when hard fault happened.
The hard fault handler shows some information including program counter, which is the address where the processor is executed when the hard fault occurs. The listing file (or map file) can show what function and instruction that is.
It also shows the Link Register (LR), which contains the return address of the last function call. It can show the status where CPU comes from to get to this point.
- ISP
Sample code for In-System-Programming.
- NuMaker-M5531
Sample code for NuMaker-M5531 board.
- PowerDelivery
Sample code for power delivery on UTCPD board.
- PowerManagement
Sample code for power management.
- SecureApplication
Sample code for secure application.
VS Code projects require Python 3.12 at least for post-build.
- Semihost
Show how to print and get character through IDE console window.
- StdDriver
Sample code to demonstrate the usage of M5531 series MCU peripheral driver APIs.
- Template
Project template for M5531 series MCU.
- TrustZone
Demo of secure code and non-secure code.
- XOM
Demonstrate how to create XOM library and use it.
## .\ThirdParty\
- FatFs
An open-source FAT/exFAT file system library. A generic FAT file system module for small embedded systems.
- FreeRTOS
Real-time operating system for microcontrollers.
- libjpeg
A software implements JPEG baseline, extended-sequential, and progressive compression processes maintained and published by the Independent JPEG Group (IJG).
- libmad
A MPEG audio decoder library that currently supports MPEG-1 and the MPEG-2 extension to lower sampling frequencies, as well as the de facto MPEG 2.5 format. All three audio layers — Layer I, Layer II, and Layer III (i.e., MP3) are fully implemented.
- lwIP
A widely used open source TCP/IP stack designed for embedded systems.
- mbedtls
Mbed TLS offers an SSL library with an intuitive API and readable source code, so you can actually understand what the code does.
- openmv
An open-source, low-cost machine vision platform. It supports image processing functions such as face detection, key-pointes descriptions, color tracking, QR and Bar code decoding and more.
This BSP only includes imlib (core library). Python interface is not included.
- paho.mqtt.embedded-c
Eclipse Paho MQTT C/C++ client for Embedded platforms.
- shine
A blazing fast MP3 encoding library implemented in fixed-point arithmetic.
## .\Tool\
- imgtool.exe
imgtool.py
Used to perform the operations that are necessary to manage keys and sign images.
- OTAServerDemo_v2.2.1.apk
Secure OTA server Android APP to download firmware images with Secure OTA sample codes.
# License
**SPDX-License-Identifier: Apache-2.0**
Copyright in some of the content available in this BSP belongs to third parties.
Third parties license is specified in a file header or license file.
M5531 Series BSP files are provided under the Apache-2.0 license.