Preface
I started learning about microcontrollers when I was studying at university. At that time, some of the single board computers I was using had an 8-bit microcontroller, and my programs were stored in external Eraseable Programmable Read Only Memory (EPROM) chips. The EPROM chips were in relatively large dual in line (DIP) packages and could be erased by shining ultraviolet light through the glass window. Since then, microcontroller technology has changed a lot: external EPROMs have been replaced by on-chip flash memories, DIP packages have been replaced by surface mount packages, and most microcontrollers have become in-system reprogrammable. More and more peripherals have been added to microcontrollers, and the complexity of the software h....