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