一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何將RT-Thread移植到NXP MCUXPressoIDE上

恩智浦MCU加油站 ? 來源:恩智浦MCU加油站 ? 2025-02-13 10:37 ? 次閱讀

RT-Thread默認(rèn)支持的IDE只有IAR 和 Keil, 那如何將RT-Thread移植到NXP MCUXPressoIDE上呢?本文內(nèi)容比較簡單但稍有瑣碎,希望對有需要的小伙伴有所幫助。

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

完全免費,支持所有NXP的MCU產(chǎn)品線

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

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

RT-Thread是一個開源的物聯(lián)網(wǎng)操作系統(tǒng),由中國開發(fā)者主導(dǎo)開發(fā),具有以下特點:

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

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

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

提供實時性強、資源占用小的內(nèi)核

支持標(biāo)準(zhǔn)POSIX接口

完善的中文文檔支持

本文受眾:

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

本文所涉及的軟件版本:

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

SDK: SDK_2_16_000_FRDM-MCX C444.

RT-Thread: V5.2.0

軟硬件準(zhǔn)備:

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

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

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

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

7e6c310a-e9a4-11ef-9310-92fbcf53809c.png

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

7e83d030-e9a4-11ef-9310-92fbcf53809c.png

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

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

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

7e9aeaf4-e9a4-11ef-9310-92fbcf53809c.png

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

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

7eb3628c-e9a4-11ef-9310-92fbcf53809c.png

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

7ec4ba64-e9a4-11ef-9310-92fbcf53809c.png

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

7edea582-e9a4-11ef-9310-92fbcf53809c.png

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

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

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17718

    瀏覽量

    358224
  • 恩智浦
    +關(guān)注

    關(guān)注

    14

    文章

    5930

    瀏覽量

    111697
  • 移植
    +關(guān)注

    關(guān)注

    1

    文章

    392

    瀏覽量

    28510
  • RT-Thread
    +關(guān)注

    關(guān)注

    31

    文章

    1348

    瀏覽量

    41369
  • mcuxpresso
    +關(guān)注

    關(guān)注

    1

    文章

    43

    瀏覽量

    4414

原文標(biāo)題:將RT-Thread移植到MCUXPressoIDE上(基于FRDM-MCX C444)

