librfn
An ad-hoc utility library
Modules
Here is a list of all modules:
 BenchmarkBenchmark mechanism for real-time processing modules
 Bit operationsUtility functions to perform bit operations
 Command consoleLightweight command interpreter implemented as a protothreads
 EnumerationsConvert enumerations to strings and strings to enumerations
 FibreLightweight run-to-completion task scheduler supporting protothreads
 Fuzzy comparisionsCompare floating point numbers match within a tolerance
 Hex dumpHexidecimal dump to stdout or a FILE
 Singly linked listA singly linked list with fast head/tail insertion and sorted insert support
 Message queueLockless message queue implementation using C11 atomic operations
 In-memory loggingLog text messages to a circular memory buffer
 Bitstream pack/unpackInsert and extract data from a bitstream
 ProtothreadsCooperative multi-tasking without context switching
 Random numbersPseudo random number generators
 Register dumpSymbolic register dump routines
 Ring bufferLockless byte-based ring buffer using C11 atomic operations
 Rotary encoderUtility functions to decode signals from a 2-bit rotary encoder
 StatisticsSimple statistics accumulation
 String manipulationVarious string manipulation routines
 Time managementEasy to use, high resolution timer functions
 Miscellaneous utilitiesUtility functions that did not fit into other modules
 WAV file headerRoutines to pack/unpack WAV file headers