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

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

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

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

十分鐘就將RT-Thread移植到了新唐新款單片機(jī)上的小竅門

Q4MP_gh_c472c21 ? 來源:21ic論壇 ? 作者:gaoyang9992006 ? 2021-04-29 14:13 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

NuMicro M0A23 系列是基于 Arm Cortex -M0 內(nèi)核的 32 位微控制器。它的工作溫度范圍達(dá) -40°C 至 125°C,在小封裝中提供 CAN 功能,豐富的仿真外設(shè)及彈性的引腳分配功能。2.4V 至 5.5V 的工作電壓。NuMicro M0A23 系列針對工控和較高的工作溫度應(yīng)用,如雷達(dá),電池管理系統(tǒng) (BMS),汽車照明,車用控制及工控傳感器等應(yīng)用。

之前我發(fā)過一個(gè)帖,移植RTT到NUC029上的帖,這次拿到新的開發(fā)板,我們試試能否輕松移植RTT到這個(gè)M0A23開發(fā)板。 準(zhǔn)備工具 Keil V5,在pack里安裝RTOS,如下圖所示

5566c830-a86f-11eb-9728-12bb97331649.png

接下來新建工程,工程目錄存放M0A23的Lib文件

5599e648-a86f-11eb-9728-12bb97331649.png

然后按照RTE的創(chuàng)建工程方式,添加啟動文件與RTT RTOS文件到工程

55c4881c-a86f-11eb-9728-12bb97331649.png

在工程創(chuàng)建目錄,添加USER文件和Lib文件

564b203e-a86f-11eb-9728-12bb97331649.png

最后對工程配置進(jìn)行修改,因?yàn)橐胹tdio.h 所以在Target選項(xiàng)卡勾選Use MicroLIB,同時(shí)選中編譯器為V5版本

569558de-a86f-11eb-9728-12bb97331649.png

在C/C++選項(xiàng)卡設(shè)置頭文件路徑 .LibraryDeviceNuvotonM0A21Include;.LibraryStdDriverinc;.LibraryCMSISInclude 在Linker選項(xiàng)卡設(shè)置Misc controls --map --first=‘startup_M0A21.o(RESET)’ --datacompressor=off --info=inline --entry Reset_Handler 在調(diào)試器設(shè)置對應(yīng)的調(diào)試器,并選擇為自動偵測模式

56b01070-a86f-11eb-9728-12bb97331649.png

配置燒錄功能如下

56d60cb2-a86f-11eb-9728-12bb97331649.png

基本配置到此完成,接下來進(jìn)行RTT移植修改。 在board.c文件中進(jìn)行時(shí)鐘與串口的初始化配置,同時(shí)別忘了將頭文件NUMicro.h包含進(jìn)來。

可以直接將M0A23的BSP中的模板配置復(fù)制來用即可

void SYS_Init(void){ /* Unlock protected registers */ SYS_UnlockReg(); /* Enable HIRC clock (Internal RC 48MHz) */ CLK_EnableXtalRC(CLK_PWRCTL_HIRCEN_Msk); /* Wait for HIRC clock ready */ CLK_WaitClockReady(CLK_STATUS_HIRCSTB_Msk); /* Select HCLK clock source as HIRC and HCLK source divider as 1 */ CLK_SetHCLK(CLK_CLKSEL0_HCLKSEL_HIRC, CLK_CLKDIV0_HCLK(1)); /* Enable UART0 clock */ CLK_EnableModuleClock(UART0_MODULE);

/* Switch UART0 clock source to HIRC */ CLK_SetModuleClock(UART0_MODULE, CLK_CLKSEL1_UART0SEL_HIRC, CLK_CLKDIV0_UART0(1)); /* Update System Core Clock */ SystemCoreClockUpdate(); /* Set PB multi-function pins for UART0 RXD=PB.6 and TXD=PB.4 */ SYS-》GPB_MFP1 = (SYS-》GPB_MFP1 & ~(SYS_GPB_MFP1_PB4MFP_Msk | SYS_GPB_MFP1_PB6MFP_Msk)) | (SYS_GPB_MFP1_PB4MFP_UART0_TXD | SYS_GPB_MFP1_PB6MFP_UART0_RXD); /* Lock protected registers */ SYS_LockReg(); UART_Open(UART0, 115200);} 然后在rt_hw_board_init()

中引用該初始化并刪除該函數(shù)中的時(shí)鐘更新函數(shù),因?yàn)槲覀円呀?jīng)在上面的函數(shù)完成了該操作。

接下來在該文件末尾添加

