日本a√视频在线,久久青青亚洲国产,亚洲一区欧美二区,免费g片在线观看网站

        <style id="k3y6c"><u id="k3y6c"></u></style>
        <s id="k3y6c"></s>
        <mark id="k3y6c"></mark>
          
          

          <mark id="k3y6c"></mark>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 將RT-Thread移植到MCUXPressoIDE上(基于FRDM-MCX C444)

          將RT-Thread移植到MCUXPressoIDE上(基于FRDM-MCX C444)

          作者:Alex Yang 時間:2025-02-25 來源:恩智浦MCU加油站 收藏

          默認支持的只有IAR 和 Keil, 那如何將移植到NXP MCUXPresso上呢?本文內容比較簡單但稍有瑣碎,希望對有需要的小伙伴有所幫助。

          本文引用地址:http://yuyingmama.com.cn/article/202502/467297.htm

          MCUXpresso 是由恩智浦官方推出的基于Eclipse的集成開發(fā)環(huán)境,是LPCXpresso IDE的升級版本。它具有以下特點:

          ◆ 完全免費,支持所有NXP的MCU產品線

          ◆ 包含MCUXpresso配置工具(SDK Builder),可視化配置外設

          ◆ 基于Eclipse平臺,支持豐富的插件生態(tài)

          是一個開源的物聯網操作系統(tǒng),由中國開發(fā)者主導開發(fā),具有以下特點:

          ◆ 開源、中立、穩(wěn)定可靠

          ◆ 組件豐富,生態(tài)完善

          ◆ 軟件包管理系統(tǒng),降低開發(fā)難度

          ◆ 提供實時性強、資源占用小的內核

          ◆ 支持標準POSIX接口

          ◆ 完善的中文文檔支持

          本文受眾:

          本文面向熟悉RT-Thread并需要將其移植到MCUXPressoIDE的用戶. 本文以FRDM-MCX C444為例,但是其中的移植步驟基本上是通用的, 其他NXP的芯片移植也可以借鑒這篇文章的內容。

          本文所涉及的軟件版本:

          ◆ MCUXPressoIDE: 24.9 [Build 25] [2024-09-26]

          ◆ SDK: SDK_2_16_000_FRDM-MCX C444.

          ◆ RT-Thread: V5.2.0

          軟硬件準備:

          1. 下載并安裝SDK. 導入MCUXpressoIDE并且確保您已經熟悉基本操作(可以導入SDK工程并成功運行一個基本的SDK helloworld).確保下載,調試,串口輸出等基本技能已經掌握. 這些內容和RT-Thread沒有任何關系,具體教程可以參見官方上手指南:

          https://www.nxp.com/document/guide/?getting?-started-with-frdm-MCX C444:GS-FR?DM-MCX C444

          2. 下載RT-Thread源碼(本文以5.20為準),因為目前RT-Thread主干已經支持了FRDM-MCX C444(Keil, GCC),所以強烈建議先使用Keil編譯FRDM-MCX C444 RT-Thread工程,并且運行,確認基本的軟硬件配置是OK的.具體Keil下指南見: https://github.com/RT-Thread/rt-thre?ad/tree/master/bsp/n?xp/mcx/MCX C

          移植步驟:

          1. 基于SDK創(chuàng)建一個新的工程(本文以SDK hello_world為藍本).創(chuàng)建好后可以給整個工程改個名字,方便識別,養(yǎng)成好習慣(可選):

          圖片

          2. 將RT-Thread源代碼文件復制進工程,并且將RT-Thread文件夾添加進編譯系統(tǒng):

          圖片

          3. 因為RT-Thread沒有專門針對MCXPressoIDE的構建系統(tǒng),所以接下來一個主要的任務就是將RT-Thread中不需要的源代碼刪除.這個過長相當繁瑣(基本占移植工作的95%以上),并且需要對RT-Thread本身的源代碼有一定了解,這里僅僅舉一個例子:

          比如有關真對處理器架構的相關移植文件文件夾在RT-Thread/libcpu中,MCX C444是ARM Cortex-M0+內核的,且MCXPressoIDE是基于GCC編譯器的,所以我需要只保留rt-threadlibcpuarmcortex-m0中context_gcc.S其余文件(文件夾)需要通通刪除. RT-Thread其他地方的源碼,包括C源碼也有很多需要類似的處理(總共有100+處),這里就不在一一舉例了,可以通過查看GCC構建中的Makefile文件或者env工具自動構建出來的Keil/IAR工程對比進行操作。

          4. 添加Include路徑: 如下圖所示. 這一部分是否完成可以嘗試編譯來確認,如果都編譯通過,則說明這步基本沒問題:

          圖片

          5. 將hello_world.c改名為main.c,并且將hello_world工程中board.c也替換為MCX C444 RT-Thread工程中的board.c 并且修正一些編譯過去,使之能通過編譯.

          6. 對于RT-Thread移植,需要幾個特定的保留段(Keep section),因此我們要手動修改Linker File:

          圖片

          然后在linker File里添加如下字段:

          圖片

          7. 到此, 移植步驟基本結束. 重新編譯整個工程,并且下載到開發(fā)板中,復位后,打開串口.波特率115200. 會出現RT-Thread開機log, 并且工程默認已經實現了串口和GPIO驅動, 默認使能了Finish命令行 輸入”help”會打印幫助信息. ,另外開發(fā)板紅色LED會以1Hz閃爍;

          1. 圖片

          到此移植工作結束。注意:本工作只是實現了一個最小系統(tǒng)的移植,RT-Thread有眾多的組件和生態(tài),如果需要可以涉及繼續(xù)手工移植源碼,另外本工程的device driver只實現了pin和 serial,如需其他driver需要手工添加。

          最后移植成功的完整工程將會隨后發(fā)布在NXP的 AppcodeHub上,歡迎下載嘗鮮!



          關鍵詞: RT-Thread IDE

          評論


          相關推薦

          技術專區(qū)

          關閉