色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

RT-Thread Nano 3.0.3 的基本功能及如何下載與使用

RTThread物聯網操作系統 ? 來源:未知 ? 作者:李倩 ? 2018-04-02 15:58 ? 次閱讀

本文檔介紹了RT-Thread Nano 3.0.3 的基本功能,并介紹了如何下載及使用RT-Thread Nano 3.0.3及相關BSP例程。

RT-Thread Nano 3.0.3相比上一個版本2.1.1有了些新的變化:

新增V2M-MPS2 BSP支持

修復MDK 5.14無法復制license問題

更新board.c模板,簡化不必要的配置

msh命令導出默認添加RT_USED屬性,不需要另外加keep選項

更新stm32_msh和lpc824_msh例子的uart代碼,不再依賴drivers ipc部分

移除drivers ipc部分源碼

1 本文的目的和結構

1.1 本文的目的和背景

RT-Thread Nano 是 RT-Thread推出的極簡版實時操作系統,適用于家電、消費電子、醫療設備、工控等領域大量使用的32位ARM入門級MCU的場合。本文檔是快速入門文檔,方便用戶快速上手使用RT-Thread Nano 3.0.3。

1.2 本文的結構

本文首先介紹RT-Thread Nano 3.0.3基本功能,然后講解了如何安裝及配置RT-Thread Nano 3.0.3及如何獲取RT-Thread Nano 3.0.3相關例程。

2 RT-Thread Nano 簡介

RT-Thread Nano是一個精煉的硬實時內核,內存資源占用極小,功能包括任務處理、軟件定時器信號量、郵箱和實時調度等相對完整的實時操作系統特性。MDK5以后采用pack形式管理芯片及各種相關組件,RT-Thread Nano也是通過MDK pack方式發布,RT-Thread Nano pack包括device drivers、kernel 和 shell (msh) 三部分功能,用戶可以從MDK的Run-time Environment按需要加載。

圖2-1 RT-Thread Nano主要功能

在支持semaphore和mailbox特性,并運行兩個線程(main線程+idle線程)情況下,ROMRAM依然保持著極小的尺寸。我們基于Cortex M0 MCU的一個例子,編譯后的大小(ROM: 3.25K, RAM: 1.04K),除去MCU需要的ROM和RAM, RT-Thread Nano本身需要的ROM是2.5K , RAM 是1K。

圖2-2 RT-Thread Nano內存占用情況

用戶基于Nano的應用程序可以直接遷移到RT-Thread完整版。接下來將描述如何在MDK5上基于RTE(Run-Time Environment), 從裸機開始,創建一個RT-Thread RTOS的小系統工程。

3 Pack安裝

Pack可以通過MDK聯網安裝,也可以離線安裝。下面開始介紹兩種安裝方式。

Pack Installer安裝

打開MDK軟件,點擊工具欄的Pack Installer圖標:

圖3-1 Packs安裝

點擊右側的Pack,展開General,可以找到rt-thread::rthread,點擊對應的Action的Install,就可以在線安裝Pack了。安裝成功后Action欄顯示 ”Up to date”。

圖3-2 Packs管理

手動安裝

我們也可以從官網下載安裝文件,RT-Thread Nano離線安裝包下載,雙擊下載好的文件進行安裝:

圖3-3 Packs手動安裝

4 基礎工程準備

在開始創建RT-Thread小系統之前,我們需要準備一個能正常運行的裸機工程。作為示例,本文使用的是基于STM32L072-Discovery 和Low-Level Library的一個LED 閃爍程序。程序的主要截圖如下:

圖4-1 STM32L072-Discovery示例

在我們的例程中,編譯下載程序后,就可以看到3個LED交替閃爍了。讀者可以根據自己的需要使用其他芯片,完成一個簡單的類似裸機工程。

5 添加RT-Thread Nano到工程

基于一個可以運行的裸機程序,我們來添加RT-Thread到工程。如下圖,點擊Manage Run-Time Environment。

圖5-1 MDK RTE

在Manage Rum-Time Environment里”Software Component”欄找到RTOS,Variant欄選擇RT-Thread,然后勾選kernel,點擊”OK”就添加RT-Thread內核到工程了。

圖5-2 Nano內核添加

現在可以在Project看到RT-Thread RTOS已經添加進來了,展開RTOS,可以看到添加到工程的文件:

圖5-3 添加了RTOS的工程

Kernel文件包括:

clock.c components.c device.c idle.c ipc.c irq.c kservice.c mem.c object.c scheduler.c thread.c timer.c

Cortex-M芯片內核移植代碼:

cpuport.c context_rvds.s

應用代碼及配置文件:

board.c rtconfig.h

6 適配RTThread