文章出處:【微信號:NXP_SMART_HARDWARE,微信公眾號:恩智浦MCU加油站】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    RT-ThreadCAN實踐

    開箱測試RT-Thread官方已完成了對英飛凌XMC7200EVK的移植,通過shell可以看到做好了uart3的console。本文介紹如何進(jìn)行RT-ThreadCan
    的頭像 發(fā)表于 11-13 01:03 ?1774次閱讀
    <b class='flag-5'>RT-Thread</b><b class='flag-5'>上</b>CAN實踐

    移植RT-Thread nanoCW32L083

    移植RT-Thread NanoCW32L083開發(fā)板,并成功運行。
    的頭像 發(fā)表于 07-03 09:04 ?2.2w次閱讀
    <b class='flag-5'>移植</b><b class='flag-5'>RT-Thread</b> nano<b class='flag-5'>到</b>CW32L083

    i.MX RT1170:VGLite移植RT-Thread Nano過程講解()

    RT-Thread 是國人自主研發(fā)的開源實時操作系統(tǒng)(RTOS),RT-Thread Nano 是極簡版的硬實時內(nèi)核,內(nèi)存占用小,移植簡單。VGLite 是 NXP 提供的輕量級 2D
    的頭像 發(fā)表于 11-09 11:20 ?3195次閱讀
    i.MX <b class='flag-5'>RT</b>1170:VGLite<b class='flag-5'>移植</b><b class='flag-5'>RT-Thread</b> Nano過程講解(<b class='flag-5'>上</b>)

    i.MX RT1170:VGLite移植RT-Thread Nano過程講解(下)

    上篇介紹了如何移植 RT-Thread Nano 內(nèi)核與 Finsh 控制臺 RT1170。本篇繼續(xù)介紹如何將
    的頭像 發(fā)表于 11-09 11:22 ?1157次閱讀

    如何將RT-Thread系統(tǒng)移植STM32f103標(biāo)準(zhǔn)庫

    如何將RT-Thread系統(tǒng)移植STM32f103標(biāo)準(zhǔn)庫呢?有哪些操作步驟?
    發(fā)表于 12-15 06:51

    移植RT-Thread的原理與方法

    大家好我是驚覺。是的,失蹤人口回來了。最近參加了rt-thread的國產(chǎn)MCU移植活動,移植rt-thread華大的HC32L196。rt
    的頭像 發(fā)表于 09-17 09:41 ?8278次閱讀

    【國產(chǎn)MCU移植移植RT-Thread國產(chǎn)芯片HC32F460PETB

    【國產(chǎn)MCU移植移植RT-Thread國產(chǎn)芯片HC32F460PETB
    發(fā)表于 11-23 18:06 ?37次下載
    【國產(chǎn)MCU<b class='flag-5'>移植</b>】<b class='flag-5'>移植</b><b class='flag-5'>RT-Thread</b><b class='flag-5'>到</b>國產(chǎn)芯片HC32F460PETB

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

    【國產(chǎn)MCU移植移植RT-Thread國產(chǎn)芯片F(xiàn)M33LC026
    發(fā)表于 11-30 16:51 ?25次下載
    【國產(chǎn)MCU<b class='flag-5'>移植</b>】<b class='flag-5'>移植</b><b class='flag-5'>RT-Thread</b><b class='flag-5'>到</b>國產(chǎn)芯片F(xiàn)M33LC026

    RT-thread如何將RT-thread系統(tǒng)移植stm32

    1.RT-thread簡介T-Thread(Real Time-Thread),是一個嵌入式實時多線程操作系統(tǒng)。在 RT-Thread 系統(tǒng)中,任務(wù)調(diào)度通過線程實現(xiàn)的。
    發(fā)表于 12-08 11:06 ?21次下載
    【<b class='flag-5'>RT-thread</b>】<b class='flag-5'>如何將</b><b class='flag-5'>RT-thread</b>系統(tǒng)<b class='flag-5'>移植</b><b class='flag-5'>到</b>stm32

    RT-Thread系統(tǒng)移植STM32f103

    RT-Thread系統(tǒng)移植STM32f103
    發(fā)表于 12-09 12:51 ?26次下載
    <b class='flag-5'>RT-Thread</b>系統(tǒng)<b class='flag-5'>移植</b><b class='flag-5'>到</b>STM32f103

    基于 Keil MDK 移植 RT-Thread Nano

    本文介紹如何基于 Keil MDK 移植 RT-Thread Nano ,并以一個 stm32f103 的基礎(chǔ)工程作為示例進(jìn)行講解。 RT-Thread Nano 已集成在 Keil MD...
    發(fā)表于 01-26 17:04 ?17次下載
    基于 Keil MDK <b class='flag-5'>移植</b> <b class='flag-5'>RT-Thread</b> Nano

    【嵌入式AI入門日記】 AI 模型移植 RT-Thread (1)

    本期我們分享主題是如何將 AI 模型部署嵌入式系統(tǒng)中,下一期介紹如何在 RT-Thread 操作系統(tǒng)運行 Mnist Demo(手寫數(shù)
    發(fā)表于 01-26 17:08 ?3次下載
    【嵌入式AI入門日記】<b class='flag-5'>將</b> AI 模型<b class='flag-5'>移植</b><b class='flag-5'>到</b> <b class='flag-5'>RT-Thread</b> <b class='flag-5'>上</b>(1)

    如何創(chuàng)建RT-Thread Nano工程

    簡單(比freeRTOS移植還簡單)等,本文講解如何將RT-Thread Nano移植GD3
    的頭像 發(fā)表于 03-19 12:13 ?4138次閱讀

    RT-Thread文檔_內(nèi)核移植

    RT-Thread文檔_內(nèi)核移植
    發(fā)表于 02-22 18:31 ?4次下載
    <b class='flag-5'>RT-Thread</b>文檔_內(nèi)核<b class='flag-5'>移植</b>

    RT-Thread文檔_RT-Thread SMP 介紹與移植

    RT-Thread文檔_RT-Thread SMP 介紹與移植
    發(fā)表于 02-22 18:31 ?9次下載
    <b class='flag-5'>RT-Thread</b>文檔_<b class='flag-5'>RT-Thread</b> SMP 介紹與<b class='flag-5'>移植</b>