OpenNuvoton / LVGL_NUMAKER-HMI-N9H30

This repository includes LVGL music player demo and RT-Thread RTOS porting for NuMaker-HMI-N9H30 board certified by LVGL official.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

NK-N9H30

1. Introduction

Nuvoton offers HMI platforms which are embedded with Nuvoton N9H MPU. The N9H series with ARM926EJ-S core can operate at up to 300 MHz and can drive up to 1024x768 pixels in parallel port. It integrated TFT LCD controller and 2D graphics accelerator, up to 16 million colors (24-bit) LCD screen output, and provides high resolution and high chroma to deliver gorgeous display effects. It embedded up to 64 MB DDR memory, along with ample hardware storage and computing space for excellent design flexibility.

NK-N9H30

1.1 MPU specification

Features
Part NO. N9H30F61IEC(or N9H30F63IEC) (LQFP216 pin MCP package with DDR (64 MB)
CPU ARCH. 32-bit ARM926EJ-S
Operation frequency 300 MHz
Embedded SDRAM size Built-in 64MB
Crypto engine AES, DES,HMAC and SHA crypto accelerator
RMII interface 10/100 Mbps x2
USB 2.0 High Speed Host/Device x1
Audio Mono microphone / Stereo headphone
Extern storage 32MB SPI-NOR Flash
SD card slot SD

Notice: Please remember to select corresponding Part NO in NuWriter.

1.2 Interface

Interface
Two RJ45 Ethernet
An USB 2.0 HS Dual role(Host/Device) port
A microSD slot
A 3.5mm Audio connector
An ICE connector

1.3 On-board devices

Device Description Driver supporting status
Ethernet PHY IP101GR Supported
Keypad K[1, 6] Supported
LEDs Supported
TFT-LCD panel 7" inch 24b RGB Supported
Touch panel 7" inch resistive Supported
Audio Codec NAU8822, Supports MIC and earphone Supported
USB Device VCOM + MStorage Supported
USB Host MStorage Supported
SPI NOR flash W25Q256JVEQ (32 MB) Supported

2. Supported compiler

Support GCC, MDK4 and MDK5 IDE/compilers. More information of these compiler version as following:

IDE/Compiler Tested version
MDK5 5.26.2
GCC 6-2017-q1-update

Notice: Please install ICE driver for development.

3. Program firmware

3.1 SDRAM Downloading using NuWriter

You can use NuWriter to download rtthread.bin into SDRAM, then run it. SDRAM Downloading using NuWriter
Choose type: DDR/SRAM
<< Press Re-Connect >>
Choose file: Specify your rtthread.bin file.
Execute Address: 0x0
Option: Download and run
<< Press Download >>
Enjoy!!

3.2 SPI NOR flash using NuWriter

You can use NuWriter to program rtthread.bin into SPI NOR flash. SPI NOR flash
Choose type: SPI
<< Press Re-Connect >>
Choose file: Specify your rtthread.bin file.
Image Type: Loader
Execute Address: 0x0
<< Press Program >>
<< Press OK & Wait it down >>
<< Set Power-on setting to SPI NOR booting >>
<< Press Reset button on board >>
Enjoy!!

4. Program firmware using Linux NuWriter CMD utlity

Tested on UBUNTU 20.04.1 distro

Build NUC970_NuWriter_CMD

# Install related dependency libraries and host-utility for building.
sudo apt-get install libusb-1.0-0-dev
sudo apt-get install automake
sudo apt-get install pkg-config

# Clone sources.
git clone https://github.com/wosayttn/NUC970_NuWriter_CMD
cd NUC970_NuWriter_CMD

# Specify installation path.
./configure --prefix=$PWD/install

# Run autoreconf if you get some trouble on make running.
autoreconf -ivf

# Build the utility
make

# Install the utility and config into specified PREFIX folder.
make install

# Install udev rule.
sudo install -Dm644 99-nuvoton_isp.rules /etc/udev/rules.d/99-nuvoton_isp.rules

# Check the udev rule installed or not
ls -al /etc/udev/rules.d/99-nuvoton_isp.rules

# Restart udev service
sudo service udev restart
cd install/bin

List all supported DDR model

./nuwriter -d show
NUC975DK62Y.ini
NUC976DK41Y.ini
NUC972DF62Y.ini
NUC976DK51Y.ini
NUC977DK41Y.ini
NUC977DK51Y.ini
NUC97xDx61Y_360M.ini
NUC973DF62Y.ini
NUC972DF61Y.ini
NUC972DF71Y.ini
NUC977DK62Y.ini
NUC975DK51Y.ini
NUC972DF51Y.ini
NUC976DK62Y.ini

4.1 Download rtthread.bin to SDRAM and run it.

Before doing the action, don't forget plug-in USB line with CON14 on board and switch all switches on SW4 to ON, then press Reset button(SW5). Let internal booting routine enter USB booting mode.

./nuwriter -m sdram -d NUC97xDx61Y_360M.ini -a 0x0 -w rtthread.bin -n

4.2 Flash rtthread.bin into SPI flash. (Need wait a moment)

Before doing the action, don't forget plug-in USB line with CON14 on board and switch all switches on SW4 to ON, then press Reset button(SW5). Let internal booting routine enter USB booting mode.

./nuwriter -m spi -d NUC97xDx61Y_360M.ini -t uboot -a 0x0 -w rtthread.bin -v
Write UBOOT ... Passed
Verify UBOOT... Passed

After action done, don't also forget to switch all switches on SW4 to OFF, then press Reset button(SW5). Let internal booting routine enter SPI booting mode.

5. Test

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.

Serial settings

6. Purchase

7. Resources

About

This repository includes LVGL music player demo and RT-Thread RTOS porting for NuMaker-HMI-N9H30 board certified by LVGL official.


Languages

Language:C 90.2%Language:Python 3.0%Language:Assembly 2.9%Language:Shell 1.8%Language:Makefile 0.7%Language:C++ 0.6%Language:CMake 0.5%Language:M4 0.1%Language:Yacc 0.1%Language:RPC 0.1%Language:Lex 0.0%Language:HTML 0.0%Language:Perl 0.0%Language:Lua 0.0%Language:Batchfile 0.0%