91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

RA FreeRTOS任務(wù)創(chuàng)建

瑞薩嵌入式小百科 ? 來源:未知 ? 2023-03-10 14:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

隨著嵌入式應(yīng)用程序變得越來越復(fù)雜,單片機(jī)裸機(jī)開發(fā)已經(jīng)無法滿足工程師對于復(fù)雜程序的需求。于是具有多任務(wù)調(diào)度和實(shí)時響應(yīng)特性的RTOS便越來越受工程師們青睞。瑞薩RA系列MCU兼容FreeRTOS系統(tǒng),開發(fā)環(huán)境e2 studio完美支持FreeRTOS,無需額外手動移植。以下介紹如何用瑞薩e2 studio創(chuàng)建RA系列MCU的FreeRTOS工程。

對于不熟悉瑞薩的FSP開發(fā)環(huán)境的工程師們,此文章能夠很好幫助大家了解RA系列的FreeRTOS并快速創(chuàng)建FreeRTOS工程,詳細(xì)步驟如下:

1

創(chuàng)建工程

按正常步驟創(chuàng)建RA工程時,選擇FreeRTOS。

3786ec58-bf0d-11ed-bfe3-dac502259ad0.png

2

FreeRTOS的FSP配置

2.1

在Stack中創(chuàng)建任務(wù),并命名為Task1和Task2,內(nèi)存管理默認(rèn)為靜態(tài)內(nèi)存分配。

38a03b30-bf0d-11ed-bfe3-dac502259ad0.png

2.2

FreeRTOS通用項(xiàng)Common設(shè)置簡單說明。

注: 多個任務(wù)時,所有任務(wù)公用Common的設(shè)置。如task1和task2,在task1頁面設(shè)置完Common后,無需再在task2頁面設(shè)置。

2.2.1 Common->General:

38c2251a-bf0d-11ed-bfe3-dac502259ad0.png

2.2.2 Common -> Memory Allocation, Optional Functions:

內(nèi)存分配:如果選擇了動態(tài)內(nèi)存管理,則需Enable Support Dynamic Allocation,同時在New Stack –> RTOS中添加heap x(1~5),F(xiàn)reeRTOS在創(chuàng)建任務(wù)、信號量、隊(duì)列等時候會使用heap_x.c中的內(nèi)存申請函數(shù)來申請內(nèi)存。這些內(nèi)存就是從Total Heap Size中申請的。

API函數(shù):可enable或disable相應(yīng)的FreeRTOS API函數(shù)。

38f9dc62-bf0d-11ed-bfe3-dac502259ad0.png

2.3

任務(wù)中添加外設(shè)、隊(duì)列、信號量等

391ebe4c-bf0d-11ed-bfe3-dac502259ad0.png

2.4

配置好定時器后,點(diǎn)Generate Project Content生產(chǎn)底層代碼。

本例程實(shí)現(xiàn)簡單的LED燈閃爍,定時器0和定時器1的周期分別配置為300ms和800ms。定時器和LED管腳的配置方法,就不在此做詳細(xì)說明了。

3

FreeRTOS底層代碼介紹

3.1

代碼生成,文件夾目錄如下

39516766-bf0d-11ed-bfe3-dac502259ad0.png

3.2

用戶無需手動調(diào)用API函數(shù)創(chuàng)建任務(wù),F(xiàn)SP生成的main函數(shù)里會分別調(diào)用task1_create()和task2_create()創(chuàng)建任務(wù),創(chuàng)建完成后執(zhí)行vTaskStartScheduler ()啟動任務(wù)調(diào)度。

396ffaa0-bf0d-11ed-bfe3-dac502259ad0.png

3.3

在任務(wù)中task1_entry.c和task2_entry.c添加用戶初始化和應(yīng)用代碼。

帶FreeRTOS的工程里,生成的main函數(shù)里不會調(diào)用hal_entry.c,而是直接創(chuàng)建任務(wù)后,執(zhí)行任務(wù)切換,進(jìn)入任務(wù)函數(shù)task1_entry.c和task2_entry.c。

3998a7e8-bf0d-11ed-bfe3-dac502259ad0.png

更多內(nèi)容歡迎查看:

39bddd38-bf0d-11ed-bfe3-dac502259ad0.png

1

END