void rt_hw_console_output(const char *str){ printf(“%s”,str);} char rt_hw_console_getchar(void){return getchar();} 以實(shí)現(xiàn)串口打印與交互輸入。

然后我們發(fā)現(xiàn),工程的啟動文件目錄有重定向文件,我們用庫函數(shù)中的進(jìn)行替換該文件。

然后找到

__asm int32_t HardFault_Handler(void)

該函數(shù),并注釋掉該函數(shù),因?yàn)镽TT中已經(jīng)實(shí)現(xiàn)了該函數(shù),不然就重復(fù)定義了。另外就是通過rtconfig.h啟用某些功能了,支持配置向?qū)J?/p>

56e6ea64-a86f-11eb-9728-12bb97331649.png

接下來保存工程,在main.c添加個(gè)簡單的代碼

#include 《stdio.h》#include “NuMicro.h”#include 《rtthread.h》 int main(void){ return 0;} 編譯,一次通過。 “.Objectsdemo.axf” - 0 Error(s), 0 Warning(s)。 下載測試

57147a74-a86f-11eb-9728-12bb97331649.png

這里提供工程供大家測試學(xué)習(xí)

編輯:jq

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

    關(guān)注

    48

    文章

    7932

    瀏覽量

    154022
  • 傳感器
    +關(guān)注

    關(guān)注

    2564

    文章

    52788

    瀏覽量

    765305
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4376

    瀏覽量

    64534
  • RTT
    RTT
    +關(guān)注

    關(guān)注

    0

    文章

    66

    瀏覽量

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

    關(guān)注

    32

    文章

    1385

    瀏覽量

    41673

原文標(biāo)題:我只用了十分鐘:將RT-Thread移植到了新唐新款單片機(jī)上

