chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

如何輕松幾步實(shí)現(xiàn)在STM32上運(yùn)行FreeRTOS任務(wù)

黃工的嵌入式技術(shù)圈 ? 來(lái)源:黃工的嵌入式技術(shù)圈 ? 作者:黃工的嵌入式技術(shù) ? 2020-03-01 12:07 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

之前文章做過(guò)一次調(diào)查,盡然有大部分人都沒(méi)有接觸過(guò)RTOS,希望本文能帶領(lǐng)那部分朋友入門(mén)。

1寫(xiě)在前面

以前想要在STM32上跑FreeRTOS操作系統(tǒng),還需要自己一步一步的移植FreeRTOS代碼。

現(xiàn)在使用STM32CubeMX工具,就不需要這么繁雜的移植工作,只需輕松幾步就能讓FreeRTOS跑起來(lái)。

本文以STM32L412(NUCLEO-L412KB板卡)為例,其它STM32型號(hào)類(lèi)似。

同時(shí),使用目前(2019.06)最新的MDK和STM32CubeMX工具。因此,需要提前下載安裝工具和軟件包。

2準(zhǔn)備工作

主要有三類(lèi):

MDK-ARM (含軟件包)

STM32CubeMX (含軟件包)

FreeRTOS源碼(可選)

2.1 MDK-ARM(含軟件包)

這里需要下載安裝MDK-ARM,以及STM32對(duì)應(yīng)的軟件包。

官方安裝包地址:

http://www.keil.com/download/product

官方軟件包地址:

http://www.keil.com/dd2/Pack

具體安裝,使用方法可以參看我之前整理的專(zhuān)欄文章:【專(zhuān)欄】Keil系列教程

2.2 STM32CubeMX (含軟件包)

這里也是一樣,需要下載安裝STM32CubeMX,以及STM32對(duì)應(yīng)的軟件包。

官方下載地址:

www.st.com/stm32cubemx

具體安裝,使用方法可以參看我之前整理的專(zhuān)欄文章:【專(zhuān)欄】STM32CubeMX系列教程

提示:軟件包里包含F(xiàn)reeRTOS源碼,但不是最新的。

2.3 FreeRTOS源碼

上面STM32Cube軟件包其實(shí)包含了FreeRTOS源碼,但不是最新版本。

FreeRTOS官網(wǎng):

www.freertos.org

如果想使用最新版本,或指定某一版本,可以到下面地址下載:

https://sourceforge.net/projects/freertos/files/FreeRTOS

o4YBAF4WizyAHJBXAACx9_lk5dk454.jpg

上面地址包含F(xiàn)reeRTOS歷史版本,如果使用指定版本,將源碼替換即可(一本來(lái)說(shuō)都兼容)。

3STM32CubeMX創(chuàng)建工程

有了STM32CubeMX這個(gè)工具,開(kāi)發(fā)STM32變得更加快捷。

本文以STM32L412KB為例,其它STM32型號(hào)原理類(lèi)似。

1.打開(kāi)軟件,進(jìn)入選擇器

2.選中MCU

3.LED引腳配置

4.UART輸出配置

這里配置成異步模式之后,引腳自動(dòng)配置(我的開(kāi)發(fā)板RX引腳不是默認(rèn),則需要自己配置)。

5.使能FreeRTOS

pIYBAF4Wi0CACBrxAAE_dtnw9x8184.jpg

6.配置FreeRTOS任務(wù)

這里創(chuàng)建兩個(gè)FreeRTOS任務(wù):Task1和Task2。

o4YBAF4Wi0CAByImAAFn0mGRRPo972.jpg

提示:針對(duì)初學(xué)者,使用STM32CubeMX配置FreeRTOS時(shí),大部分參數(shù)默認(rèn)即可。

當(dāng)你熟悉之后,可以進(jìn)一步掌握每項(xiàng)參數(shù)。

7.配置時(shí)鐘

這里選擇MSI作為時(shí)鐘源,進(jìn)行倍頻,是系統(tǒng)時(shí)鐘達(dá)到80M。

pIYBAF4Wi0GAQ9DjAAE2y1l0PVs936.jpg

8.工程管理配置

這里參數(shù)是常規(guī)配置,可參看我教程:【專(zhuān)欄】STM32CubeMX系列教程

o4YBAF4Wi0GAfq06AAEIr5-HsRU587.jpg

9.生成并打開(kāi)工程

o4YBAF4Wi0KAH_MXAAEb0eCZLzY861.jpg

4源碼分析

4.1 在兩個(gè)任務(wù)中添加應(yīng)用程序

提示:這里使用了huart2,所以需要包含:#include "usart.h"

