使用场景
串口需要接收大数据包(一次超过256字节)时,可以采用Buffer相关的功能函数,它是一个Key-Valu内存数据库,
其中 Key: 任何字符串(ASCII) , Value可以为任何数据(0x00-0xff),包括字符串.
setBuffer("key","value");
--设置key
getBuffer("key");
--读取key
delBuffer("key");
--删除某个key
getFreeBuffer();
--查询剩余Buffer
注意: 该函数功能仅在专家模式
下使用.
函数说明
-- 应用系统中,划分了32KB的用户空间,用于存储Key-Value,该空间可以跨程序跨线程访问.
-- 其中 Key为字符串, Value可以存储字符串外,还可以存储其它任意数据值,包括0x00-0xff,类似c语言中的char类型.
-- 该Buffer一共提供了4个接口:
setBuffer("key","value"); --设置key
getBuffer("key"); --读取key
delBuffer("key"); --删除某个key
getFreeBuffer(); --查询剩余Buffer
-- 使用例子场景: 在串口接收处理数据
---1.先用getBuffer把没有处理的数据读出来,和新来数据连起来
---2.通过setBuffer 把数据保存起来,
-- 3. 调用新的线程通过 getBuffer获取内容,复制出来后,通过delBuffer删除buffer
-- 4. 处理复制出来的串口数据
---5. 为什么不直接在串口接收函数中处理呢,这样会阻塞了接收数据,会导致数据丢失.
更多例子
更多例子可以在 代码市场
搜索关键字 setBuffer
或者 Buffer
等
最后一次更新于2023-08-26
0 条评论