
embedul.ar framework is …
a high-level abstraction layer
That hides every platform aspect, including the hardware and operating system underneath.
It manages everything through abstract devices; each represents a specific functionality.
… written in C17.
Each device has a known interface that any implementation must follow.
And public members to access relevant functionality in a platform-independent fashion.
It cares about code quality
The build system enables all compiler warnings (GCC -Wall -Wextra). Each one is solved.
The framework source code is subject to continuous static tests and code reviews to assure its quality.
That includes efforts to comply with most, if not all, MISRA-C and CERT C guidelines.
… and reliability.
embedul.ar enforces a strict no Heap (no dynamic memory) policy within the framework.
It employs the ACSL formal specification language to declare expected function inputs and outputs.
Run-time guards on every function parameter act as a last line of defense.