亚洲精品久久久久久久久久久,亚洲国产精品一区二区制服,亚洲精品午夜精品,国产成人精品综合在线观看,最近2019中文字幕一页二页

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

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

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

恩智浦MCU教程 基于MCUXpresso和FRDM-MCXA346的RT-Thread Nano移植

恩智浦MCU加油站 ? 來源: 恩智浦MCU加油站 ? 2025-08-21 09:49 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

RT-Thread Nano是一個(gè)極簡(jiǎn)版的硬實(shí)時(shí)內(nèi)核,Nano簡(jiǎn)介與下載 具體見官方。

介紹完官方下載地址,本篇還是以移植RT-Thread Nano到MCUXpresso IDE為主,移植的代碼可以在nxpic.org.cn論壇搜索到。稍后也會(huì)有基于MCUXpresso VSC(Visual Studio Code)的介紹文檔。

簡(jiǎn)單運(yùn)行

1.準(zhǔn)備一臺(tái)安裝有最新MCUXpresso IDE的PC和一塊FRDM-MCXA346開發(fā)板:

6b23686a-7e29-11f0-a18e-92fbcf53809c.png

2. 導(dǎo)入代碼包,運(yùn)行結(jié)果:

6b4cccaa-7e29-11f0-a18e-92fbcf53809c.png

軟件下載

1.RT-Thread Nano源代碼下載

2.MCUXpresso SDK下載

3.MCUXpresso IDE下載

4.MCUXpresso Config Tool下載,這個(gè)不是必須的,IDE自帶的也有

移植步驟

1.導(dǎo)入MCUXpresso SDK到MCUXpresso IDE,直接把SDK的zip包拖到這個(gè)窗口里就行:

6b5d43fa-7e29-11f0-a18e-92fbcf53809c.png

2.創(chuàng)建一個(gè)新工程,咱們這里就用lpuart的polling的example為模板好了,創(chuàng)建好后,順手改個(gè)工程名字:

6b7bdf04-7e29-11f0-a18e-92fbcf53809c.png

6b9570a4-7e29-11f0-a18e-92fbcf53809c.png

3.將RT-Thread Nano源代碼文件復(fù)制進(jìn)工程,并且包含進(jìn)編譯序列:

6ba3be8e-7e29-11f0-a18e-92fbcf53809c.png

6bb71fec-7e29-11f0-a18e-92fbcf53809c.png

6bd3f59a-7e29-11f0-a18e-92fbcf53809c.png

4.移除RT-Thread Nano里咱們目前平臺(tái)不需要的文件,比如bsp文件夾,libcpu文件夾下邊的risc-v文件夾,libcpuarm文件夾下邊的arm926, armv6, cortex-a, cortex-m0, cortex-m23, cortex-m3, cortex-m4, cortex-m7,cortex-r4(保留libcpuarm下的common和cortex-m33文件夾):

6bed8820-7e29-11f0-a18e-92fbcf53809c.png

5.將divsi3.S, context_iar.S, context_rvds.s, syscall_iar.S, syscall_rvds.S移除出編譯序列:

6c022e92-7e29-11f0-a18e-92fbcf53809c.png

適配 RT-Thread Nanoo

1.把lpuart_polling.c改成main.c:

6c193e7a-7e29-11f0-a18e-92fbcf53809c.png

2.將rt-thread/include和rt-thread/components/finsh兩個(gè)目錄添加到工程的include路徑:

6c2e36e0-7e29-11f0-a18e-92fbcf53809c.png

3.將rt-thread nano源代碼bsp\_template路徑下的rtconfig.h和board.c復(fù)制到工程的source目錄下,這里我把board.c重命名為rtt_board.c:

6c461ff8-7e29-11f0-a18e-92fbcf53809c.png

4.編譯后編譯器提醒有兩個(gè)錯(cuò)誤,提醒移植的時(shí)候添加必要的API:

6c64a892-7e29-11f0-a18e-92fbcf53809c.png

5.將"MCXA346.h", "app.h"和"fsl_lpuart.h"添加到source/board.c文件中:

6c8e50ac-7e29-11f0-a18e-92fbcf53809c.png

6.在sourceoard.cvoid rt_hw_board_init(void)函數(shù)中添加BOARD_InitHardware();和SysTick_Config(SystemCoreClock/RT_TICK_PER_SECOND):

6ca1edd8-7e29-11f0-a18e-92fbcf53809c.png

7.在sourceoard.c中用SysTick_Handler()替換rt_os_tick_callback():

6cc69732-7e29-11f0-a18e-92fbcf53809c.png