文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

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

    深度剖析 RT-Thread 線程調(diào)度流程

    RT-Thread調(diào)度第一個(gè)線程的主要流程如下:rtthread_startup:RTT的啟動函數(shù),主要負(fù)責(zé)板級驅(qū)動,調(diào)度器,系統(tǒng)線程初始化,啟動調(diào)度的工作
    的頭像 發(fā)表于 06-25 18:24 ?387次閱讀
    深度剖析 <b class='flag-5'>RT-Thread</b> 線程調(diào)度流程

    如何在rt-thread studio上開發(fā)STM32H747IIT6?

    如題,我希望在rt-thread studio上開發(fā)STM32H747IIT6這款雙核單片機(jī),在keil里兩個(gè)核的代碼是完全隔離的,分別在兩個(gè)工程中編寫。 但是在rt-thread studio上生成的標(biāo)準(zhǔn)版工程只有一個(gè)工程,
    發(fā)表于 06-11 06:24

    RT-Thread審核團(tuán)招募: 深度參與開源RTOS社區(qū)治理與演進(jìn)

    全球開發(fā)者招募:RT-Thread審核團(tuán)(ReviewTeam)正式開放申請!在開源的世界里,代碼審查(CodeReview)是保證軟件質(zhì)量、促進(jìn)技術(shù)交流的關(guān)鍵環(huán)節(jié)。RT-Thread作為全球領(lǐng)先
    的頭像 發(fā)表于 05-21 18:02 ?559次閱讀
    <b class='flag-5'>RT-Thread</b>審核團(tuán)招募: 深度參與開源RTOS社區(qū)治理與演進(jìn)

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

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

    Deepseek上單片機(jī)RT-Thread上跑通大語言模型

    前言單片機(jī)也能聊天?RT-Thread上跑通大語言模型在RT-Thread論壇上忽然看到了單片機(jī)和大模型對話的文章,想著春節(jié)期間看到大語言模
    的頭像 發(fā)表于 02-07 18:59 ?1393次閱讀
    Deepseek上<b class='flag-5'>單片機(jī)</b>?<b class='flag-5'>RT-Thread</b>上跑通大語言模型

    RT-Thread上CAN實(shí)踐

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

    開源共生 商業(yè)共贏 | RT-Thread 2024開發(fā)者大會報(bào)名啟動!

    親愛的RT-Thread開發(fā)者我們很高興地宣布,一年一度的RDC(RT-ThreadDeveloperConference,RT-Thread開發(fā)者大會)正式啟動報(bào)名!2024RT-Threa
    的頭像 發(fā)表于 10-29 08:06 ?912次閱讀
    開源共生 商業(yè)共贏 | <b class='flag-5'>RT-Thread</b> 2024開發(fā)者大會報(bào)名啟動!

    Nordic-RT-Thread5.1.0移植筆記

    Nordic-RT-Thread5.1.0移植筆記
    的頭像 發(fā)表于 10-16 08:09 ?1210次閱讀
    Nordic-<b class='flag-5'>RT-Thread</b>5.1.0<b class='flag-5'>移植</b>筆記

    【上?!?月21日RT-Thread巡回線下培訓(xùn)-RTduino 10分鐘上手嵌入式

    RT-Thread全球開發(fā)者線下培訓(xùn)火熱進(jìn)行中,我們已走過菲律賓、北京、深圳、武漢、大連。9月21日我們將來到上海,帶你體驗(yàn)RTduino-10分鐘上手嵌入式!免費(fèi)
    的頭像 發(fā)表于 09-15 08:12 ?598次閱讀
    【上?!?月21日<b class='flag-5'>RT-Thread</b>巡回線下培訓(xùn)-RTduino 10<b class='flag-5'>分鐘</b>上手嵌入式

    如何在RT-thread studio的裸機(jī)例程上移植freertos?

    如何在RT-thread studio的裸機(jī)例程上移植freertos
    發(fā)表于 09-13 06:32

    【大連】9月7日RT-Thread巡回線下培訓(xùn)-OpenMV機(jī)器視覺

    親愛的RT-Thread社區(qū)成員們:2024年RT-Thread全球開發(fā)者線下培訓(xùn)拉開帷幕啦!24年全球巡回培訓(xùn)將覆蓋超10座城市及國家,為開發(fā)者提供一個(gè)深入學(xué)習(xí)RT-Thread嵌入式開發(fā)的絕佳
    的頭像 發(fā)表于 09-01 08:02 ?3421次閱讀
    【大連】9月7日<b class='flag-5'>RT-Thread</b>巡回線下培訓(xùn)-OpenMV機(jī)器視覺

    【武漢】9月7日RT-Thread巡回線下培訓(xùn)-RTduino-10分鐘上手嵌入式

    機(jī)會。9月7日我們將來到武漢,帶你體驗(yàn)RTduino-10分鐘上手嵌入式!免費(fèi)報(bào)名免費(fèi)報(bào)名活動參與抽獎,有機(jī)會獲得《RT-Thread設(shè)備驅(qū)動開發(fā)
    的頭像 發(fā)表于 08-31 08:05 ?732次閱讀
    【武漢】9月7日<b class='flag-5'>RT-Thread</b>巡回線下培訓(xùn)-RTduino-10<b class='flag-5'>分鐘</b>上手嵌入式

    2024 RT-Thread全球巡回 線下培訓(xùn)火熱來襲!

    親愛的RT-Thread社區(qū)成員們:我們非常高興地宣布,2024年RT-Thread全球開發(fā)者線下培訓(xùn)即將拉開帷幕!24年全球巡回培訓(xùn)將覆蓋超10座城市及國家,為開發(fā)者提供一個(gè)深入學(xué)習(xí)RT-Thread嵌入式開發(fā)的絕佳機(jī)會。
    的頭像 發(fā)表于 08-07 08:35 ?2694次閱讀
    2024 <b class='flag-5'>RT-Thread</b>全球巡回 線下培訓(xùn)火熱來襲!

    【好書推薦】RT-Thread設(shè)備驅(qū)動開發(fā)指南

    近年來國內(nèi)芯片產(chǎn)業(yè)和物聯(lián)網(wǎng)產(chǎn)業(yè)的快速崛起,行業(yè)發(fā)展迫切需要更多人才,尤其需要掌握嵌入式操作系統(tǒng)等底層技術(shù)的人才。隨著RT-Thread被更廣泛地應(yīng)用于行業(yè)中,開發(fā)者對嵌入式驅(qū)動開發(fā)的需求越來越
    的頭像 發(fā)表于 08-01 08:35 ?1231次閱讀
    【好書推薦】<b class='flag-5'>RT-Thread</b>設(shè)備驅(qū)動開發(fā)指南

    RT-Thread 新里程碑達(dá)成——GitHub Star 破萬!

    RT-Thread實(shí)時(shí)操作系統(tǒng)開源項(xiàng)目在GitHub上的star數(shù)量突破一萬!截止發(fā)文,RT-Thread作為實(shí)時(shí)操作系統(tǒng)在業(yè)界Star數(shù)量排名第一!倉庫地址:https://github.com
    的頭像 發(fā)表于 07-04 08:35 ?732次閱讀
    <b class='flag-5'>RT-Thread</b> 新里程碑達(dá)成——GitHub Star 破萬!