For a number of years, the Atmel AVR has been my processor of choice. While the PIC enjoys a greater popularity, until the advent of the 18F series, they have simply fallen short in terms of on chip resources – particularly memory.
The AVR is available in a number of configurations and several very useful variants exit in DIP packages making them easy for the DIY enthusiast.
My main programming tool has been the excellent CodeVision compiler. This has made learning about and developing for the AVR extremely easy and reliable.
Lately however, I have been looking at the GCC tools. The Gnu Compiler Collection offers a common set of tools which can be targetted at a number of processors. Not only is it the compiler of choice for much of the C programming open-source world targetting Intel processors, it can emit code for the AVR, H8, SH, MSP430, ARM and a number of other processors. This makes it attractive in terms of writing portable applications. From a personal point of view, as I move to the H8 and then the ARM processors, I want to be able to take as much of my code and experience with me, not having to relearn toolchains with every move.
Here are a few bits and pieces about the AVR: some information and a couple of projects. They are done with a mixture of tools. No attempt has been made to make them especially educational. If they are of some use then that is a bonus.