各位嵌入式軟件工程師想必都有類似的經(jīng)驗,使用無操作系統(tǒng)開發(fā)單片機時對于時序把控、任務延時及各任務之間的通信很難實現(xiàn)完整地條理清晰地編碼。
對于部分經(jīng)驗不足的工程師,總會存在各種各樣的問題,如因為變量、參數(shù)函數(shù)位置以及延時方法等導致程序運行效率過低的情況。實時操作系統(tǒng)能很好地解決這些問題。一般無操作系統(tǒng)的情況下,經(jīng)驗豐富的工程師可能會使用狀態(tài)機加定時器等實現(xiàn)任務的非阻塞延時,使用軟件定時器加回調函數(shù)實現(xiàn)簡單的定時任務等。
在操作系統(tǒng)中,可以統(tǒng)一使用系統(tǒng)延時rt_thread_mdelay來解決問題,操作方法類似于最開始學習單片機時的delay()函數(shù)一樣,無需擔心任務卡死。在簡單的應用中,如果使用多個任務,完全可以不用考慮系統(tǒng)會卡死。當然,該操作系統(tǒng)還有更高級的功能,此處不作贅述。
資料準備
本次移植基于國民的N32G430芯片進行移植,首先需要以下工具:
國民技術
軟件:Keil5,筆者使用的是5.27版本
開發(fā)板:淘寶隨便找一個國民技術的N32G430開發(fā)板,
下載國民技術的基礎資料包,直接將國民的鏈接粘貼在文件夾路徑框(FTP傳輸),找到如下文件:
解壓后找到,此文件為國民的基本支持包:
下載RTT NANO版本:
建議使用手動下載安裝:
下載如下:
安裝
Keil安裝完成的情況下,分別將RealThread.RT-Thread.3.1.5.pack及Nations.N32G430_DFP.1.1.0.pack雙擊安裝,無需其他設置步驟,軟件會自動安裝到位。
創(chuàng)建工程
先創(chuàng)建一個demo工程,選擇國民的N32G430芯片,確認后軟件自動進入組件選擇。
組件選擇:選中如下的內容;
如果彈出報錯,先截個圖,稍后手動拷貝,由于安裝時firmware并不會安裝到位,一般是手動拷貝的,此處手動從國民的SDK中拷貝;
Firmware路徑:
按照下圖創(chuàng)建目錄拷貝即可:
接下來,進入組件管理界面:
在剛在的工程文件夾下找到以下文件:
\Device\N32G430K8L7\CMSIS\device\system_n32g430.c
\Device\N32G430K8L7\CMSIS\device\startup\startup_n32g430.s
\Device\N32G430K8L7\n32g430_std_periph_driver\src\misc.c
\Device\N32G430K8L7\n32g430_std_periph_driver\src\n32g430_rcc.c
\Device\N32G430K8L7\n32g430_std_periph_driver\src\n32g430_gpio.c
雙擊添加:
選擇編譯器,此步驟不選沒法編譯:
之后返回組件選擇,僅保留RTT部分,前邊選組件只是為了保證后續(xù)手動移植時知道選擇哪些文件以及從哪里拷貝文件,目標文件在哪里等。
接下來配置工程的包含路徑:
添加路徑:
接下來進行第一次編譯;
出現(xiàn)如下報錯,證明文件基本移植完成,接下來可以處理系統(tǒng)對接相關內容。
首先處理系統(tǒng)時鐘:
接下來添加main文件,先建立user文件夾,在文件夾下添加main.c文件,并將文件添加至工程。
簡單寫一個空的main函數(shù),開始編譯:
編譯完成,僅一個告警,問題不大,可以忽略。
接下來處理系統(tǒng)打印,打開控制臺功能:
main任務寫個簡單的打印,編譯:
至此,移植全部完成,接下來下載編譯即可,此處不再贅述。
-
單片機
+關注
關注
6064文章
44932瀏覽量
647514 -
操作系統(tǒng)
+關注
關注
37文章
7103瀏覽量
125034
發(fā)布評論請先 登錄
RT-Thread操作系統(tǒng)在cortex-m3內核的移植原理是什么?
國產操作系統(tǒng)再“超越”,RT-Thread推動AIoT產業(yè)變革
RT-Thread編程指南
嵌入式實時操作系統(tǒng)RT-Thread的特點與體系結構及移植方法詳細說明

移植RT-Thread的原理與方法
【國產MCU移植】移植RT-Thread到國產芯片HC32F460PETB

【國產MCU移植】移植RT-Thread到國產芯片F(xiàn)M33LC026

國民技術攜手RT-Thread共同推進MCU與RT-Thread操作系統(tǒng)廣泛適配
國民技術與睿賽德科技(RT-Thread)簽署會員合作協(xié)議
RT-Thread學習筆記分享
如何創(chuàng)建RT-Thread Nano工程
RT-Thread操作系統(tǒng)的FreeRTOS兼容層
新書發(fā)布——《實時操作系統(tǒng)應用技術:RT-Thread與ARM編程實踐》

評論