8.隱去TODO 2和TODO 3的提醒,TODO 2在example初始化的地方已經(jīng)做了調(diào)試串口的初始化了,并且在TODO 3里添加如下代碼:

6cd8fdc8-7e29-11f0-a18e-92fbcf53809c.png

6cf0a220-7e29-11f0-a18e-92fbcf53809c.png

9.將main.c的頭文件修改為:

6d033016-7e29-11f0-a18e-92fbcf53809c.png

10.將main.c核心的main代碼修改為:

6d1cb9be-7e29-11f0-a18e-92fbcf53809c.png

11.編譯后提醒hardfault函數(shù)重復(fù)定義了,所以要把工程生成的semihost_hardfualt.c刪除掉:

6d35d39a-7e29-11f0-a18e-92fbcf53809c.png

12.在rtconfig.h里打開#define RT_USING_CONSOLE宏,編譯并運(yùn)行,記得打開串口中斷哦:

6d4cd5ae-7e29-11f0-a18e-92fbcf53809c.png

13.運(yùn)行后,發(fā)現(xiàn)會(huì)進(jìn)入Hardfault_handler()并且串口無打印。先來解決串口打印的問題:

6d62bf9a-7e29-11f0-a18e-92fbcf53809c.png

14.需要在startupstartup_mcxa346.c的ResetISR()函數(shù)中把main隱藏掉,用rt-thread nano的entry()替代,如下圖:

在entry()的函數(shù)里會(huì)調(diào)用rt_hw_board_init()來初始化硬件。 編譯并運(yùn)行,這時(shí)候hardfault應(yīng)該就會(huì)打印了:

6d80aab4-7e29-11f0-a18e-92fbcf53809c.png

15.Hard fault打印的信息,hard fault的原因本程序員找了些小時(shí)數(shù),原因是需要修改分散加載文件:

6da8b7c0-7e29-11f0-a18e-92fbcf53809c.png

16.鼠標(biāo)右鍵工程名字,選在C/C++ Build -> Settings -> MCU Linker-> Managed Linker Script禁用Manage linker script。要手工修改下分散加載文件:

6dbdc070-7e29-11f0-a18e-92fbcf53809c.png

17.將如下區(qū)段加入到frdmmcxa346_rt_thread_nano_mcux_Debug.ld中,在“> PROGRAM_FLASH”區(qū)段:

-->
/***************RTOS
add**********************/
    /* section information for finsh shell*/
    . = ALIGN(4);
    __fsymtab_start = .;
    KEEP(*(FSymTab))
    __fsymtab_end = .;
    . = ALIGN(4);
    __vsymtab_start = .;
    KEEP(*(VSymTab))
    __vsymtab_end = .;
    . = ALIGN(4);
    /* section information for utest*/
    . = ALIGN(4);
    __rt_utest_tc_tab_start = .;
    KEEP(*(UtestTcTab))
    __rt_utest_tc_tab_end = .;
    /* section information for at server */
    . = ALIGN(4);
    __rtatcmdtab_start = .;
    KEEP(*(RtAtCmdTab))
    __rtatcmdtab_end = .;
    . = ALIGN(4);
    /* section information for initial.*/
    . = ALIGN(4);
    __rt_init_start = .;
    KEEP(*(SORT(.rti_fn*)))
    __rt_init_end = .;
    . = ALIGN(4);
  /* section information for modules */
  . = ALIGN(4);
  __rtmsymtab_start = .;
  KEEP(*(RTMSymTab))
  __rtmsymtab_end = .;
    . = ALIGN(4);
    PROVIDE(__ctors_start__ = .);
    KEEP (*(SORT(.init_array.*)))
    KEEP (*(.init_array))
    PROVIDE(__ctors_end__ = .);
        . = ALIGN(4);

6dd786ae-7e29-11f0-a18e-92fbcf53809c.png

18.編譯并運(yùn)行,RT-Thread Nano就正常打印了:

6df7b528-7e29-11f0-a18e-92fbcf53809c.png

恩智浦致力于打造安全的連接和基礎(chǔ)設(shè)施解決方案,為智慧生活保駕護(hù)航。

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

    關(guān)注

    147

    文章

    18494

    瀏覽量

    382367
  • NXP
    NXP
    +關(guān)注

    關(guān)注

    61

    文章

    1371

    瀏覽量

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

    關(guān)注

    14

    文章

    6040

    瀏覽量

    129352
  • nano
    +關(guān)注

    關(guān)注

    1

    文章

    162

    瀏覽量

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

    關(guān)注

    32

    文章

    1518

    瀏覽量

    44031
  • FRDM
    +關(guān)注

    關(guān)注

    1

    文章

    19

    瀏覽量

    4421
  • mcuxpresso
    +關(guān)注

    關(guān)注

    1

    文章

    46

    瀏覽量

    4678

