Tomasz Wasilczyk

software developer

tAVRlib

website: tavrlib.wasilczyk.pl

Free library providing support for peripherial devices (like HD44780 display) for AVR microcontrollers. Focused on code quality and efficiency.

  • C
  • microcontrollers
  • AVR

Code quality needed

When I started playing with AVR microcontrollers, I was disgusted with code quality of libraries wrote by other hobbyists. Most of them claimed, it have to be done this way, because their code is small (produces small binaries) and fast.

I wasn't happy with such codebase, so I decided to make my own base library, supporting common devices, like simple LCD display, external eeprom memory, or port expanders. I think I reached most of my assumptions, but I'm still unhappy with its form: due to better code size optimization, library source files are included at the end of every library header. This results in perfect inlinig, but breaks some C rules. Anyway, it's still way better than previously available libraries.

There is a next version waiting for release, adding a support for more devices.