pIYBAF4Wi0KAI9cKAAF3qaT5IBQ430.jpg

4.2 說(shuō)明

任務(wù)Task1:間隔500ms閃爍(變化)一次LED(PB3)。

任務(wù)Task2:間隔1000ms,串口UART2發(fā)送一次數(shù)據(jù)“Demo...”

osDelay函數(shù)代表系統(tǒng)延時(shí),單位ms.

然后,就是LED閃爍,和UART發(fā)送函數(shù)。

4.3 編譯下載運(yùn)行

上面步驟完成之后,就可以編譯,然后直接下載運(yùn)行了,通過(guò)串口調(diào)試助手可以看見(jiàn)輸出字符“Demo...”。

5工程及源碼下載

為方便初學(xué)者,這里提供對(duì)應(yīng)工程和源碼,方便大家學(xué)習(xí)。

百度網(wǎng)盤(pán):

https://pan.baidu.com/s/1IdsuIlqqFhuJYxMI6EC7dQ

提取碼:7k5i

提示:公號(hào)不支持外部鏈接,請(qǐng)復(fù)制鏈接到瀏覽器打開(kāi)。

鏈接后期可能會(huì)失效,關(guān)注公眾號(hào)『strongerHuang』及時(shí)獲取動(dòng)態(tài)。


推薦閱讀:

1.工信部宣布5G商用牌照即將發(fā)放!