原文標(biāo)題:基于MCUXpresso和FRDM-MCXA346的RT-Thread Nano移植

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

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    MCXA343和MCXA344通用MCU產(chǎn)品介紹

    既8月份發(fā)布了MCXA345和MCXA346兩款產(chǎn)品后,10月份咱們發(fā)布MCXA343和MCXA344通用MCU,主打帶CAN-FD的低成本
    的頭像 發(fā)表于 10-22 09:55 ?1379次閱讀
    <b class='flag-5'>恩</b>智<b class='flag-5'>浦</b><b class='flag-5'>MCXA</b>343和<b class='flag-5'>MCXA</b>344通用<b class='flag-5'>MCU</b>產(chǎn)品介紹

    移植最新版的rt-thread nano時(shí)程序進(jìn)入到entry就報(bào)錯(cuò),為什么?

    我在移植最新版的rt-thread nano時(shí)發(fā)現(xiàn)程序只要一進(jìn)去entry函數(shù)就直接跳到一個(gè)死循環(huán)里,我使用的編譯器是armgcc10.2版本。然而我移植舊版的
    發(fā)表于 10-09 07:17

    基于MCUXpressoFRDM-MCXA346RT-Thread Nano移植 | 技術(shù)集結(jié)

    RT-ThreadNano是一個(gè)極簡(jiǎn)版的硬實(shí)時(shí)內(nèi)核
    的頭像 發(fā)表于 08-22 17:07 ?3311次閱讀
    基于<b class='flag-5'>MCUXpresso</b>和<b class='flag-5'>FRDM-MCXA346</b>的<b class='flag-5'>RT-Thread</b> <b class='flag-5'>Nano</b><b class='flag-5'>移植</b> | 技術(shù)集結(jié)

    【用戶答謝】RT-Thread攜手,邀您共筑開源生態(tài),贏專屬好禮!| 社區(qū)活動(dòng)

    親愛的嵌入式開發(fā)者伙伴們:在RT-Thread攜手同行的數(shù)載春秋里,雙方始終致力于為開發(fā)者打造更優(yōu)質(zhì)的嵌入式開發(fā)體驗(yàn),推動(dòng)技術(shù)創(chuàng)新與應(yīng)用落地,每一步成長(zhǎng)都離不開各位開發(fā)者的信任與支持
    的頭像 發(fā)表于 08-22 17:07 ?685次閱讀
    【用戶答謝】<b class='flag-5'>RT-Thread</b>攜手<b class='flag-5'>恩</b>智<b class='flag-5'>浦</b>,邀您共筑開源生態(tài),贏專屬好禮!| 社區(qū)活動(dòng)

    如何移植 RT-Thread Nano 并創(chuàng)建 2 個(gè)線程?

    基于 BSP 中的 GPIO_OutputInput 演示,展示了如何移植 RT-Thread Nano 并創(chuàng)建 2 個(gè)線程。
    發(fā)表于 08-19 07:45

    MCXA345/A346通用MCU產(chǎn)品介紹

    近日,發(fā)布了MCXA345/A346通用MCU,一顆主打混合信號(hào)(ADC輸入通道多達(dá)82個(gè))并且適用于電機(jī)控制的通用
    的頭像 發(fā)表于 08-13 11:42 ?3516次閱讀
    <b class='flag-5'>恩</b>智<b class='flag-5'>浦</b><b class='flag-5'>MCXA</b>345/A<b class='flag-5'>346</b>通用<b class='flag-5'>MCU</b>產(chǎn)品介紹

    RT-Thread Nano移植后動(dòng)態(tài)創(chuàng)建線程創(chuàng)建不了怎么處理?

    RT-Thread Nano移植后動(dòng)態(tài)創(chuàng)建線程創(chuàng)建不了,靜態(tài)可以.直接燒錄DEMO也一樣,將RT_USING_HEAP開起來,使用動(dòng)態(tài)創(chuàng)建就創(chuàng)建不起來,
    發(fā)表于 06-11 06:36

    FRDM-MCXA156開發(fā)實(shí)踐指南》上線啦

    RT-Thread率先支持NXPFRDM-MCXA156,并聯(lián)合半導(dǎo)體推出了NXPFRDM-MCXA156開發(fā)板評(píng)測(cè)活動(dòng)。測(cè)評(píng)活動(dòng)順利
    的頭像 發(fā)表于 04-06 10:51 ?2306次閱讀
    《<b class='flag-5'>恩</b>智<b class='flag-5'>浦</b><b class='flag-5'>FRDM-MCXA</b>156開發(fā)實(shí)踐指南》上線啦

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

    RT-Thread默認(rèn)支持的IDE只有IAR 和 Keil, 那如何將RT-Thread移植到NXP MCUXPressoIDE上呢?本文內(nèi)容比較簡(jiǎn)單但稍有瑣碎,希望對(duì)有需要的小伙伴有所幫助。
    的頭像 發(fā)表于 02-13 10:37 ?2314次閱讀
    如何將<b class='flag-5'>RT-Thread</b><b class='flag-5'>移植</b>到NXP MCUXPressoIDE上

    免費(fèi)申請(qǐng) | FRDM-MCXA156評(píng)測(cè)活動(dòng)發(fā)布!

    FRDM-MCXA156高性能處理器評(píng)測(cè)活動(dòng),誠邀所有RT-Thread社區(qū)成員及愛好者踴躍參與!FRDM-MCXA156是
    的頭像 發(fā)表于 02-10 18:45 ?736次閱讀
    免費(fèi)申請(qǐng) | <b class='flag-5'>FRDM-MCXA</b>156評(píng)測(cè)活動(dòng)發(fā)布!

    攜手RT-Thread全力賦能智能工業(yè)與物聯(lián)網(wǎng)新時(shí)代

    本地活躍的嵌入式開源社區(qū)積極合作,全力賦能。在日前舉辦的RT-Thread開發(fā)者大會(huì)(簡(jiǎn)稱RDC)上,MCU系統(tǒng)與應(yīng)用工程師牛曉東先生受邀發(fā)表了題為《NXP微控制器結(jié)合
    的頭像 發(fā)表于 01-10 11:55 ?1410次閱讀
    <b class='flag-5'>恩</b>智<b class='flag-5'>浦</b>攜手<b class='flag-5'>RT-Thread</b>全力賦能智能工業(yè)與物聯(lián)網(wǎng)新時(shí)代

    使用無線FRDM開發(fā)板實(shí)現(xiàn)創(chuàng)新無線解決方案

    開發(fā)人員現(xiàn)在面臨著前所未有的挑戰(zhàn),需要為各種產(chǎn)品設(shè)計(jì)復(fù)雜的軟件,通常還要使用不同的處理器。MCUXpresso Developer Experience通過適用于多種MCU平臺(tái)
    的頭像 發(fā)表于 11-26 17:40 ?28.1w次閱讀
    使用<b class='flag-5'>恩</b>智<b class='flag-5'>浦</b>無線<b class='flag-5'>FRDM</b>開發(fā)板實(shí)現(xiàn)創(chuàng)新無線解決方案

    FRDM-MCXA153 RT-Thread開發(fā)實(shí)戰(zhàn)(六):I2C總線開發(fā)與應(yīng)用

    ? 工程創(chuàng)建 目前RT-Thread Studio尚未支持FRDM-MCXA153開發(fā)板BSP,需要從gitee下載最新的主線,通過scons命令創(chuàng)建工程。下載好主線源碼后,在
    的頭像 發(fā)表于 11-21 09:26 ?2326次閱讀
    <b class='flag-5'>恩</b>智<b class='flag-5'>浦</b><b class='flag-5'>FRDM-MCXA</b>153 <b class='flag-5'>RT-Thread</b>開發(fā)實(shí)戰(zhàn)(六):I2C總線開發(fā)與應(yīng)用

    FRDM-MCXA153 RT-Thread實(shí)踐指南 實(shí)現(xiàn)和優(yōu)化RT-Thread的SPI驅(qū)動(dòng)

    串行外設(shè)接口(SPI)是一種廣泛使用的同步串行通信接口,在嵌入式系統(tǒng)中扮演著重要角色。本文將深入探討如何在NXP MCXA153 MCU上實(shí)現(xiàn)和優(yōu)化RT-Thread的SPI驅(qū)動(dòng),同時(shí)介紹NXP提供
    的頭像 發(fā)表于 11-14 08:58 ?2279次閱讀
    <b class='flag-5'>恩</b>智<b class='flag-5'>浦</b><b class='flag-5'>FRDM-MCXA</b>153 <b class='flag-5'>RT-Thread</b>實(shí)踐指南 實(shí)現(xiàn)和優(yōu)化<b class='flag-5'>RT-Thread</b>的SPI驅(qū)動(dòng)

    RT-Thread上CAN實(shí)踐

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