基本信息
源码名称:RingBuffer-1.C
源码大小:0.01M
文件格式:.zip
开发语言:C/C++
更新时间:2022-03-27
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍
RingBuffer-1.C
已通过编译,已进行过大量数据的串口收发压力测试,暂未发现显性BUG。

开始
复制库文件至工程中,在源代码中引用 RingBuffer 头文件;
新建一个 uint8_t 数组,数组的大小即是环形缓冲区的大小;
新建 RingBuffer 操作句柄;
初始化 RingBuffer 操作句柄,将其与刚才新建的数组绑定,转换成环形缓冲区;
这时候我们就可以使用库提供的各种函数对新建的缓冲区进行读写等操作;
函数详细内容请在编程的过程中参考 ring_buffer.c 内的注释;
示例
在这里我展示了如何新建并初始化 RingBuffer、读写环形缓冲、查询数据长度等基础操作;您可以了解到 RingBuffer 的函数命名与参数的风格和基本的使用方法

#include <stdio.h>
#include <ring_buffer.h>

#define Read_BUFFER_SIZE 256

int main()
{
    //新建缓冲区数组与RingBuffer操作句柄
    uint8_t buffer[Read_BUFFER_SIZE] ;
    ring_buffer RB ;
    
    //初始化RingBuffer操作句柄,绑定缓冲区数组;
    Ring_Buffer_Init(&RB, buffer, Read_BUFFER_SIZE);
    
    //向环形缓冲区写入一段字节和一个字节
    Ring_Buffer_Write_String(&RB, "hello world", 11);
    Ring_Buffer_Write_Byte(&RB, '!');
    
    //获取已储存的数据长度,读出环形缓冲区中的数据并打印
    uint32_t num = Ring_Buffer_Get_Lenght(&RB);
    uint8_t get[16] ;
    Ring_Buffer_Read_String(&RB, get, num);
    printf("%s", get);
    
    return 0 ;
}