NUMAKER M2L31KI

Overview

The NuMaker M2L31KI is an Internet of Things (IoT) application focused platform specially developed by Nuvoton. The NuMaker-M2L31KI is based on the NuMicro® M2L31 series MCU with ARM® -Cortex®-M23 core.

Features:

  • 32-bit Arm Cortex®-M23 M2L31KIDAE MCU

  • Core clock up to 72 MHz

  • 512 KB embedded Dual Bank Flash and 168 KB SRAM

  • USB 2.0 Full-Speed OTG / Device

  • USB 1.1 Host

  • Arduino UNO compatible interface

  • One push-button is for reset

  • Two LEDs: one is for power indication and the other is for user-defined

  • On-board NU-Link2 ICE debugger/programmer with SWD connector

More information about the board can be found at the NuMaker M2L31KI User Manual [1].

Supported Features

The numaker_m2l31ki 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.

numaker_m2l31ki/m2l31xxx target

Type

Location

Description

Compatible

CPU

on-chip

ARM Cortex-M23 CPU1

arm,cortex-m23

ADC

on-chip

Nuvoton, NuMaker ADC controller1

nuvoton,numaker-adc

CAN

on-chip

Nuvoton NuMaker CAN FD controller, using Bosch M_CAN IP2

nuvoton,numaker-canfd

Clock control

on-chip

Nuvoton NuMaker System Clock Controller (SCC)1

nuvoton,numaker-scc

on-chip

Nuvoton NuMaker Peripheral Clock Controller (PCC)1

nuvoton,numaker-pcc

on-chip

Generic fixed-rate clock provider1

fixed-clock

Flash controller

on-chip

Nuvoton NuMaker RRAM Memory Controller1

nuvoton,numaker-rmc

GPIO & Headers

on-chip

Nuvoton Numaker GPIO1 5

nuvoton,numaker-gpio

I2C

on-chip

Nuvoton, NuMaker I2C controller4

nuvoton,numaker-i2c

Interrupt controller

on-chip

ARMv8-M NVIC (Nested Vectored Interrupt Controller)1

arm,v8m-nvic

LED

on-board

Group of GPIO-controlled LEDs1

gpio-leds

MTD

on-chip

Flash node1

soc-nv-flash

on-board

Fixed partitions of a flash (or other non-volatile storage) memory1

fixed-partitions

Pin control

on-chip

Pin controller is responsible for controlling pin function selection and pin properties1

nuvoton,numaker-pinctrl

PPC architecture

on-chip

Nuvoton NuMaker USB Type-C power path controller1

nuvoton,numaker-ppc

PWM

on-chip

Nuvoton, NuMaker PWM controller2

nuvoton,numaker-pwm

Reset controller

on-chip

Nuvoton, Numaker-RESET1

nuvoton,numaker-rst

RTC

on-chip

Nuvoton, NuMaker RTC controller1

nuvoton,numaker-rtc

Serial controller

on-chip

Nuvoton, Numaker-UART1 7

nuvoton,numaker-uart

SPI

on-chip

Nuvoton, NuMaker SPI controller4

nuvoton,numaker-spi

SRAM

on-chip

Generic on-chip SRAM description1

mmio-sram

USB Type-C Port Controller

on-chip

Nuvoton NuMaker USB Type-C port controller1

nuvoton,numaker-tcpc

Timer

on-chip

ARMv8-M System Tick1

arm,armv8m-systick

USB

on-chip

Nuvoton NuMaker USB 1.1 device controller1

nuvoton,numaker-usbd

USB Type-C

on-chip

Nuvoton NuMaker USB Type-C VBUS controller1

nuvoton,numaker-vbus

Watchdog

on-chip

Nuvoton, NuMaker window watchdog timer1

nuvoton,numaker-wwdt

The on-board 12-MHz crystal allows the device to run at its maximum operating speed of 72MHz.

More details about the supported peripherals are available in M2L31 TRM [1]

Building and Flashing

Flashing

Here is an example for the Hello World application.

On board debugger Nu-link2 can emulate UART0 as a virtual COM port over usb, To enable this, set ISW1 DIP switch 1-3 (TXD RXD VOM) to ON. Connect the NuMaker-M2L31KI to your host computer using the USB port, then run a serial host program to connect with your board. For example:

$ minicom -D /dev/ttyACM0
# From the root of the zephyr repository
west build -b numaker_m2l31ki samples/hello_world
west flash

Debugging

Here is an example for the Hello World application.

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

Step through the application in your debugger.

References