Microprocessor architecture and microcomputer systems, memory systems, input and output devices. Number systems-binary, hexadecimal and BCD numbers, 2s complement and arithmetic operations. 8085 microprocessor architecture. Memory interfacing address decoding techniques, memory read and write operations. Memory map. Interfacing I/O devices- Memory-mapped I/O and I/O mapped I/O. Polled and interrupt modes of data transfer. 8085 interrupts, direct memory access. Introduction to 16-bit microprocessor using 8086 as an example. Concept of debugger and MASM/T ASM for PC assembly language programming. Peripheral devices. 8255 programmable peripheral interface, 8253 programmable counter timer, serial communication with SID and SOD, 8251 programmable communication interface, 8259 programmable interrupt controller, keyboard and display devices. 8085 assembly language programming: 8085 instructions-addressing modes. Stack and subroutines. 8085 programmer’s model-CPU registers. Addition, subtraction and multiplication routines. Software delay and counting routines. Logical operations. Analog and digital I/O interface routines-ADC and DAC. Software development systems: Assemblers and cross assemblers. Microprocessor applications. Microprocessor based system design aids and troubleshooting techniques.
Introduction to microcontroller: Comparison of various microcontrollers. 8051 microcontroller architecture. Bi-directional data ports, internal ROM and RAM, counters/timers. Oscillator and clock. 8051 registers. Memory organisations-program memory and data memory, internal RAM and bit addressable memory, special functions, registers, memory map. External memory systems and I/O interface. Accessing external program memory, accessing external data memory, available I/O ports during external memory access. Alternate ports functions. Serial interface. 8051 interrupts. Power down modes. 8051 assembly language programming. 8051instruction sets, addressing modes, bit level operations. Arithmetic routines, counting and timing under interrupt control, keyboard and display interface routines, accessing lookup tables. Software development systems. Assemblers and simulators. Microcontroller based system design and applications.