FIFO buffers are one of the most used data structures, especially on MCUs to handle read time data input/output. Although there are countless of implementations, there wasn't a single one that is well optimized for MCUs.
fifofast was specifically designed to consume as little CPU time and SRAM as possible, while providing more versatility and features than typical implementations. It is ideally suited to buffer serial data, ADC measurement results or other data of any kind.
- generic data: supports any data type, even custom typedef'd ones
- static memory: no additional overhead with dynamic memory
- inline support: speeds up execution, especially from ISRs
- minimal RAM: a typical fifo has only 3 byte meta information
- easy to use: all standard fifo functions are implemented
- supports debugging: with the build-in debugger of Atmel Studio 7