RT-Thread會用到了異常處理函數HardFault_Handler()和懸掛處理函數PendSV_Handler(),以及Systick中斷服務函數SysTick_Handler(),所以用戶代碼需要保證這幾個函數沒有被使用,若編譯提示函數重復定義,請刪除自己定義的函數。

RT-Thread Nano 3.0.3 在 board.c 中默認完成了systick 的配置,用戶可以修改宏RT_TICK_PER_SECOND的值配置每秒systick數。

圖6-1 systick配置

RT-Thread Nano 3.0.3 默認是使用數組作為heap。

圖6-2 heap配置

替換例程中的delay函數:

1). 包含RT-Thread的相關頭文件

2). 將delay()函數替換成rt_thread_delay(RT_TICK_PER_SECOND)

下面是完成修改的代碼:

圖6-3 異常處理修改

編譯程序之后下載到芯片就可以看到基于RT-Thread的程序運行起來了。

7 RT-Thread Nano配置

RT-Thread是一個高度可配置的嵌入式實時操作系統,配置文件是rtconfig.h。Nano就是rtconfig.h配置下實現了2.5K ROM,1K RAM的內核應用。用戶可以根據自己的需要通過修改rtconfig.h文件里面的宏定義配置相應功能。

RT-Thread Nano默認未開啟宏RT_USING_HEAP,故只支持靜態方式創建任務及信號量。若要通過動態方式創建對象則需要在rtconfig.h文件里開啟RT_USING_HEAP宏定義。

MDK的配置向導configuration Wizard 可以很方便的對工程進行配置,Value一欄可以選中對應功能及修改相關值,等同于直接修改配置文件rtconfig.h。

圖7-1 Nano配置

8 BSP例程

目前有5個RT-Thread Nano 參考例程,2個基于stm32l0的例程,2個基于lpc824的例程,以及Nano 3.0.3 新增的基于V2M-MPS2的例程。所有例程都可以在MDK上通過Pack Installer找到。點擊Pack Installer圖標:

圖8-1 pack installer

在Search里輸入stm32l0,點擊Device里的STM32L0 Serials,然后點擊右側的Example,可以看到右側有基于stm32l0的兩個例程。

圖8-2 例程

V2M-MPS2 msh 例程簡介

V2M-MPS2是MDK提供的開發板,配合Fast Models Debugger(需要MDK-ARM Professional授權且只支持64位系統),就可以不依賴任何硬件,在Cortex-M平臺調試代碼。

使用V2M-MPS2需要打開windows的telnet客戶端:

