Fundamentals of Digital Logic and Microcontrollers