Why a 8051 device, like the Atmel AT89C2051?
The 8051 devices, based on the Intel MCS51 architecture have been around since 1976! It is without a doubt the most common microcontroller used in the history of embedded systems. And for good reasons too! Not only was it one of the first microcontrollers out there, despite its age it is still a very versatile architecture, capable of dealing efficiently with many common embedded control problem. New microcontrollers based on the MCS51 architecture seem to appear on the market every so many months, carrying the latest pheripherals and interfaces, often including an optimized 8051-core, which remains software-compatible with the original architecture. The number of online resources, tools, application notes and example code seem endless.
Take for example the Atmel AT89CX051. This device has been around for a number of years now, but is still very popular. It is a small 20pin device; one of the first small 8051-compatibles that stores program-code in flash. It also has the 2 timers and the serial UART, as well as the 2 external interrupt pins of the original 8051. Furthermore, it includes an analog comparator and requires little external parts to operate. A double speed version, executing machine cycles in only 6 clock-cycles, instead of the usual 12 clock-cycles is available as well.
Even though the 8051 has a cisc-architecture, most instructions execute in only 1 or 2 machine cycles and since the devices run at sufficient speed, allowing you to "bit-bang" additional functions in software, like:
I2C (i.e. for serial communication with additional EEPROM)
1 Wire protocols like for the Dallaschips
asynchronous RS232 etc.