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

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

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

國(guó)產(chǎn)RT-thread操作系統(tǒng)在國(guó)民技術(shù)單片機(jī)上移植

億佰特物聯(lián)網(wǎng)應(yīng)用專家 ? 2024-03-05 08:20 ? 次閱讀

各位嵌入式軟件工程師想必都有類似的經(jīng)驗(yàn),使用無操作系統(tǒng)開發(fā)單片機(jī)時(shí)對(duì)于時(shí)序把控、任務(wù)延時(shí)及各任務(wù)之間的通信很難實(shí)現(xiàn)完整地條理清晰地編碼。

對(duì)于部分經(jīng)驗(yàn)不足的工程師,總會(huì)存在各種各樣的問題,如因?yàn)樽兞俊?a target="_blank">參數(shù)函數(shù)位置以及延時(shí)方法等導(dǎo)致程序運(yùn)行效率過低的情況。實(shí)時(shí)操作系統(tǒng)能很好地解決這些問題。一般無操作系統(tǒng)的情況下,經(jīng)驗(yàn)豐富的工程師可能會(huì)使用狀態(tài)機(jī)加定時(shí)器等實(shí)現(xiàn)任務(wù)的非阻塞延時(shí),使用軟件定時(shí)器加回調(diào)函數(shù)實(shí)現(xiàn)簡(jiǎn)單的定時(shí)任務(wù)等。

在操作系統(tǒng)中,可以統(tǒng)一使用系統(tǒng)延時(shí)rt_thread_mdelay來解決問題,操作方法類似于最開始學(xué)習(xí)單片機(jī)時(shí)的delay()函數(shù)一樣,無需擔(dān)心任務(wù)卡死。在簡(jiǎn)單的應(yīng)用中,如果使用多個(gè)任務(wù),完全可以不用考慮系統(tǒng)會(huì)卡死。當(dāng)然,該操作系統(tǒng)還有更高級(jí)的功能,此處不作贅述。

資料準(zhǔn)備

本次移植基于國(guó)民的N32G430芯片進(jìn)行移植,首先需要以下工具:

國(guó)民技術(shù)

RT-Thread

軟件:Keil5,筆者使用的是5.27版本

開發(fā)板:淘寶隨便找一個(gè)國(guó)民技術(shù)的N32G430開發(fā)板,

下載國(guó)民技術(shù)的基礎(chǔ)資料包,直接將國(guó)民的鏈接粘貼在文件夾路徑框(FTP傳輸),找到如下文件:

34f1d3c8-da86-11ee-9118-92fbcf53809c.png

解壓后找到,此文件為國(guó)民的基本支持包:

35009da4-da86-11ee-9118-92fbcf53809c.png

下載RTT NANO版本:

351cfe7c-da86-11ee-9118-92fbcf53809c.png

建議使用手動(dòng)下載安裝:

352e6ac2-da86-11ee-9118-92fbcf53809c.png

下載如下:

35409d32-da86-11ee-9118-92fbcf53809c.png

安裝

Keil安裝完成的情況下,分別將RealThread.RT-Thread.3.1.5.pack及Nations.N32G430_DFP.1.1.0.pack雙擊安裝,無需其他設(shè)置步驟,軟件會(huì)自動(dòng)安裝到位。

創(chuàng)建工程

先創(chuàng)建一個(gè)demo工程,選擇國(guó)民的N32G430芯片,確認(rèn)后軟件自動(dòng)進(jìn)入組件選擇。

3547706c-da86-11ee-9118-92fbcf53809c.png

組件選擇:選中如下的內(nèi)容;

35746ba8-da86-11ee-9118-92fbcf53809c.png3584f78e-da86-11ee-9118-92fbcf53809c.png358ca966-da86-11ee-9118-92fbcf53809c.png

如果彈出報(bào)錯(cuò),先截個(gè)圖,稍后手動(dòng)拷貝,由于安裝時(shí)firmware并不會(huì)安裝到位,一般是手動(dòng)拷貝的,此處手動(dòng)從國(guó)民的SDK中拷貝;

3597986c-da86-11ee-9118-92fbcf53809c.png

Firmware路徑:

35a1227e-da86-11ee-9118-92fbcf53809c.png

按照下圖創(chuàng)建目錄拷貝即可:

35af7c8e-da86-11ee-9118-92fbcf53809c.png