win7打開telnet客戶端(https://jingyan.baidu.com/article/eb9f7b6d8701ae869364e826.html)

win10打開telnet客戶端(https://jingyan.baidu.com/article/ceb9fb10a9a1b48cad2ba0c4.html)

打開telnet后,在MDK的Pack Installer里面的Device選擇ARM,右側點擊example,可以看到一個基于V2M_MPS2的msh例程。

圖8-3 V2M_MPS2 msh例程

點擊Copy,導出該例子,編譯工程仿真運行,下面是運行成功的截圖。

圖8-4 V2M_MPS2 msh例程運行成功截圖

RT-Thread 同樣提供了基于RT-Thread完整版的V2M-MPS2的BSP(板級支持包)(https://github.com/RT-Thread/rt-thread/tree/master/bsp/v2m-mps2),用戶可以通過github獲取。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • STM32
    +關注

    關注

    2270

    文章

    10910

    瀏覽量

    356591
  • RT-Thread
    +關注

    關注

    31

    文章

    1294

    瀏覽量

    40233

原文標題:RT-Thread Nano 3.0.3 快速入門指南

文章出處:【微信號:RTThread,微信公眾號:RTThread物聯網操作系統】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    從安裝到使用,RT-Thread Nano最全教程看完不信你還不會使用

    RT-Thread Nano發布以來,小編收到不少開發者詢問RT-Thread Nano的配套教程實例,幸得RT-Thread開發者燕十三
    的頭像 發表于 09-26 06:39 ?5.7w次閱讀
    從安裝到使用,<b class='flag-5'>RT-Thread</b> <b class='flag-5'>Nano</b>最全教程看完不信你還不會使用

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

    上篇介紹了如何移植 RT-Thread Nano 內核與 Finsh 控制臺到 RT1170。本篇繼續介紹如何將 NXP 官方的 VGLite API 移植到 RT-Thread
    的頭像 發表于 11-09 11:22 ?952次閱讀

    基于 Keil MDK 移植 RT-Thread Nano

    RT-Thread Nano 已集成在 Keil MDK 中,可以直接在 IDE 中進行下載添加。本文檔介紹了如何使用 MDK 移植 RT-Thread
    發表于 03-29 06:58

    如何基于CubeMX移植RT-Thread Nano

    本文介紹了如何基于 CubeMX 移植 RT-Thread Nano,并說明生成代碼工程的步驟。RT-Thread Nano 已集成在 CubeMX 中,可以直接在 IDE 中進行
    發表于 03-29 06:56

    RT-Thread Nano 簡介

    RT-Thread Nano 是一個極簡版的硬實時內核,它是由 C 語言開發,采用面向對象的編程思維,具有良好的代碼風格,是一款可裁剪的、搶占式實時多任務的 RTOS。其內存資源占用極小,功能包括
    發表于 05-14 10:22

    基于 Keil MDK 移植 RT-Thread Nano

    直接在 IDE 中進行下載添加。本文檔介紹了如何使用 MDK 移植 RT-Thread Nano,并以一個 stm32f103 的基礎工程作為示例進行講解。移植 Nano 的主要步驟:
    發表于 05-14 10:32

    基于 CubeMX 移植 RT-Thread Nano

    本文介紹了如何基于 CubeMX 移植 RT-Thread Nano,并說明生成代碼工程的步驟。RT-Thread Nano 已集成在 CubeMX 中,可以直接在 IDE 中進行
    發表于 05-14 16:09

    RT-Thread Studio 上使用 RT-Thread Nano

    本文介紹了如何在 RT-Thread Studio 上使用 RT-Thread Nano,并以創建 stm32f103RB 的 Nano 工程為例。準備工作安裝
    發表于 05-18 15:59

    基于 Keil MDK 移植 RT-Thread Nano

    直接在 IDE 中進行下載添加。本文檔介紹了如何使用 MDK 移植 RT-Thread Nano,并以一個 stm32f103 的基礎工程作為示例進行講解。移植 Nano 的主要步驟:
    發表于 05-19 18:15

    RT-Thread Nano的相關資料下載

    RT-Thread Nano入門學習筆記作者:Linkk更新時間:2021.02.17學習過程中使用的芯片:stm32f103c8t6庫函數:標準庫資料獲取RT-Thread官網:https
    發表于 12-09 06:59

    【國產MCU系列】在 HK32F030 上移植 RT-Thread Nano

    如需下載相關開源資料請點擊閱讀原文這是一個航順 HK32F030 的 RT-Thread Nano 移植示例,記錄了在 Keil 裸機工程的基礎上進行 RT-Thread
    發表于 11-21 18:51 ?42次下載
    【國產MCU系列】在 HK32F030 上移植 <b class='flag-5'>RT-Thread</b> <b class='flag-5'>Nano</b>

    RT-Thread Nano入門學習筆記

    RT-Thread Nano入門學習筆記
    發表于 11-26 12:36 ?20次下載
    <b class='flag-5'>RT-Thread</b> <b class='flag-5'>Nano</b>入門學習筆記

    HC32F460移植RT-Thread Nano+FinSh工程源碼下載

    HC32F460移植RT-Thread Nano+FinSh工程源碼下載
    發表于 01-05 10:30 ?6次下載

    基于 Keil MDK 移植 RT-Thread Nano

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

    如何創建RT-Thread Nano工程

    本文將嘗試使用國產的嵌入式實時操作系統RT-Thread,相比較于FreeRTOS,RT-Thread還是有很多有點的,比如有Fish命令行界面,國產開源免費,Nano版本代碼量極小,移植起來非常
    的頭像 發表于 03-19 12:13 ?3816次閱讀
    主站蜘蛛池模板: 老色哥网站| 亚洲AV国产福利精品在现观看| 亚洲免费视频在线观看| 黄色天堂网站| 在线视频 日韩视频二区| 欧美精品v欧洲高清| 国产 亚洲 中文在线 字幕| 亚洲精品蜜桃AV久久久| 伦理片在线3348| 俄罗斯搜索引擎Yandex推广入口| 无码任你躁久久久久久老妇双奶 | 欧美成人国产| 国产精片久久久久久婷婷| 永久免费看mv网站入口| 前后灌满白浆护士| 国偷自产AV一区二区三区健身房| 最新黄yyid| 性夜夜春夜夜爽AA片A| 毛片网站网址| 国产美女裸身网站免费观看视频| 在线视频av大全色久久| 日美一级毛片| 久久综合狠狠综合狠狠| 国产成人亚洲精品无广告| 中文无码热在线视频| 婷婷综合亚洲爱久久| 男女牲交大战免费播放| 国产精品一区二区在线播放| 中文字幕专区高清在线观看| 无码欧美喷潮福利XXXX| 欧美精品v欧洲高清| 九九热这里只有精品2| 高h超辣bl文| 973午夜伦伦电影论片| 亚洲黄色在线观看| 日本阿v片在线播放免费| 久久精品国产久精国产果冻传媒| 大学生第一次破女在线观看| 80岁色老头69av| 一本道高清码v京东热| 手机在线免费观看毛片|