FreeRTOS三種數據結構區別(StreamBuffer,MessageBuffer,Queue)
StreamBuffer字節流緩存,寫入和讀取隨意大小字節的數據,沒有限制。
MessageBuffer消息緩存,是寫入4個字節,讀取4個自己,寫入12個字節就讀取12個字節,寫入和讀取的字節大小是一樣的。
Queue隊列,比如定義了int類型的數據,就必須寫入和讀取都是4個字節,不能隨意更改數據大小。
Message Buffer是基于Stream Buffer的。只是在每一次發送數據的時候多了四個字節的空間用于存放消息的大小。根據這個消息大小,讀取放就可以一次讀取出全部消息的內容。
Message Buffer基于Stream Buffer上實現的, 在傳輸的時候用4個字節記錄了sent的內容大小這樣子讀取的話,也可以一次讀取對應大小的數據,很適合 串口 接收和發送數據,每次的大小不定,但是接受和發送的數據量需要相同
審核編輯:劉清
-
串口通信
+關注
關注
34文章
1637瀏覽量
56663 -
FreeRTOS
+關注
關注
12文章
492瀏覽量
63979
原文標題:FreeRTOS Message Buffer消息緩存
文章出處:【微信號:硬件會,微信公眾號:硬件會】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
程序設計與數據結構
信號隔離器三種供電方式的區別

介紹三種數據保護策略的特點與適用場景
GaN、超級SI、SiC這三種MOS器件的用途區別
ADS8688,ADS8688A,ADS8688AT三種型號有什么區別?如何選擇?
視覺軟件HALCON的數據結構

I2S有左對齊,右對齊跟標準的I2S三種格式,那么這三種格式各有什么優點呢?
單片機的三種總線結構
計算機程序的三種基本控制結構是什么
嵌入式常用數據結構有哪些
shell腳本執行的三種方式及區別
三種功率器件的應用區別

評論