2.IC封裝原理及功能特性匯總

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

    關(guān)注

    2301

    文章

    11073

    瀏覽量

    369376
  • FreeRTOS
    +關(guān)注

    關(guān)注

    14

    文章

    496

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    Task任務(wù):LuatOS實(shí)現(xiàn)任務(wù)級(jí)并發(fā)”的核心引擎

    Task任務(wù)通過(guò)其強(qiáng)大的并發(fā)處理能力,使LuatOS能夠在單線程環(huán)境中模擬多線程執(zhí)行,通過(guò)協(xié)程的掛起與恢復(fù)機(jī)制,實(shí)現(xiàn)任務(wù)級(jí)的并行操作,顯著提升系統(tǒng)效能。 sys核心庫(kù)是LuatOS運(yùn)行框架庫(kù),也是
    的頭像 發(fā)表于 08-28 13:49 ?238次閱讀
    Task<b class='flag-5'>任務(wù)</b>:LuatOS<b class='flag-5'>實(shí)現(xiàn)</b>“<b class='flag-5'>任務(wù)</b>級(jí)并發(fā)”的核心引擎

    是否可以在不使用 freeRTOS 的情況下運(yùn)行 Infenion AIROC 藍(lán)牙包來(lái)配置 CY43439(將 CY43439 與 STM32H753 連接)?

    是否可以在不使用 freeRTOS 的情況下運(yùn)行 Infenion AIROC 藍(lán)牙包來(lái)配置 CY43439(將 CY43439 與 STM32H753 連接)?
    發(fā)表于 07-02 08:20

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

    任務(wù)發(fā)送事件告知運(yùn)動(dòng)完成。 因?yàn)榘蹇ㄓ辛冯姍C(jī),每一路單獨(dú)控制的時(shí)候沒(méi)有什么問(wèn)題。但是多路運(yùn)行特別是多路復(fù)位的時(shí)候有的電機(jī)會(huì)卡死,查詢(xún)電機(jī)狀態(tài)顯示運(yùn)行中,通過(guò)DEBUG發(fā)現(xiàn)每一路的電機(jī)復(fù)位指令下發(fā)
    發(fā)表于 06-11 07:57

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

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

    FreeRTOS讀取ADS1299數(shù)據(jù)有誤

    您好,請(qǐng)問(wèn),用stm32FreeRTOS的隊(duì)列對(duì)ADS1299傳感器讀取數(shù)據(jù),已設(shè)置采樣率為2khz 在采集任務(wù)中:通過(guò)spi讀取數(shù)據(jù)——濾波(-DSP庫(kù))——將數(shù)據(jù)寫(xiě)入隊(duì)列——延時(shí)
    發(fā)表于 05-05 22:48

    如何在i.MX 8XDXL EVK的A35運(yùn)行Yocto Linux,在M4運(yùn)行FreeRTOS

    我正在使用i.MX 8XDXL 評(píng)估套件并希望在 Cortex-A35 運(yùn)行 Yocto Linux 映像cores 的Cortex-M4 FreeRTOS 映像核心。
    發(fā)表于 04-04 06:02

    嵌入式開(kāi)發(fā)避坑指南|FreeRTOS的5個(gè)\"反直覺(jué)\"小技巧

    、SPI) 4-7:控制層(PID算法、PWM生成) 1-3:后臺(tái)層(日志、UI刷新) 注:STM32建議不超過(guò)32個(gè)優(yōu)先級(jí) 避坑指南: 使用xTaskCreateStatic()創(chuàng)建任務(wù)時(shí),需
    發(fā)表于 03-20 13:57

    STM2cubeide使用Freertos v2提示錯(cuò)誤怎么解決?

    我一直以為st公司是一個(gè)嚴(yán)謹(jǐn),優(yōu)秀的公司,直到我遇到了stm32cubeide使用了freertosv2 。 為什么我把freertos調(diào)成版本v2建一個(gè)任務(wù)和消息隊(duì)列 ,freertosv2提示
    發(fā)表于 03-12 07:33

    移植LWIP+FREERTOS時(shí)遇到的問(wèn)題怎么解決?

    固件庫(kù),移植成功,并且跑了幾個(gè)串口通信的任務(wù),測(cè)試大概兩三天的樣子,并沒(méi)有出現(xiàn)問(wèn)題。 2:移植LWIP1.4.1 (從ST官網(wǎng)下載的那個(gè)網(wǎng)頁(yè)的例程,修改引腳定義后跑在板子沒(méi)問(wèn)題,確認(rèn)硬件沒(méi)問(wèn)題) 3
    發(fā)表于 03-11 06:48

    STM32CubeMX生成的FreeRTOS源碼格式如何優(yōu)化?

    如圖,STM32CubeMX生成的FreeRTOS源碼格式有待優(yōu)化,空格都是以箭頭的方式呈現(xiàn),觀感很差。FreeRTOS官方下載的源碼則不存在這個(gè)問(wèn)題,說(shuō)明是STM32CubeMX生
    發(fā)表于 03-10 08:04

    STM32H745的FreeRTOS是單核工作還是雙核工作?

    STM32CubeMX 中配置的時(shí)候,FREERTOS分為_(kāi)M4和_M7,應(yīng)該是分布對(duì)應(yīng)Cortex_M4和Cortex_M7的核。 那實(shí)機(jī)運(yùn)行RTOS的時(shí)候,運(yùn)行的是單核還是雙核
    發(fā)表于 03-07 13:36

    stm32F407平臺(tái)使用freertos,使用pvPortMalloc申請(qǐng)內(nèi)存,發(fā)現(xiàn)內(nèi)存中的數(shù)據(jù)總被修改,怎么解決?

    如題,我現(xiàn)在stm32F407平臺(tái)打開(kāi)FREERTOS,然后使用pvPortMalloc動(dòng)態(tài)申請(qǐng)內(nèi)存的時(shí)候,發(fā)現(xiàn)這塊內(nèi)存中的數(shù)據(jù)總是變化,后面改為malloc申請(qǐng),內(nèi)存中的數(shù)據(jù)就符
    發(fā)表于 03-07 09:03

    通過(guò)STM32CubeMonitor,實(shí)現(xiàn)對(duì)MCU數(shù)據(jù)監(jiān)控

    STM32CubeMonitor 系列工具通過(guò)實(shí)時(shí)讀取和可視化變量,幫助在運(yùn)行時(shí)微調(diào)和診斷 STM32 應(yīng)用程序。除了專(zhuān)用版本(電源、射頻、USB-PD)之外,多功能
    的頭像 發(fā)表于 01-27 08:00 ?1021次閱讀
    通過(guò)<b class='flag-5'>STM32</b>CubeMonitor,<b class='flag-5'>實(shí)現(xiàn)</b>對(duì)MCU數(shù)據(jù)監(jiān)控

    使用任務(wù)通知提高RTOS應(yīng)用的效率

    在實(shí)時(shí)嵌入式系統(tǒng)中,性能和資源效率是決定設(shè)計(jì)成敗的關(guān)鍵因素。傳統(tǒng)的實(shí)時(shí)操作系統(tǒng)(RTOS)提供了如隊(duì)列、信號(hào)量和事件組機(jī)制,實(shí)現(xiàn)任務(wù)之間的同步和通信。FreeRTOS/SAFERTOS還提供一種方法可以使這些過(guò)程更快、更輕量化,即任務(wù)
    的頭像 發(fā)表于 12-27 14:54 ?928次閱讀

    PowerPAD?輕松實(shí)現(xiàn)

    電子發(fā)燒友網(wǎng)站提供《PowerPAD?輕松實(shí)現(xiàn).pdf》資料免費(fèi)下載
    發(fā)表于 10-29 10:08 ?0次下載
    PowerPAD?<b class='flag-5'>輕松</b><b class='flag-5'>實(shí)現(xiàn)</b>