rt-thread/bsp/nuvoton/numaker-iot-ma35d1
Wayne bf8db63c78
Fix building issue of Nuvoton porting. (#6833)
* Fix  building issue of Nuvoton porting.

1. Change thread priority of lwip-tcpip and erx.
2. Remove '')' garbage symbols.
3. mm driver issues.

Co-authored-by: Wayne Lin <wclin@nuvoton.com>
2023-01-11 16:26:56 +08:00
..
applications
board Fix building issue of Nuvoton porting. (#6833) 2023-01-11 16:26:56 +08:00
figures
linking_scripts
nuwriter_scripts
preload Fix building issue of Nuvoton porting. (#6833) 2023-01-11 16:26:56 +08:00
.config
Kconfig format Kconfig and sconscript 2023-01-08 22:52:13 -05:00
README.md
SConscript
SConstruct format Kconfig and sconscript 2023-01-08 22:52:13 -05:00
rtconfig.py

README.md

NuMaker-IOT-MA35D1

Introduction

The NuMicro® MA35D1 series is a heterogeneous multi-core microprocessor targeted to high-end edge IIoT gateway. It is based on dual 64-bit Arm® Cortex®-A35 cores with speed up to 1 GHz, and one 180 MHz Arm® Cortex®-M4 core. Based on the high-performance cores, the MA35D1 series facilities the tiny AI/ML for edge computing.

The NuMaker-IoT-MA35D1 evaluation board provides the Ethernet and connectivity features of Nuvoton NuMicro MA35D1 series microprocessors, based on MA35D16F987C (LQFP216 package, and stacking a 512 MB DDR). The NuMaker-IoT-MA35D1 includes rich peripherals such as one set of Gigabit Ethernet, one set of Megabit Ethernet, high-speed USB2.0 Host and device, one set of SD3.0 in MicroSD slot, one set of CAN FD, and RS-485 and RS232 serial communication ports. Furthermore, the NuMaker-IoT-MA35D1 provides discrete power supply to be the reference design. It also provides compatible headers with Raspberry Pi and Arduino UNO for minimizing effort in connecting popular sensors and modules to the system.

NuMaker-IoT-MA35D1(Frontend view)

NuMaker-IoT-MA35D1(Backend view)

fishy

fishy

NuMaker-IoT-MA35D1 Features

  • Target Chip
    • MA35D16F987C (LQFP216) MCP package with DDR3L (512 MB), which can run up to 800 MHz
  • Power
    • 5V/2A Power Jack, USB VCOM Port or HUSB0 Device
    • Battery header for RTC power
  • Memory Devices (Power-on Setting DIP switches for system booting selection)
    • Quad SPI Flash (QSPI0): Winbond SPI-NAND Flash W25N04KWZEIR (512 MB)
    • NAND Flash: Winbond NAND Flash W29N08GVSIAA (1 GB)
    • MicroSD memory card (SD1, supports SD3.0)
  • One Gigabit Ethernet: 1 x RGMII PHY (RTL8211FDI-CG) and RJ45 port connector
  • One 10/100 Megabit Ethernet: 1 x RMII PHY (RTL8201FI-VC) and RJ45 port connector
  • Two High Speed USB: HSUSB0 (Host/Device) and HSUSB1 (Host)
  • One Raspberry Pi 40-pin header connector
  • Arduino UNO Compatible Extension Connectors
  • One Camera Capture (CMOS sensor) header connector
  • One Audio codec (NAU88C22) with microphone input and speaker output
  • One set of RS232: Transceiver and header connector
  • One set of RS485: Transceiver and header connector
  • One set of CAN FD: Transceiver and header connector
  • Four Key buttons
  • Three user defined LEDs

Supported compiler

Support GCC compiler. More information of these compiler version as following:

Compiler Tested version
GCC Arm Embedded Toolchain 10.3-2021.10 (Env 1.3.5 embedded version)

Build RT-Thread

You can build rt-thread.bin for NuMaker-IoT-MA35D1 board. Steps as following. Notice, the building will include ma35-rtp/rtthread.bin file into numaker-iot-ma35d1/rtthread.bin for heterogeneous multi-core demonstration.

# cd rt-thread/bsp/nuvoton/numaker-iot-ma35d1
# menuconfig --generate
# scons -c
# pkgs --update
# scons -j 16

<Path-to-rt-thread>\bsp\nuvoton\numaker-iot-ma35d1\rtthread.bin

Program firmware using NuWriter

To switch SW7 dip-switch on NuMaker-IoT-MA35D1 to do corresponding actions as below.

Power-on Setting L: OFF dip-switch H: ON dip-switch

Memory Storage Burn to settings Boot from settings
DDR
  • Switch 1(PG0) to ON.
  • Switch 3(PG2) to ON.
  • Switch 4(PG3) to ON.
  • Switch Others to OFF.
Raw NAND
(Select Ignore BCH and Page setting)
  • Switch 1(PG0) to ON.
  • Switch 3(PG2) to ON.
  • Switch 4(PG3) to ON.
  • Switch Others to OFF.
  • Switch 1(PG0) to ON.
  • Switch 4(PG3) to ON.
  • Switch Others to OFF.
Serial NAND
(Select 4-bit mode)
  • Switch 1(PG0) to ON.
  • Switch 3(PG2) to ON.
  • Switch 4(PG3) to ON.
  • Switch 7(PG6) to ON.
  • Switch Others to OFF.
  • Switch 1(PG0) to ON.
  • Switch 7(PG6) to ON.
  • Switch Others to OFF.

Download to DDR and Run

You can run windows batch script to download rtthread.bin into memory, then run it. The path of batch script as below.

For 512MB DD3L downloading:

<path-to-rtthread>\bsp\nuvoton\numaker-iot-ma35d1\nuwriter_scripts\nuwriter_ddr3_512mb_download_and_run.bat

For 128MB DD2 downloading:

<path-to-rtthread>\bsp\nuvoton\numaker-iot-ma35d1\nuwriter_scripts\nuwriter_ddr2_128mb_download_and_run.bat

Burn to Serial NAND

You can run windows batch script to download rtthread.bin into SPI-NAND flash, then run it. The path of batch script as below.

<path-to-rtthread>\bsp\nuvoton\numaker-iot-ma35d1\nuwriter_scripts\nuwriter_spinand_programming.bat

Burn to Raw NAND

You can run windows batch script to download rtthread.bin into Raw NAND flash, then run it. The path of batch script as below.

<path-to-rtthread>\bsp\nuvoton\numaker-iot-ma35d1\nuwriter_scripts\nuwriter_nand_programming.bat

Test

Connector on board Wiring Usage
VCOM(CON9) Use an USB line rt-thread@CA35 Console

You can use Tera Term terminate emulator (or other software) to type commands of RTT. All parameters of serial communication are shown in below image. Here, you can find out the corresponding port number of Nuvoton Virtual Com Port in window device manager.

fishy


Purchase

Resources