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

介紹三種數(shù)據(jù)保護(hù)策略的特點(diǎn)與適用場(chǎng)景
GaN、超級(jí)SI、SiC這三種MOS器件的用途區(qū)別
ADS8688,ADS8688A,ADS8688AT三種型號(hào)有什么區(qū)別?如何選擇?
LED芯片:三種核心結(jié)構(gòu)解析

視覺軟件HALCON的數(shù)據(jù)結(jié)構(gòu)

I2S有左對(duì)齊,右對(duì)齊跟標(biāo)準(zhǔn)的I2S三種格式,那么這三種格式各有什么優(yōu)點(diǎn)呢?
單片機(jī)的三種總線結(jié)構(gòu)
計(jì)算機(jī)程序的三種基本控制結(jié)構(gòu)是什么
嵌入式常用數(shù)據(jù)結(jié)構(gòu)有哪些
shell腳本執(zhí)行的三種方式及區(qū)別
OPA177的型號(hào)里有帶E4、G4的,有不帶的,請(qǐng)問這三種的區(qū)別在哪里?
三種功率器件的應(yīng)用區(qū)別

評(píng)論