8051 Microcontroller & Embadded Systems - Kenneth Ayala (Cengage Learning, 2010)