日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

STM32 FreeRTOS系列教程(一)FreeRTOS简介

發布時間:2023/12/14 编程问答 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 STM32 FreeRTOS系列教程(一)FreeRTOS简介 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

參考資料:《正點原子STM32F4 FreeRTOS開發手冊_V1.1》《野火FreeRTOS 內核實現與應用開發實戰—基于STM32》

學習RTOS的意義

當我們進入嵌入式這個領域的時候,往往首先接觸的都是單片機編程,單片機編程又
首選51 單片機來入門。這里面說的單片機編程通常都是指裸機編程,即不加入任何RTOS
(Real Time Operating System 實時操作系統)的程序。常用的RTOS 有國外的FreeRTOS、
μC/OS、RTX和國內的FreeRTOS、Huawei LiteOS 和AliOS-Things 等,其中尤以國外開源
且免費的FreeRTOS 的市場占有率最高。
在裸機系統中,所有的程序基本都是自己寫的,所有的操作都是在一個無限的大循環
里面實現。現實生活中的很多中小型的電子產品用的都是裸機系統,而且也能夠滿足需求。
但是為什么還要學習RTOS 編程,偏偏還要整個操作系統進來。一是項目需要,隨著產品
要實現的功能越來越多,單純的裸機系統已經不能夠完美地解決問題,反而會使編程變得
更加復雜,如果想降低編程的難度,我們可以考慮引入RTOS 實現多任務管理,這是使用
RTOS 的最大優勢。

FreeRTOS編程風格

變量名

在FreeRTOS 中,定義變量的時候往往會把變量的類型當作前綴加在變量上,這樣的
好處是讓用戶一看到這個變量就知道該變量的類型。比如char 型變量的前綴是c,short 型
變量的前綴是s,long 型變量的前綴是l, portBASE_TYPE 類型變量的前綴是x。還有其他
的數據類型,比如數據結構,任務句柄,隊列句柄等定義的變量名的前綴也是x。
如果一個變量是無符號型的那么會有一個前綴u,如果是一個指針變量則會有一個前
綴p。因此,當我們定義一個無符號的char 型變量的時候會加一個uc 前綴,當定義一個
char 型的指針變量的時候會有一個pc 前綴。

函數名

函數名包含了函數返回值的類型、函數所在的文件名和函數的功能,如果是私有的函
數則會加一個prv(private)的前綴。特別的,在函數名中加入了函數所在的文件名,這大
大的幫助了用戶提高尋找函數定義的效率和了解函數作用的目的,具體的舉例如下:

  • vTaskPrioritySet()函數的返回值為void 型,在task.c 這個文件中定義。
  • xQueueReceive()函數的返回值為portBASE_TYPE 型,在queue.c 這個文件中定義。
  • vSemaphoreCreateBinary()函數的返回值為void 型,在semphr.h 這個文件中定義。
  • 宏均是由大寫字母表示,并配有小寫字母的前綴,前綴用于表示該宏在哪個頭文件定
    義,部分舉例具體見表格

    總結

    以上是生活随笔為你收集整理的STM32 FreeRTOS系列教程(一)FreeRTOS简介的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。