diff --git a/rt-thread-version/rt-thread-standard/tutorial/quick-start/more.md b/rt-thread-version/rt-thread-standard/tutorial/quick-start/more.md index bb5679b7032b081c69837e557a108a934b1b2f69..19b6c0105ea4bd210563f63bf913ef770efcbe1b 100644 --- a/rt-thread-version/rt-thread-standard/tutorial/quick-start/more.md +++ b/rt-thread-version/rt-thread-standard/tutorial/quick-start/more.md @@ -6,6 +6,11 @@ | 厂商 | 开发板 | | -------- | ------------------------------------------------------------ | +| 芯唐 | 【强烈推荐】[Nuvoton NuMaker-PFM-M487](../quick-start/numaker-pfm-m487/quick-start.md) | +| | 【强烈推荐】[Nuvoton NuMaker-IoT-M487](../quick-start/numaker-iot-m487/quick-start.md) | +| | 【强烈推荐】[Nuvoton NK-980IOT](../quick-start/nk-980iot/quick-start.md) | +| | 【强烈推荐】[Nuvoton NuMaker-M2354](../quick-start/numaker-m2354/quick-start.md) | +| | 【强烈推荐】[Nuvoton NK-RTU980](../quick-start/nk-rtu980/quick-start.md) | | 正点原子 | 【强烈推荐】[潘多拉(IoT Board)STM32L475](../quick-start/iot_board/quick-start.md) | | | 【推荐】[nano STM32F103](../quick-start/stm32f103-atk-nano/quick-start.md) | | | 【推荐】[探索者 STM32F407](../quick-start/stm32f407-atk-explorer/quick-start.md) | @@ -17,6 +22,8 @@ | | 【推荐】[Nuvoton NK-980IOT](../quick-start/nk-980iot/quick-start.md) | | | 【推荐】[Nuvoton NuMaker-M2354](../quick-start/numaker-m2354/quick-start.md) | | | 【推荐】[Nuvoton NK-RTU980](../quick-start/nk-rtu980/quick-start.md) | +| | 【推荐】[Nuvoton NK-N9H30](../quick-start/nk-n9h30/quick-start.md) | +| | 【推荐】[Nuvoton NuMaker-M032KI](../quick-start/numaker-m032ki/quick-start.md) | ## 其他开发板及其 BSP diff --git a/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/figures/board_interface.png b/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/figures/board_interface.png new file mode 100644 index 0000000000000000000000000000000000000000..49df426650eb9acf405f3689ec546c36e55c53f8 Binary files /dev/null and b/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/figures/board_interface.png differ diff --git a/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/figures/console.png b/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/figures/console.png new file mode 100644 index 0000000000000000000000000000000000000000..7ab04331be0ebb2af5c8a16772e6c293a9f934a5 Binary files /dev/null and b/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/figures/console.png differ diff --git a/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/figures/demo_lvgl2rtt.gif b/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/figures/demo_lvgl2rtt.gif new file mode 100644 index 0000000000000000000000000000000000000000..969a582fb92b90b174c9bab7f34607f83409be49 Binary files /dev/null and b/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/figures/demo_lvgl2rtt.gif differ diff --git a/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/figures/demo_nuemwin.gif b/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/figures/demo_nuemwin.gif new file mode 100644 index 0000000000000000000000000000000000000000..8998c5afabb751c013411c7ae21f7d751e96e5a4 Binary files /dev/null and b/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/figures/demo_nuemwin.gif differ diff --git a/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/figures/nk-n9h30_spinor.gif b/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/figures/nk-n9h30_spinor.gif new file mode 100644 index 0000000000000000000000000000000000000000..e468a639d9c52eb6d8e829fc2a4b1044432b2673 Binary files /dev/null and b/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/figures/nk-n9h30_spinor.gif differ diff --git a/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/figures/nk-n9h30_sram_download.gif b/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/figures/nk-n9h30_sram_download.gif new file mode 100644 index 0000000000000000000000000000000000000000..67f8f7b23d0759c23ec7e60a892c12c46cff8285 Binary files /dev/null and b/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/figures/nk-n9h30_sram_download.gif differ diff --git a/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/quick-start.md b/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/quick-start.md new file mode 100644 index 0000000000000000000000000000000000000000..c208692c80037f6aa58d6098035fc9109304fdad --- /dev/null +++ b/rt-thread-version/rt-thread-standard/tutorial/quick-start/nk-n9h30/quick-start.md @@ -0,0 +1,217 @@ +# NK-N9H30 上手指南 + +## 简介 + +新唐科技提供 emWin 开发平台其采用新唐的 N9H 微处理器系列,此为一套完整的人机显示接口解决平台,支持最高分辨率为 1024x768 像素显示器,因 N9H 系列采用 ARM926EJ-S 为内核,运行速度达 300 MHz,最高可驱动彩色 1024x768 像素并行端口(Parallel Port),内建 TFT LCD 控制器与 2D 图形加速器,彩度可达 160 万色(24 位)LCD 屏幕输出,高分辨率与高彩度可为用户人机显示接口提供更顺畅与华丽的显示效果。 + +开发板外观如下图所示: + +![board](figures/board_interface.png) + +该开发板常用 **板载资源** 如下: + +- MPU:N9H30F61IEC (or N9H30F63IEC) +- 工作频率最高可达 300 MHz +- 内建 64MB DDR-II 内存 +- 外部装置:32MB SPI-NOR Flash、NAU8822 Audio Codec、NAND flash +- 常用外设 + * LED:2 个 + * 按键:6 个 +- 常用接口:串口、Dual RJ-45 接口、1xUSB Dual-role 2.0、Micro SD。 +- 调试接口:外挂 J-link 调试 或 使用 NuWriter 烧录软件、SDRAM 下载。 +- 7” (800x480) 24-bit RGB LCD + +开发板更多详细信息请参考 [Nuvoton Direct](https://direct.nuvoton.com/en/numaker-emwin-n9h30)。 + +## 软硬件需求 + +### 软件需求 + +- Window 10 操作系统。 +- Env RT-Thread 开发辅助工具。 +- Arm MDK v5(或是 v4) – 工程编译软件。(Optional) +- 终端联机工具,如 Tera Term。 +- RT-Thread 源码。 + +### 硬件需求 + +- NK-N9H30 开发板。 +- USB Micro 数据传输线 1 条。 + +## 准备工作 + +NK-N9H30 板级支持包提供 MDK5 及 GCC 开发环境,介绍如何将示例程序运行起来。运行示例程序前需要做如下准备工作: + +- 源码获取 + + 在 env 窗口内运行 git clone 将程序拷贝到本地端。[源码目录说明](../src_code_introduction/rtthread_dir.md) + + ```bash + git clone https://github.com/RT-Thread/rt-thread + ``` + +- 开发环境 + + 支持 GCC, MDK5 开发环境. + + | IDE/Compiler | Tested version | + | ---------- | ---------------------------- | + | MDK5 | 5.26.2 | + | GCC | GCC 5.4.1 20160919 (release) | + +- PC 机连接 + + 使用 1 条 USB 线连接开发板的 USB0 Device port 到 PC 机。 使用 1 条 USB2TTL 线连接开发板的 CON2 port 到 PC 机 + +## 运行板载功能演示 + +- 下载项目相应套件 + + 执行下列命令下载项目相关文件。 + +```bash + # cd rt-thread + # cd bsp/nuvoton/nk-n9h30 + # menuconfig --generate + # pkgs --update + Cloning into '\bsp\nuvoton\nk-n9h30\packages\wavplayer-latest'... + remote: Enumerating objects: 52, done. + remote: Counting objects: 100% (5/5), done. + remote: Compressing objects: 100% (5/5), done. + remote: Total 52 (delta 0), reused 4 (delta 0), pack-reused 47 + Unpacking objects: 100% (52/52), 25.63 KiB | 144.00 KiB/s, done. + ==============================> WAVPLAYER latest is downloaded successfully. + Cloning into '\bsp\nuvoton\nk-n9h30\packages\NUemWin-latest'... + remote: Enumerating objects: 359, done. + remote: Counting objects: 100% (359/359), done. + remote: Compressing objects: 100% (123/123), done. + remote: Total 359 (delta 255), reused 338 (delta 236), pack-reused 0 + Receiving objects: 100% (359/359), 23.79 MiB | 2.13 MiB/s, done. + Resolving deltas: 100% (255/255), done. + ==============================> NUEMWIN latest is downloaded successfully. + ...... +``` + + +- GCC 编译项目 + + 执行下列指令进行 gcc 编译工程,生成的文件为 rtthread.bin。 + +```bash + # cd rt-thread + # cd bsp/nuvoton/nk-n9h30 + # scons + … + … + LINK rtthread.elf + arm-none-eabi-objcopy -O binary rtthread.elf rtthread.bin + arm-none-eabi-size rtthread.elf + text data bss dec hex filename + 2705416 36721 4797111 7539248 730a30 rtthread.elf + scons: done building targets. + + \bsp\nuvoton\nk-n9h30\rtthread.bin +``` + +- MDK5 编译项目 + + 通过下列指令选译生成 MDK5 项目工程文件。MDK 项目工程产生在这个目录内,文件名为 project.uvprojx。 + +```bash + # cd rt-thread + # cd bsp/nuvoton/nk-n9h30 + # scons --target=mdk5 –s + + \bsp\nuvoton\nk-n9h30\project.uvprojx +``` + +## 使用 NuWriter 工具 + +進行下列操作之前,需先设定 **Power-on setting to USB booting**。 + [Download NuWriter](https://github.com/OpenNuvoton/NUC970_NuWriter) + +- 下载固件至 SDRAM 地址 + + ![run](figures/nk-n9h30_sram_download.gif) + + Step 1: 选择下载类型 **Choose type: DDR/SRAM** 。 + + Step 2: 按下 **Re-Connect**。 + + Step 3: 选择 **Choose file: Specify path of your rtthread.bin file.**。 + + Step 4: 输入 **Execute Address: 0x0**。 + + Step 5: 按下 **Option: Download and run**。 + + Step 6: 按下 **Download**。 + + Step 7: 查看 **rtthread 是否运行**。 + +- 烧录固件至 SPI NOR Flash + + ![run](figures/nk-n9h30_spinor.gif) + + Step 1: 选择下载类型 **Choose type: SPI** 。 + + Step 2: 按下 **Re-Connect**。 + + Step 3: 选择 **Choose file: Specify path of your rtthread.bin file.**。 + + Step 4: 点选 **Image Type: uBoot** + + Step 5: 输入 **Execute Address: 0x0**。 + + Step 6: 按下 **Program** 并等待结束。 + + Step 7: 设定 **Power-on setting to SPI NOR booting** + + Step 8: 按下 **Reset 按键**。 + + Step 9: 查看 **rtthread 是否运行**。 + +## 演示 + +使用 Tera Term 终端软件操作 rt-thread finsh/msh 命令行功能。串口的配置如图所示。 +![console](figures/console.png) + +### Run NUemWin on NK-N9H30 + +```bash + \ | / +- RT - Thread Operating System + / | \ 4.0.3 build May 12 2021 + 2006 - 2021 Copyright by rt-thread team + +msh /> nu_touch_start +msh /> nuemwin_start + + + +msh /> nuemwin_stop +``` + +![NUemWin](figures/demo_nuemwin.gif) + +### Run LittlevGL2RTT on NK-N9H30 + +**Please check out modified version with GE2D accelerating from [Here](https://github.com/wosayttn/LittlevGL2RTT)** + +```bash + \ | / +- RT - Thread Operating System + / | \ 4.0.3 build May 12 2021 + 2006 - 2021 Copyright by rt-thread team + +msh /> nu_touch_start +msh /> lv_demo + + + +msh /> +``` + +![LvGL](figures/demo_lvgl2rtt.gif) + +## 继续学习 +已完成 RT-Thread 快速上手!点击这里进行 [内核学习](../../kernel/kernel-video.md) 。 diff --git a/rt-thread-version/rt-thread-standard/tutorial/quick-start/numaker-m032ki/figures/board.png b/rt-thread-version/rt-thread-standard/tutorial/quick-start/numaker-m032ki/figures/board.png new file mode 100644 index 0000000000000000000000000000000000000000..1aada0f8263e6fb368bd7d959cb732e45a5c1d2a Binary files /dev/null and b/rt-thread-version/rt-thread-standard/tutorial/quick-start/numaker-m032ki/figures/board.png differ diff --git a/rt-thread-version/rt-thread-standard/tutorial/quick-start/numaker-m032ki/figures/console.png b/rt-thread-version/rt-thread-standard/tutorial/quick-start/numaker-m032ki/figures/console.png new file mode 100644 index 0000000000000000000000000000000000000000..7ab04331be0ebb2af5c8a16772e6c293a9f934a5 Binary files /dev/null and b/rt-thread-version/rt-thread-standard/tutorial/quick-start/numaker-m032ki/figures/console.png differ diff --git a/rt-thread-version/rt-thread-standard/tutorial/quick-start/numaker-m032ki/figures/nulinkme_isw.png b/rt-thread-version/rt-thread-standard/tutorial/quick-start/numaker-m032ki/figures/nulinkme_isw.png new file mode 100644 index 0000000000000000000000000000000000000000..8b7c360955b6354ec6ebb52d12ae752edd231e86 Binary files /dev/null and b/rt-thread-version/rt-thread-standard/tutorial/quick-start/numaker-m032ki/figures/nulinkme_isw.png differ diff --git a/rt-thread-version/rt-thread-standard/tutorial/quick-start/numaker-m032ki/figures/numicro_mcu.png b/rt-thread-version/rt-thread-standard/tutorial/quick-start/numaker-m032ki/figures/numicro_mcu.png new file mode 100644 index 0000000000000000000000000000000000000000..301fe5d2dc37e01279b5fa0835ffdb29451fab5a Binary files /dev/null and b/rt-thread-version/rt-thread-standard/tutorial/quick-start/numaker-m032ki/figures/numicro_mcu.png differ diff --git a/rt-thread-version/rt-thread-standard/tutorial/quick-start/numaker-m032ki/figures/run.gif b/rt-thread-version/rt-thread-standard/tutorial/quick-start/numaker-m032ki/figures/run.gif new file mode 100644 index 0000000000000000000000000000000000000000..a93576662c0a07a64b23587c870958e9b3cb9338 Binary files /dev/null and b/rt-thread-version/rt-thread-standard/tutorial/quick-start/numaker-m032ki/figures/run.gif differ diff --git a/rt-thread-version/rt-thread-standard/tutorial/quick-start/numaker-m032ki/quick-start.md b/rt-thread-version/rt-thread-standard/tutorial/quick-start/numaker-m032ki/quick-start.md new file mode 100644 index 0000000000000000000000000000000000000000..372f8900286fd3a76a45b04e3dbee3b73a9c5092 --- /dev/null +++ b/rt-thread-version/rt-thread-standard/tutorial/quick-start/numaker-m032ki/quick-start.md @@ -0,0 +1,146 @@ +# NuMaker-M032KI 上手指南 + +## 简介 + +NuMaker-M032KI 由两部分组成,采用 NuMicro® M032KIAAE 微控制器的主控板,与 Nu-Link2-Me 除错刻录器。使用者只需使用此开发板就可以开发、刻录并验证应用程序。 + +NuMaker-M032KI 的主控板带有 M032KIAAE 所有脚位的扩展接口,并提供兼容于 Arduino UNO 的接口,还有灵活的电源供应设计,方便搭配各式接口设备或 Arduino 模块,进行开发。主控板并带有一电流量测接口,用户在开发过程中可轻松量测微控制器的功耗。 + +Nu-Link2-Me 刻录与除错器可透过SWD接口进行刻录与除错,还带有一 16 Mbit 大小的 SPI Flash 供脱机刻录使用。Nu-Link2-Me 也是一个 USB 存储装置,支持拖拉式刻录,将档案拖拉至 Nu-Link2-Me 即可刻录目标芯片。Nu-Link2-Me 支持虚拟串口功能,可输出讯息至终端机窗口。Nu-Link2-Me 可从开发板上拆下,作为量产刻录工具使用。 + +开发板外观如下图所示: + +![board](figures/board.png) + +该开发板常用 **板载资源** 如下: + +- MCU:M032KIAAE,主频 72 MHz,512KB Dual Bank FLASH ,96kB RAM +- 外部装置:N/A +- 常用外设 + * LED:2 个 + * 按键:1 个 +- 常用接口:USB 转串口、USB 1.1 Device +- 调试接口,板载的 Nu-Link2-Me 下载 + +开发板更多详细信息请参考 [Nuvoton Direct](https://direct.nuvoton.com/tw/numaker-m032ki)。 + +## 软硬件需求 + +### 软件需求 +- Window 10 操作系统。 +- Env RT-Thread 开发辅助工具。 +- IAR-8.3 以上版本或是 Arm MDK v5 – 工程编译软件。(Optional) +- Nu-Link Driver for Keil MDK。(Optional) +- Nu-Link Driver for IAR。(Optional) +- 终端联机工具,如 Tera Term。 +- RT-Thread 源码。 + +### 硬件需求 +- NuMaker-M032KI 开发板。 +- USB Micro 数据传输线 1 条。 + +## 准备工作 + +NuMaker-M032KI 板级支持包提供 MDK5 和 IAR 工程,并且支持 GCC 开发环境,介绍如何将示例程序运行起来。运行示例程序前需要做如下准备工作: + + 1. 源码获取 + + 在 env 窗口内运行 git clone 将程序拷贝到本地端。[源码目录说明](../src_code_introduction/rtthread_dir.md) + + ```bash + git clone https://github.com/RT-Thread/rt-thread + ``` + + 2. 开发环境 + + 支持 GCC, MDK5, IAR 开发环境. + + | IDE/Compiler | Tested version | + | ---------- | ---------------------------- | + | MDK5 | 5.28 | + | IAR | 8.32 | + | GCC | GCC 6.3.1 20170620 (Need update env) | + + 注意: 开发前,请先安装 [Nu-Link_Keil](https://www.nuvoton.com/resource-download.jsp?tp_GUID=SW1120200221180521) 或是 [Nu-Link_IAR](https://www.nuvoton.com/resource-download.jsp?tp_GUID=SW1120200221180914) 驱动。 + + 3. 使用 USB 线连接开发板的 USB ICE Connector 到 PC 机。 + +## 运行板载功能演示 + +- 下载项目相应套件 + + 执行下列命令下载项目相关文件。 + +```bash + # cd rt-thread + # cd bsp/nuvoton/numaker-m032ki + # menuconfig --generate +``` + +- GCC 编译项目 + + 执行下列指令进行 gcc 编译工程,生成的文件为 rtthread.bin。 + +```bash + # cd rt-thread + # cd bsp/nuvoton/numaker-m032ki + # scons + … + … + LINK rtthread.elf + arm-none-eabi-objcopy -O binary rtthread.elf rtthread.bin + arm-none-eabi-size rtthread.elf + text data bss dec hex filename + 176328 3696 22840 202864 31870 rtthread.elf + scons: done building targets. + + \bsp\nuvoton\numaker-m032ki\rtthread.bin +``` + +- MDK5 编译项目 + + 通过下列指令选译生成 MDK5 项目工程文件。MDK 项目工程产生在这个目录内,文件名为 project.uvprojx。 + +```bash + # cd rt-thread + # cd bsp/nuvoton/numaker-m032ki + # scons --target=mdk5 –s + + \bsp\nuvoton\numaker-m032ki\project.uvprojx +``` + +- IAR 编译项目 + + 可以通过下列指令生成 IAR 项目工程文件。IAR 项目工程产生在这个目录内,文件名为 project.ewp 和 project.eww。(注意: 编译 IAR 项目工程需使用 8.3 以上的版本。) + +```bash + # cd rt-thread + # cd bsp/nuvoton/numaker-m032ki + # scons --target=iar –s + + \bsp\nuvoton\numaker-m032ki\project.eww + \bsp\nuvoton\numaker-m032ki\project.ewp +``` + +- 固件下载 + + 简易的下载方法: 通过拖拉文档到 NuMicro MCU 虚拟磁盘或是使用传送到 NuMicro MCU 虚拟磁盘的方式,即可完成固件下载。 + + ![numicro_mcu](figures/numicro_mcu.png) + + 首先,配置 Nu-Link2-Me 上的指拨开关,将四个开关拨到 ‘ON’ 的位置。 + + ![isw](figures/nulinkme_isw.png) + + 配置完成后,将开发板使用 Micro USB 连接线连接计算机,我的计算机将出现一个 NuMicro MCU 虚拟磁盘。接下来,我们将使用这个虚拟磁盘来进行固件下载。 + +- 运行 + + 使用 Tera Term 终端软件操作 rt-thread finsh/msh 命令行功能。串口的配置如图所示。(注意: Nuvoton Virtual Com Port 对应的串口编号可在设备管理器内找到。例如: 串口编号为 COM30, 115200N81。) + + ![console](figures/console.png) + + ![run](figures/run.gif) + +## 继续学习 +已完成 RT-Thread 快速上手!点击这里进行 [内核学习](../../kernel/kernel-video.md) 。