Microcontroller theory and applications with the PIC18F. (2018)