接下來,進(jìn)入組件管理界面:

35b8e0b2-da86-11ee-9118-92fbcf53809c.png

在剛在的工程文件夾下找到以下文件:

\Device\N32G430K8L7\CMSIS\device\system_n32g430.c

\Device\N32G430K8L7\CMSIS\device\startup\startup_n32g430.s

\Device\N32G430K8L7\n32g430_std_periph_driver\src\misc.c

\Device\N32G430K8L7\n32g430_std_periph_driver\src\n32g430_rcc.c

\Device\N32G430K8L7\n32g430_std_periph_driver\src\n32g430_gpio.c

雙擊添加:

35c25e4e-da86-11ee-9118-92fbcf53809c.png

選擇編譯器,此步驟不選沒法編譯:

35e860c6-da86-11ee-9118-92fbcf53809c.png

之后返回組件選擇,僅保留RTT部分,前邊選組件只是為了保證后續(xù)手動(dòng)移植時(shí)知道選擇哪些文件以及從哪里拷貝文件,目標(biāo)文件在哪里等。

35f233ee-da86-11ee-9118-92fbcf53809c.png

接下來配置工程的包含路徑:

35f98482-da86-11ee-9118-92fbcf53809c.png36051798-da86-11ee-9118-92fbcf53809c.png

添加路徑:

361160f2-da86-11ee-9118-92fbcf53809c.png

接下來進(jìn)行第一次編譯;

出現(xiàn)如下報(bào)錯(cuò),證明文件基本移植完成,接下來可以處理系統(tǒng)對(duì)接相關(guān)內(nèi)容。

36190e38-da86-11ee-9118-92fbcf53809c.png

首先處理系統(tǒng)時(shí)鐘

362a9784-da86-11ee-9118-92fbcf53809c.png3634b82c-da86-11ee-9118-92fbcf53809c.png3642de34-da86-11ee-9118-92fbcf53809c.png365aa92e-da86-11ee-9118-92fbcf53809c.png

接下來添加main文件,先建立user文件夾,在文件夾下添加main.c文件,并將文件添加至工程。

36666bb0-da86-11ee-9118-92fbcf53809c.png3672a862-da86-11ee-9118-92fbcf53809c.png

簡(jiǎn)單寫一個(gè)空的main函數(shù),開始編譯:

367cf60a-da86-11ee-9118-92fbcf53809c.png

編譯完成,僅一個(gè)告警,問題不大,可以忽略。

36852fdc-da86-11ee-9118-92fbcf53809c.png

接下來處理系統(tǒng)打印,打開控制臺(tái)功能:

36943342-da86-11ee-9118-92fbcf53809c.png36a1f07c-da86-11ee-9118-92fbcf53809c.png

main任務(wù)寫個(gè)簡(jiǎn)單的打印,編譯:

36ac747a-da86-11ee-9118-92fbcf53809c.png

至此,移植全部完成,接下來下載編譯即可,此處不再贅述。

