AVR-mUPI is a software layer developed in C language that provides a unified interface for application programming on ATMEL® megaAVR microcontrollers.
AVR-mUPI hides the specific details and variability of megaAVR devices to user applications. It helps to improve application development, maintenance and portability. It is organized as a set of header files and a static library implementing the application programming interface for each supported device.
AVR-mUPI comes with a thorough documentation: a user manual, a reference manual and an illustrative set of examples that show how to use AVR-mUPI in real working applications.
You can download the latest release (v1.2) on the following website: http://ramon.castellamaymo.net