1


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

    關(guān)注

    147

    文章

    18934

    瀏覽量

    398491
  • 瑞薩
    +關(guān)注

    關(guān)注

    37

    文章

    22482

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    【瑞薩FPB-RA6E2試用】【瑞薩RA × Zephyr開發(fā)板評測】+線程創(chuàng)建及測試

    ,并通過KEIL來編譯和下載。 在創(chuàng)建時,與不使用操作系統(tǒng)的區(qū)別是由選取“No RTOS”,改為選取“FreeRTOS”。 隨后,為觀察效果可選取生成Blinky模式。 在進(jìn)入RASC后,在棧中需添加
    發(fā)表于 02-03 21:33

    【瑞薩FPB-RA6E2試用】環(huán)境配置及基礎(chǔ)任務(wù)代碼示例

    【瑞薩RA × Zephyr開發(fā)板評測】 開發(fā)板基礎(chǔ)功能測試與代碼移植 本報告兩篇開發(fā)內(nèi)容主要以入門級的外設(shè)為標(biāo)準(zhǔn)進(jìn)行測試,在入門級測試需求上加入常規(guī)任務(wù)進(jìn)行測試體驗(yàn)。 開發(fā)內(nèi)容1: 關(guān)于GPIO
    發(fā)表于 01-24 20:47

    FreeRTOS 空閑任務(wù)

    FreeRTOS 中很多人會注意到為什么有一個叫IDLE task的任務(wù)占用了CPU百分之九十多的使用權(quán),但是這個任務(wù)并沒有自己手動創(chuàng)建。原因就是這個空閑
    發(fā)表于 12-04 07:35

    freertos關(guān)閉任務(wù)調(diào)度的方法

    #include \"FreeRTOS.h\" #include \"task.h\" /* 關(guān)閉任務(wù)調(diào)度 */ void
    發(fā)表于 11-17 06:47

    FreeRTOS任務(wù)調(diào)度及優(yōu)先級問題

    大家好,最近本人在學(xué)習(xí)FreeRTOS ,之前有過一些裸機(jī)開發(fā)的經(jīng)驗(yàn),目前知道了FreeRTOS任務(wù)是基于時間片輪轉(zhuǎn)來調(diào)度,也就是知道了任務(wù)會基于各個時間片來運(yùn)行。 于是聯(lián)想了如果有
    發(fā)表于 11-06 02:18

    RA4E2開發(fā)板評測】電壓檢測器 FreeRTOS顯示量程0-3300 mV

    rasc創(chuàng)建RA4E2開發(fā)板的FreeRTOS工程。 作者加入了[亞馬遜],之后推出的產(chǎn)品為Amazon FreeRTOS 本次實(shí)驗(yàn)要使用FreeR
    發(fā)表于 08-27 16:26

    RA-Eco-RA6M4開發(fā)板評測】2、移植FreeRTOS_CLI和添加自定義指令

    FreeRTOS提供多種軟件組件為用戶提供不同的功能,這里介紹如何移植其中的FreeRTOS-CLI命令行工具到RA6M4開發(fā)板上。 1、工程配置 參考下面的帖子中創(chuàng)建工程的過程,初始
    發(fā)表于 07-23 11:34

    RA4L1-SENSOR】電壓檢測器第一個程序增加 FreeRTOS顯示量程0-3300 mV和量程0-15000mV]

    創(chuàng)建RA4L1-SENSOR開發(fā)板的FreeRTOS工程。 FreeRTOS 是作者 Richard Barry 于 2003 年推出的系統(tǒng)。作者加入了[亞馬遜],之后推出的產(chǎn)品為Am
    發(fā)表于 07-11 10:53

    RA4L1-SENSOR】4、移植FreeRTOS-CLI

    FreeRTOS提供有不同的組件為用戶提供不同的功能,本文移植其中的FreeRTOS-CLI命令行工具到RA4L1-Sensor開發(fā)板上。 1、工程配置 參考下面的帖子中創(chuàng)建工程的過程
    發(fā)表于 06-26 22:30

    RA4L1-SENSOR】04 用FreeRTOS重構(gòu)工程

    ,是目前市場占有率最高的 RTOS。 3. 軟件部分 3.1 創(chuàng)建工程 創(chuàng)建工程的詳細(xì)過程就參考我之前寫的RA4L1的實(shí)驗(yàn)1,主要是這里RTOS選擇FreeRTOS v11.1.0+f
    發(fā)表于 06-16 22:28

    FreeRTOS任務(wù)中發(fā)送事件隊(duì)列是有什么限制嗎?

    到了TMC的芯片,但是在到位上報的信息中少了卡死電機(jī)的上報。所以有的電機(jī)的到位中斷并沒有成功寫入任務(wù)。 一開始是每個電機(jī)都開啟了一個定時器查詢,后續(xù)改成一個定時器查六個電機(jī)并將定時器的周期加到50ms,就很少會卡死。 所以向FreeRTOS
    發(fā)表于 06-11 07:57

    詳解FreeRTOS與SAFERTOS的區(qū)別

    開源免費(fèi)的FreeRTOS由Richard Barry在WHIS工作時創(chuàng)建,WHIS基于FreeRTOS的功能模型,通過完整的HAZOP分析,確定了功能模型和API中的所有的弱點(diǎn),減輕所有薄弱環(huán)節(jié),并采用IEC 61508 SI
    的頭像 發(fā)表于 06-04 16:58 ?916次閱讀
    詳解<b class='flag-5'>FreeRTOS</b>與SAFERTOS的區(qū)別

    RA-Eco-RA4M2開發(fā)板評測】RA-Eco-RA4M2 移植FreeRTOS

    1 前言 基于瑞薩的MCU移植FreeRTOS很簡單,只需簡單配置即可生成FreeRTOS的工程。筆者這里使用Renesas RA Smart Configurator和Keil5開發(fā)。 2 新建
    發(fā)表于 05-03 23:24

    瑞薩RA8系列教程 | 基于 e2 studio 創(chuàng)建RA8工程

    該系列教程前面幾篇文章都是為開發(fā)做準(zhǔn)備,本文正式進(jìn)入開發(fā)階段,基于 e2 studio 創(chuàng)建RA8工程,并點(diǎn)亮一個LED。
    的頭像 發(fā)表于 04-03 17:14 ?1180次閱讀
    瑞薩<b class='flag-5'>RA</b>8系列教程 | 基于 e2 studio <b class='flag-5'>創(chuàng)建</b><b class='flag-5'>RA</b>8工程

    CubeMX創(chuàng)建STM32F1 FreeRTOS選擇新版庫1.8.6后工程出錯是怎么回事?

    創(chuàng)建出來的工程首先提示缺少文件 freertos_mpool.h , 然后將次文件從CubeMX的庫中 手動拷貝過來后接著又提示報錯 *** Using Compiler '
    發(fā)表于 03-14 06:31