聲明:本文內(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)投訴
  • 單片機(jī)
    +關(guān)注

    關(guān)注

    6030

    文章

    44489

    瀏覽量

    631975
  • 操作系統(tǒng)
    +關(guān)注

    關(guān)注

    37

    文章

    6684

    瀏覽量

    123140
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    怎樣單片機(jī)上移植RT-Thread操作系統(tǒng)

    怎樣單片機(jī)上移植RT-Thread操作系統(tǒng)?有哪些步驟流程?
    發(fā)表于 08-13 07:59

    RT-Thread操作系統(tǒng)cortex-m3內(nèi)核的移植原理是什么?

    RT-Thread操作系統(tǒng)cortex-m3內(nèi)核的移植原理是什么?
    發(fā)表于 11-30 07:18

    RT-Thread編程指南

    RT-Thread編程指南——RT-Thread開發(fā)組(2015-03-31)。RT-Thread做為國(guó)內(nèi)有較大影響力的開源實(shí)時(shí)操作系統(tǒng),本文是RT
    發(fā)表于 11-26 16:06 ?0次下載

    嵌入式實(shí)時(shí)操作系統(tǒng)RT-Thread的特點(diǎn)與體系結(jié)構(gòu)及移植方法詳細(xì)說明

     文章介紹了嵌入式實(shí)時(shí)操作系統(tǒng)RT-Thread的特點(diǎn)及體系結(jié)構(gòu),并具體研究了RT-Thread以ARM720T為內(nèi)核的SEP4020嵌入式芯片上的
    發(fā)表于 11-27 17:52 ?27次下載
    嵌入式實(shí)時(shí)<b class='flag-5'>操作系統(tǒng)</b><b class='flag-5'>RT-Thread</b>的特點(diǎn)與體系結(jié)構(gòu)及<b class='flag-5'>移植</b>方法詳細(xì)說明

    移植RT-Thread的原理與方法

    rtt論壇搜索“國(guó)產(chǎn)MCU移植”即可閱讀。本文不介紹具體移植步驟,而是如往常一樣,分享移植的原理與方法。
    的頭像 發(fā)表于 09-17 09:41 ?7663次閱讀

    國(guó)產(chǎn)MCU移植】HC32F460基于Keil MDK 移植 RT-Thread Nano

    國(guó)產(chǎn)MCU移植】HC32F460基于Keil MDK 移植 RT-Thread Nano
    發(fā)表于 11-18 18:51 ?65次下載
    【<b class='flag-5'>國(guó)產(chǎn)</b>MCU<b class='flag-5'>移植</b>】HC32F460基于Keil MDK <b class='flag-5'>移植</b> <b class='flag-5'>RT-Thread</b> Nano

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

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

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

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

    國(guó)民技術(shù)攜手RT-Thread共同推進(jìn)MCU與RT-Thread操作系統(tǒng)廣泛適配

    日前,國(guó)民技術(shù)股份有限公司與知名物聯(lián)網(wǎng)操作系統(tǒng)廠商睿賽德科技(RT-Thread)簽署會(huì)員合作協(xié)議,正式成為RT-Thread高級(jí)會(huì)員。
    的頭像 發(fā)表于 12-16 09:56 ?2336次閱讀

    國(guó)民技術(shù)與睿賽德科技(RT-Thread)簽署會(huì)員合作協(xié)議

    日前,國(guó)民技術(shù)股份有限公司與知名物聯(lián)網(wǎng)操作系統(tǒng)廠商睿賽德科技(RT-Thread)簽署會(huì)員合作協(xié)議,正式成為RT-Thread高級(jí)會(huì)員。
    的頭像 發(fā)表于 01-18 16:46 ?4654次閱讀

    RT-Thread學(xué)習(xí)筆記分享

    我是從2020年11月初開始學(xué)習(xí)RT-Thread實(shí)時(shí)操作系統(tǒng)的,在學(xué)習(xí)RT-Thread之前,我接觸過uCOS和FreeRTOS,但這兩個(gè)單片機(jī)
    的頭像 發(fā)表于 01-27 18:52 ?2054次閱讀

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

    本文將嘗試使用國(guó)產(chǎn)的嵌入式實(shí)時(shí)操作系統(tǒng)RT-Thread,相比較于FreeRTOS,RT-Thread還是有很多有點(diǎn)的,比如有Fish命令行界面,國(guó)
    的頭像 發(fā)表于 03-19 12:13 ?3712次閱讀

    RT-Thread操作系統(tǒng)的FreeRTOS兼容層

    的兼容項(xiàng)目中。 1 概述 這是一個(gè)針對(duì)RT-Thread國(guó)產(chǎn)操作系統(tǒng)的FreeRTOS操作系統(tǒng)兼容層,可以讓原有基于FreeRTOS操作系統(tǒng)
    的頭像 發(fā)表于 01-14 00:55 ?1580次閱讀

    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>

    新書發(fā)布——《實(shí)時(shí)操作系統(tǒng)應(yīng)用技術(shù)RT-Thread與ARM編程實(shí)踐》

    RT-Thread又一本新書《實(shí)時(shí)操作系統(tǒng)應(yīng)用技術(shù)——基于RT-Thread與ARM的編程實(shí)踐》發(fā)布,標(biāo)志著RT-Thread生態(tài)和實(shí)時(shí)
    的頭像 發(fā)表于 05-11 08:35 ?686次閱讀
    新書發(fā)布——《實(shí)時(shí)<b class='flag-5'>操作系統(tǒng)</b>應(yīng)用<b class='flag-5'>技術(shù)</b>:<b class='flag-5'>RT-Thread</b>與ARM編程實(shí)踐》