Hi,
uP Class: 8051 Assembly and C
Boe-bot maze competition with the Basic Stamp2 (also with 8051 - honors project in class).
I've read up a little on the PIC and 8051, but would like some input from experienced robotics users.
If you've only read (a little) on the PIC, but have actually done MCS51 (the 8051), you will find the AVRs easier than the PICs (as the latter is a whole new ballgame). AVRs are of the MCS51 core initially (although gone to some form of Harvard architecture), so will be very similar to 8051 (MCS is an ancient core dating back to the 8080 and IIRC the 4040 (don't mind if you don't know what I'm onto, this is cyber archeology.
The above only holds true if you plan to program in assembler of course, as with C, it's pretty much the same and you will need to look up stuff in datasheets whatever your choice.
If, on the other hand, you liked the BASIC Stamp, you could take the PIC route and add a PIC BASIC compiler (or a PIC BASIC Pro compiler) and reap the benefit of an easy to learn language and the huge speed advance this combination have over the Stamps.
Still another controller worth considering is the Propeller (from Parallax), as this should be aces for true multitasking (it's like a multicore processor, able to do several things at once). I haven't worked with it, but plan to some time into the future, just to give it a spin
Apart from the mentioned ones, there is several of other controllers that each may look promising, but AVRs and PICs are the ones that have the largest base of user code and support for hobbyists on the net.
It would be nice if it had a built in ADC and PWM function.
Most do these days.
The way to select is to plan ahead:
What's needed, what would be nice, add 30% for unforeseen sensors/code/etc.
Is a 16 bit timer necessary (for servo PWM = yes) or would less suffice (or perhaps a 32 bit counter for that matter)?
Do you need hardware IIC/SPI/whatever, is USB needed (or nice) to have in the foreseeable future?
Like nails, that come in all sorts of shape, length, thickness, plated/galvanized/rusty/stainless, so do controllers come in all sorts of flavors, but here you need to look in your toolbox as well, as there's not much sense in buying 12" nails if you only have a 7 oz. hammer and neither would you want to go for a controller that can only be used with development tools costing a fortune.
(Look at what's out there and how it fits your budget).
Whichever controller family you choose, stick with it for a year or two, until you feel reasonably proficient, before starting on another controller family. That way it will be way faster learning the second one, but if you try to take in two very different cores, like AVR and PIC, concurrently, you're as good as doomed to fail with both.