The microcontroller that will be featured in this textbook is the AVR ATmega328P. This 8-bit microcontroller is used in the popular Arduino Uno R3 system, which contains additional features including (but not limited to): power regulator, bootloader, USB connection, pin headers for each I/O pin, and the availability of the Arduino IDE for writing C code. The Arduino is a relatively inexpensive microcontroller package. By the conclusion of this textbook, you will have all of the information you need to develop your own embedded systems and "smart projects" at home using this platform.
The ATmega328P datasheet[16.14] is the single most useful and important document to understanding everything that needs to be known about the microcontroller. It is available for download on the Microchip website. The first time you look at it, it may seem overwhelming. Perhaps you only understand a few words here and there. Do not be intimidated. Every time you refer to the datasheet, you will find that you understand a little more. Eventually, your knowledge will expand, and more and more of the datasheet will be part of your understanding. At the very least, become comfortable with the features of the ATmega328P, which are detailed on the front page of the datasheet. Some of this front page has been paraphrased below.