Get started¶
Download library¶
Library is primarly hosted on Github.
Download latest release from releases area on Github
Clone develop branch for latest development
Download from releases¶
All releases are available on Github releases releases area.
Clone from Github¶
First-time clone¶
Download and install
gitif not alreadyOpen console and navigate to path in the system to clone repository to. Use command
cd your_pathRun
git clone --recurse-submodules https://github.com/MaJerle/ringbuffcommand to clone repository including submodules orRun
git clone --recurse-submodules --branch develop https://github.com/MaJerle/ringbuffto clone development branchNavigate to
examplesdirectory and run favourite example
Update cloned to latest version¶
Open console and navigate to path in the system where your resources repository is. Use command
cd your_pathRun
git pull origin master --recurse-submodulescommand to pull latest changes and to fetch latest changes from submodulesRun
git submodule foreach git pull origin masterto update & merge all submodules
Add library to project¶
At this point it is assumed that you have successfully download library, either cloned it or from releases page.
Copy
ringbufffolder to your projectAdd
ringbuff/src/includefolder to include path of your toolchainAdd source files from
ringbuff/src/folder to toolchain buildBuild the project
Minimal example code¶
Run below example to test and verify library
/* Buffer variables */
ringbuff_t buff; /* Declare ring buffer structure */
uint8_t buff_data[8]; /* Declare raw buffer data array */
/* Application variables
uint8_t data[2]; /* Application working data */
/* Application code ... */
ringbuff_init(&buff, buff_data, sizeof(buff_data)); /* Initialize buffer */
/* Write 4 bytes of data */
ringbuff_write(&buff, "0123", 4);
/* Print number of bytes in buffer */
printf("Bytes in buffer: %d\r\n", (int)ringbuff_get_full(&buff));
/* Will print "4" */