1.. zephyr:board:: numaker_m2l31ki
2
3Overview
4********
5
6The NuMaker M2L31KI is an Internet of Things (IoT) application focused platform
7specially developed by Nuvoton. The NuMaker-M2L31KI is based on the NuMicro® M2L31
8series MCU with ARM® -Cortex®-M23 core.
9
10Features:
11=========
12- 32-bit Arm Cortex®-M23 M2L31KIDAE MCU
13- Core clock up to 72 MHz
14- 512 KB embedded Dual Bank Flash and 168 KB SRAM
15- USB 2.0 Full-Speed OTG / Device
16- USB 1.1 Host
17- Arduino UNO compatible interface
18- One push-button is for reset
19- Two LEDs: one is for power indication and the other is for user-defined
20- On-board NU-Link2 ICE debugger/programmer with SWD connector
21
22More information about the board can be found at the `NuMaker M2L31KI User Manual`_.
23
24Supported Features
25==================
26
27* The on-board 12-MHz crystal allows the device to run at its maximum operating speed of 72MHz.
28
29The development board configuration supports the following hardware features:
30
31+-----------+------------+-----------------------+
32| Interface | Controller | Driver/Component      |
33+===========+============+=======================+
34| NVIC      | on-chip    | nested vectored       |
35|           |            | interrupt controller  |
36+-----------+------------+-----------------------+
37| SYSTICK   | on-chip    | system clock          |
38+-----------+------------+-----------------------+
39| UART      | on-chip    | serial port           |
40+-----------+------------+-----------------------+
41| GPIO      | on-chip    | gpio                  |
42+-----------+------------+-----------------------+
43
44Other hardware features are not yet supported on Zephyr porting.
45
46More details about the supported peripherals are available in `M2L31 TRM`_
47Other hardware features are not currently supported by the Zephyr kernel.
48
49Building and Flashing
50*********************
51Flashing
52========
53
54Here is an example for the :zephyr:code-sample:`hello_world` application.
55
56On board debugger Nu-link2 can emulate UART0 as a virtual COM port over usb,
57To enable this, set ISW1 DIP switch 1-3 (TXD RXD VOM) to ON.
58Connect the NuMaker-M2L31KI to your host computer using the USB port, then
59run a serial host program to connect with your board. For example:
60
61.. code-block:: console
62
63   $ minicom -D /dev/ttyACM0
64
65.. zephyr-app-commands::
66   :zephyr-app: samples/hello_world
67   :board: numaker_m2l31ki
68   :goals: flash
69
70Debugging
71=========
72
73Here is an example for the :zephyr:code-sample:`hello_world` application.
74
75.. zephyr-app-commands::
76   :zephyr-app: samples/hello_world
77   :board: numaker_m2l31ki
78   :goals: debug
79
80Step through the application in your debugger.
81
82References
83**********
84
85.. target-notes::
86
87.. _NuMaker M2L31KI User Manual:
88   https://www.nuvoton.com/products/microcontrollers/arm-cortex-m23-mcus/m2l31-series/
89.. _M2L31 TRM:
90   https://www.nuvoton.com/products/microcontrollers/arm-cortex-m23-mcus/m2l31-series/
91