This book treats 8-bit microcontrollers; how to program them and how to design prototypes of embedded systems based on microcontrollers. Two microcontrollers from Microchip are used; a mid-range controller (PIC16F818) and an advanced controller (PIC18F4580). The first part treats assembler programming of mid-range controllers, but he main focus of this book is on C programming of advanced 8-bit controllers and the “embedded” aspects of C programming. All projects are designed as prototypes on a breadboard with inexpensive and widely available components.
The software theory covers for example interrupt handling in C, multi-file projects and modularization of C programs (interface and implementation files, header file protection, generic functions etc). The hardware part covers all the integrated I/O units that a typical 8-bit controller has, like timers, ADCs, capture/compare/pwm modules, analog comparators and reference voltage, serial interfaces (RS-232 and SPI). We also introduce you to a lot of external hardware, like alpha numeric displays, graphical displays, keyboards, RS-232-to-USB conversion, RFID, DACs, sensors, stepper motors, servo motors, thumbwheels, ultra sound rangers, IR remote controllers, radio links and GPS chips.
This book uses Microchip’s MPLAB® X IDE (Integrated Development Environment) and the XC8 C compiler. Both can be downloaded free of charge from Microchip’s home page.