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

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

高效太陽能電池:HPBC、TBC與HBC,三種不同BC電池結構對比

評論