Quote: Originally Posted by
AngelOfLight 
I can only second that. Been using them through my university course and they are just amazing. Really easy to use and the programmers are not too expensive either. Most of the software is free too and the chips are real cheap too!
If anyone is interested:
http://www.fischl.de/usbasp/.
Been using the programmer for a good while now and its reliable and cheap, also very easy to build.
I have quite a bit of experience with PIC, Atmel, and Motorola/Freescale (HC11, 12, 16) micros from school (electronics engineering degree) and hobbies (since 7th grade).
By far, my favorite is Atmel's AVR series.
The development studio, for writing code, testing and programming is awesome. It's free, powerful and intended for only their products so it’s not bogged down thinking about everyone else's bells and whistles. It has a built in simulator for stepping through code virtually. And there is huge noob-2-expert support at avrfreaks.net
The functionality of the chips are awesome too. I'll discuss each of my main points in detail.
Instruction set: PIC’s are too limited with only 31 instructions; you have to baby them around every little step. Motorola’s are wicked complex with hundreds of instructions with variations so small that it’s easy to loose track what they all mean. You can write very concise code but it’s awkward. AVR’s have about 130 instructions that cover all the stuff moto’s do but a lot simpler and easy to remember.
Packaging, PIC’s and AVR’s come in hobbyist friendly DIP packages, Moto’s do not.
Price: Moto’s are expensive (~$20) and have every bell and whistle you can think of. PICs are cheap (~$4), but come with few extra’s. AVR’s have plenty of options but don’t break the bank (~$7).
Options/Extra’s: Moto’s are king! They have so many extra’s its almost scary trying to configure the peripherals. External memory mapping is a cinch. The thing is, you pay for all these extra’s even if you don’t need most of them. PICs have next to nothing. Limited peripherals and limited memory. Every project I started with a PIC had to be upgrade to a bigger chip because the limited instructions caused the code to exceed the available space. AVR’s have most of the options of a Moto, but a price much closer to a PIC. They have plenty of registers and program space.
Programming: PICs and AVR’s have the cheapest programmers available, as low as $15. Moto’s are ridiculously expensive (I got a simple/crap one with a student discount for $135) and basically only companies can afford them. Both PIC’s and Moto’s require a programming voltage (13V) to program the flash/EE memory, AVR do not. A single 5V supply is all you need for programming and running an AVR. This makes the board design much simpler.
AVR’s have the best programmer of all; the
AVR Dragon PP/ICP/ICE/ JTAG for $50. It can program almost every chip they make in multiple modes.
Parallel Programming (PP): just the chip in a socket.
In Circuit Programming (ICP): use a small cable to program the chip in your circuit.
In Circuit Emulation (ICE): run/stop/manipulate the chip, in circuit, from the development environment on your computer through a small cable.
JTAG: A different and more universal ICE.
The AVR Dragon is USB, professionally built, and integrated into the development environment. Any new chips are added with software updates from Atmel.
For all these reasons and more, Atmel AVR’s are the best. IMO.