Microcontrollers
(ECE 315)
L T P C
3 0 1 4
Instructor: Anjan Kumar Talukdar
email id: anjantalukdar@gauhati.ac.in
Teaching assistant: Mrs. Atlanta Choudhury
email id: atlanta.ayush.choudhury@gmail.com
Class timing: Tuesday (9:30 AM - 10:30 AM) (Room no. R1)
Wednesday (9:30 AM - 10:30 AM) (Room no. R2)
Thursday ( 11: 30 AM - 1: 30 PM) (Practical) (ECE Computer lab)
Friday (9:30 AM - 10:30 AM) (Room no. R2)
Course objective:
The course provides a detailed study of the 8051 microcontroller, its instruction set, and programming, interfacing with peripheral devices, I/O communication and applications.
Course outcomes:
After completion of the course, students can
Explain the types, architecture of microcontrollers, embedded processors, and their applications.
Explain internal architecture and interfacing of different peripheral devices with 8051 Microcontrollers.
Write the programs for the microcontroller and its interfacing.
Explain the design concept of embedded systems.
Grading policy:
First class test : 20 marks
Second class test: 20 marks
Third class test/assignment : 10 marks
End semester examination: 50%
Grading (relative):
Mark obtained Letter grade Grade point
90 - 100 A 10
75 - 89 B 8
55 - 74 C 6
40 - 54 D 4
30 - 39 E 2
<30 F 0
Programming:
Programming will be done in Keil.
Prerequisites:
A good background in Digital electronics, 8085 Microprocessors, assembly and C programming
Suggested Reading:
Microcontrollers- Ajkamal, Pearson Education;
8051 Microcontroller- Mazidi, Pearson Education;
Microprocessor and Microcontroller- William Kleitz, Prentice Hall;
Microcontrollers, Principles and Applications- Ajit pal, PHI Ltd;
8051 Microcontroller- Kenneth J.Ayal; Cengage Learning;
Programming customizing the 8051 Microcontroller- Myke Predko, Tata McGraw Hill;
Syllabus:
Module 1: Introduction
Microcontroller-Definition, types, examples of popular microcontrollers, application, architecture, family members, resources, development trends, embedded processors, an overview of 8051;
Module 2: 8051 Architecture
Comparison of Microprocessor and Microcontroller, block diagram of microcontroller, functions of each block, detailed pin pot diagram, registers, flags, PSW, stack, interrupt, serial port, oscillator and clock, clock cycle, state machine cycle, instruction cycle, power-on reset program counter, ROM space, internal and external memories, data types, directives, counters, timers, synchronous and asynchronous serial UART interface, interrupts.
Serial Communication: Basics of serial programming, RS232 standards, 8051 connection to RS 232, 8051 serial communication programming, Programming 8051 to transmit data serially programming 8051 to receive data serially.
Module 3: Assembly level programming
Introduction, Assembly and running a program, Parts; Instruction set- data transfer, data and bit manipulation, arithmetic, logical, controlled flow (jump, loop, call), interrupt control flow, interrupt handling etc; Addressing modes; Programmable timers; Interrupt structure.
Module 4: Interfacing and Peripherals
Detailed study and interfacing of Serial PCI 8251, PPI 8255, Programmable DMAC 8257, Programmable Interrupt Controller 8259, ADC and DAC circuit interfacing, Keyboard-display controller 8279; Interfacing setup of switch, keypad, keyboard interface, LED, Array of LED, Alphanumeric devices, Printer devices, Programmable Instruments Interface using IEEE 488 (GPIB) Bus, Stepper motor, High power devices, analog input-output, industrial process control; Application to design simple digital filters.
Module 5: Programming Framework and Advanced Architectures
Programming in C and use of GNU tools- basics, CPU registers and Internal RAMs, Assemblers, Parameter passing, Control structures; Software building blocks; Real time operating system for system design; Microcontroller Application Development Tools; Case study of an exemplary IDE; Advanced Design- Introduction to 8096/ 80196 and one ARM 32-bit Design, RISC, PIC, AVR.