在 NUC980 上執行 RT-Thread

哈拎發表於2021-06-29

NUC980 & RT-Thread

(1) NUC980

nuc980 是新塘推出的基於 ARM926EJ-S,整合 64 MB 或 128 MB DDR-II 的處理器,主頻可以達到300MHZ,有 64-pin、128-pin 和 216-pin LQFP 封裝,主要應用為工業自動化控制、工業物聯網閘道器 ( Gateway ) 、網路印表機裝置、電錶集中器、智慧家居閘道。

(2) RT-Thread

RT-Thread 是一個國產的 RTOS ,詳細資訊檢視 RT-Thread 官網

開發環境

  • Win10
  • 編譯器:GCC,這裡使用 RT-Thread 提供的 RT-Thread env 中的 GCC

硬體

我手上的硬體是官方出的 NuMaker-RTU-NUC980

該板子上使用的是 NUC980DR61YC ,內建 64MB DDR,LQFN 64 封裝。

下載 RT-Thread env

可以在 https://www.rt-thread.org/page/download.html 找到 RT-Thread env 下載地址:

下載解壓出來後為:

裡面的 Env_User_Manual_zh.pdf 有該工具的使用說明

獲取 RT-Thread

(20210526)看了下 RT-Thread 已 release 的最新的版本,雖然已經對 NUC980 進行支援,可是沒有 NuMaker-RTU-NUC980 的工程,不過 RT-Thread github 中最新的程式碼已經有了:

這裡選擇從 rt-thread github 下載原始碼:

編譯

下載完 RT-Thread 後,首先進入目錄 rt-thread\bsp\nuvoton\nk-rtu980,然後右鍵開啟 RT-Thread env,或者開啟 RT-Thread env,然後進入目錄 rt-thread\bsp\nuvoton\nk-rtu980,如下:

這裡什麼都不做改動,直接使用預設配置,在 RT-Thread env 中 執行 menuconfig --generate,生成配置:

然後更新 rt-thread 包,並下載所使用軟體包:

然後執行 scons 指令進行編譯:

燒錄執行

板子上一共有2 個 micro usb 介面,一個用於是連線到 nuc980 usb,可以用於給 nuc980 下載韌體,還有一個USB是連線到板子上的 USB 轉 TTL,可以用於除錯,把NUC980 設定為 USB 啟動進入下載模式,然後分別把這兩個 USB 口都連線到 PC,使用 MobaXterm 開啟對應 COM口,,開啟 NuWriter,選擇 NUC980DR61YC,這裡讓 RT-Thread 在 nuc980 RAM上跑,如下:

下載,然後可以看到 RT-Thread 已經執行起來了,並且板子上一個 LED 也閃爍起來了:

把 RT-Thread 跑起來了,看了官方給出的 nuc980 支援的儲存裝置(Storage_Supporting_List),如果是 SPI NOR Flash 的話,最大支援 256M bit,也就是 32M 位元組,nuc980 支援的最少的 DRAM 也有 64M 位元組,這麼大的 Flash 跟 RAM,如果是當微控制器跑的話,嘿嘿,那真的是可以為所欲為了:

相關文章