1.1 RT-Thread構(gòu)建系統(tǒng)
在開始前,需要熟悉RT-Thread的構(gòu)建系統(tǒng),在官方的文檔界面可以看到關(guān)于構(gòu)建系統(tǒng)的各個組成部分的介紹。
其中Kconfig用于對系統(tǒng)的功能進行裁剪,生成的配置信息會在rtconfig.h中存儲,SCons則根據(jù)配置文件來編譯源代碼并生成可執(zhí)行文件。
關(guān)于各部分的具體介紹和運行機制,可以在RTThread官網(wǎng)找到相關(guān)的資料。
1.2 制作BSP
1.2.1 復(fù)制BSP模板和生成驅(qū)動代碼
根據(jù)官方的倉庫中的BSP制作指南,復(fù)制bsp_template文件夾中的內(nèi)容到新的文件夾中,其中的文件作用是將RASC代碼配置工具生成的代碼連接到Scons生成體系中,并且board文件夾下的Kconfig和ports文件夾提供了外部接口,方便基于FSP提供的代碼接口添加用戶自定義的外設(shè)。
接下來就是使用RASC代碼配置工具生成對應(yīng)的芯片和開發(fā)板的FSP代碼,由于HMI-Board不是官方的板卡,選擇板卡為自定義板卡,芯片選擇R7FA6M3AH3CFB。生成的工程路徑為上述的工程模板放置的文件路徑。
在RASC中添加uart9,并對其參數(shù)進行修改,值得注意的是,這里的實例名以及中斷函數(shù)名由于在接口文件中已經(jīng)定義好了,所以是固定的。
RASC中添加串口和GPIO驅(qū)動代碼,點擊生成工程代碼按鈕。
1.2.2 修改Keil配置參數(shù)
打開生成的Keil工程,在工程配置界面,修改Option和調(diào)試器中Flash下載界面算法選擇,具體的配置如下圖所示。
同時在C/C++ 配置:修改編譯參數(shù)選項關(guān)閉部分警告,刪除“-Wextra“、”-Wconversion“、”-Wshadow ” 。
同時復(fù)制libraries文件夾到工程中,其中的HAL_Driver包含了設(shè)備驅(qū)動框架實現(xiàn),將芯片的外設(shè)對接到RTThread中。
1.2.3 修改Kconfig選項
Kconfig適用于配置和裁剪工程的工具,修改的Kconfig文件位于board/Kconfig和libraries/Kconfig,內(nèi)容包含以下兩點:
芯片型號和系列
BSP上的外設(shè)支持選項
具體的操作可以參考官方的指南,這里不再贅述。
1.2.4 修改工程構(gòu)建和配置參數(shù)
官方指南在這一部分也給出了詳細的說明,這里說一下自己在移植中遇到的問題。
在修改SConstruct中的內(nèi)容時,需要根據(jù)自身的需要修改RTTread源碼所在文件路徑,文件路徑的格式最好采用相對路徑(相對于SConstruct腳本所處文件路徑),這樣便于移植,RTThread源碼的路徑在頂層的Kconfig文件中同樣需要進行修改。
同樣地,對于驅(qū)動接口、外擴軟件包等文件夾路徑,需要根據(jù)工程目錄下的文件分布做出相應(yīng)的調(diào)整,在該模板中,這些參數(shù)的配置是在主目錄的Kconfig中配置的。
由于芯片的內(nèi)核為Cortex-M4,rtconfig.py中的CPU 內(nèi)核配置也需要進行相應(yīng)的修改,修改為M4內(nèi)核。
在boardSConscript中需要添加board文件路徑到頭文件引用變量中,以下為修改部分:
CPPPATH = [cwd]
src = Glob('*.c')
objs = DefineGroup('Drivers', src, depend = [''], CPPPATH = CPPPATH)
修改完上述的問題,在env工具輸入命令scons –target=mdk5生成工程。打開project工程,編譯下載后,可以通過串口得到打印的信息。
1.3 總結(jié)
通過制作BSP的過程,對Kconfig和Scons的運作原理有了清晰的了解,可以根據(jù)自己的想法對工程進行相應(yīng)的修改,加深了對于工程管理的認識。
-
GPIO
+關(guān)注
關(guān)注
16文章
1204瀏覽量
52106 -
調(diào)試器
+關(guān)注
關(guān)注
1文章
305瀏覽量
23742 -
RT-Thread
+關(guān)注
關(guān)注
31文章
1289瀏覽量
40140 -
Flash存儲
+關(guān)注
關(guān)注
0文章
38瀏覽量
8297 -
HAL驅(qū)動
+關(guān)注
關(guān)注
0文章
3瀏覽量
1184
發(fā)布評論請先 登錄
相關(guān)推薦
評論