0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

FreeRTOS流式缓冲区是指什么

工程师邓生 来源:硬件会 作者:硬件会 2022-09-15 11:51 次阅读

流式缓冲区是在队列的基础上,针对单一生产者和消费者场景,与队列类似,也是一个任务负责产生数据,另一个任务负责读取数据,但是字节流可以是任意长度,并且不一定具有开头或结尾。可以一次写入任意数量的字节,并且可以一次读取任意数量的字节。

Stream Buffer读写的大小没有限制,适合于一个任务写,另外一个任务读,不适合多任务读写。

API

StreamBufferHandle_t xStreamMusic = NULL; //创建一个句柄

xStreamMusic=xStreamBufferCreate(540, 8);//创建Stream Buffer,最多540个字节,最小8个字节

e6cb6b7a-342b-11ed-ba43-dac502259ad0.png

e6e487ae-342b-11ed-ba43-dac502259ad0.png

xStreamBufferIsFull(xStreamMusic)//监控是否满了

xStreamBufferBytesAvailable(xStreamMusic);//监控已使用多少空间

xStreamBufferSpacesAvailable(xStreamMusic);//监控还剩多少空间



审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • API
    API
    +关注

    关注

    2

    文章

    1380

    浏览量

    60984
  • FreeRTOS
    +关注

    关注

    12

    文章

    473

    浏览量

    61341

原文标题:FreeRTOS StreamBuffer流缓冲区

文章出处:【微信号:硬件会,微信公众号:硬件会】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    使用UART FIFO缓冲区时,缓冲区中的数据有时会损坏的原因?

    我在使用 UART FIFO 缓冲区时遇到了以下问题。 问题描述: 当通过两个 UART 通道使用完整的 UART FIFO 缓冲区并通过两个通道进行通信时,缓冲区中的数据有时会损坏,例如,UART
    发表于 03-06 06:59

    使用SPI通信发送128字节的FIFO,清空缓冲区需要多少时间?

    我正在使用 SPI 通信发送 128 字节的 FIFO。 设置源频率为 80MHZ,SPI 速率为 5MHZ。 我想检查清空缓冲区需要多少时间。 在配置下方设置。 .spiMode
    发表于 03-05 07:08

    没有办法通过FX3固件检查缓冲区是卡住了还是已满?

    我正在尝试通过多通道 DMA 缓冲区直播 1080p60 视频,但是我们遇到了一个问题,即在向 FX3 写入一定数量的缓冲区之后,我们看到当前线程 WATERMARK 和 READY 标志保持不变
    发表于 02-23 08:01

    西门子博诊断缓冲区的使用方法

    可从在线和诊断视图中“诊断”文件夹的“诊断缓冲区”组中读出 CPU 的诊断缓冲区
    的头像 发表于 12-11 10:24 1178次阅读
    西门子博诊断<b class='flag-5'>缓冲区</b>的使用方法

    使用malloc建立缓冲区时出现错误怎么解决?

    ,我不知道现在这个已知系统的中断频率,所以我做了一个偷懒的想法,先把输入数据3秒的数据放在自建的缓冲区,再将这个数据处理后再输出,延时大概3s数据的时间,现在但是使用malloc建立缓冲区时出现错误,请问,怎么拯救?
    发表于 11-30 07:39

    C++环形缓冲区设计与实现

    一、环形缓冲区基础理论解析(Basic Theory of Circular Buffer) 1.1 环形缓冲区的定义与作用(Definition and Function of Circular
    的头像 发表于 11-09 11:21 457次阅读
    C++环形<b class='flag-5'>缓冲区</b>设计与实现

    SPI串行时钟和缓冲区数据关系是什么?

    仅当存在待发送数据时串行时钟波特发生器才产生对应数据位模式的时钟脉冲吗?如果缓冲区没数据,串行时钟就一直空闲吗?
    发表于 10-17 08:20

    SPI在通信的过程中怎么实现环形缓冲区读取?

    SPI在通信的过程中怎么实现环形缓冲区读取
    发表于 10-11 08:11

    STM32进阶之串口环形缓冲区实现

    STM32进阶之串口环形缓冲区实现
    的头像 发表于 09-19 09:20 1636次阅读
    STM32进阶之串口环形<b class='flag-5'>缓冲区</b>实现

    关于NUC980的网口的发送描述符的缓冲区地址要求4字节对齐的问题

    NUC980的网口的发送描述符的缓冲区地址要求 4字节对齐的问题,因为我用的协议栈里面要求IP数据段4字节对齐,加上以太网14字节,如果发送缓冲区要求4字节对齐,带来的问题我必须要完成一次拷贝,不能
    发表于 09-04 06:44

    NUC980的网口的发送描述符的缓冲区地址要求4字节对齐的问题求解

    NUC980的网口的发送描述符的缓冲区地址要求 4字节对齐的问题,因为我用的协议栈里面要求IP数据段4字节对齐,加上以太网14字节,如果发送缓冲区要求4字节对齐,带来的问题我必须要完成一次拷贝,不能把数据缓冲区直接发送 另外一个
    发表于 06-27 07:34

    NUC980的网口的发送描述符的缓冲区地址要求4字节对齐的问题求解

    NUC980的网口的发送描述符的缓冲区地址要求 4字节对齐的问题,因为我用的协议栈里面要求IP数据段4字节对齐,加上以太网14字节,如果发送缓冲区要求4字节对齐,带来的问题我必须要完成一次拷贝,不能
    发表于 06-13 07:01

    88w9098如何配置/修改套接字缓冲区大小?

    我想知道如何在驱动程序中配置套接字缓冲区大小?我正在使用 88w9098 芯片。 我正在做一些实验。我已经在内核中更改了套接字缓冲区大小,因此我可能还需要更改 Wi-Fi 驱动程序端的缓冲区大小。有人能告诉我如何配置/修改套接字
    发表于 05-31 11:00

    有没有办法检查/设置css缓冲区

    你好。有没有办法检查/设置 css 缓冲区?似乎当我添加太多 css 特性时,事情会变得不稳定。
    发表于 05-10 09:03

    如何使用Dma从Bctu Fifo1到缓冲区的数据传输?

    我必须使用 dma 将数据(定期)从 bctu fifo1 传输到缓冲区。Watermark 值设置为 5,这意味着当 fifo1 有 6 个条目时,它应该触发 dma 进行数据传输。Adc 结果
    发表于 05-06 07:08