Skip to content

A simple ring buffer (circular buffer) designed for embedded systems.

License

Notifications You must be signed in to change notification settings

crespum/Ring-Buffer

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ring-Buffer

CircleCI

A simple ring buffer (circular buffer) designed for embedded systems. It allows creating queues for different types of elements.

Code based on the following two projects:

Usage

#define RING_BUFFER_MAX_NUM_ELEMENTS     16

ring_buffer_t ring_buffer;

uint8_t buffer[RING_BUFFER_MAX_NUM_ELEMENTS];
ring_buffer_attr_t attr = {
    .buffer = buffer,
    .size_elem = sizeof(buffer[0]),
    .num_elem = sizeof(buffer),
};

ring_buffer_init(&ring_buffer, attr);

uint8_t buf_put = 8;
ring_buffer_put(&ring_buffer, &buf_put);

uint8_t buff_get;
ring_buffer_get(&ring_buffer, &buf_get);
printf("buff_get = %u", buf_get); // buff_get = 8

About

A simple ring buffer (circular buffer) designed for embedded systems.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 60.4%
  • C 39.0%
  • Makefile 0.6%