Subject Code: 01CE0501 Subject Name: Microprocessor Fundamentals & Programming B.Tech. Year - III Objective: The objective of the course is to expose to the students to the architecture and instruction set of typical 8-bit microprocessor. It also deals with Assembly Language Programming using a macro-assembler. Input-output techniques and important programmable support chips used in microprocessorbased systems are discussed in detail. Credits Earned: Credits Course Outcomes: After completion of this course, student will be able to Explain 8085 microprocessor as central device connected to memory and I/O devices. Describe basics of microprocessor, microprocessor architecture and programming Explain & perform experiments based on interfacing microprocessor with memory and various I/O (Input/Output) devices. Explain introduction to the advance processors including RISC based processors. Analyse, design, and simulate various programming based on microprocessor and its peripheral. Pre-requisite of course: NA. Teaching and Examination Scheme Tutorial/ Practical Teaching Scheme (Hours) Theory Marks Marks Total Credits Mid Term ESE Internal Marks Theory Tutorial Practical Sem Viva (V) work (E) (I) (M) (TW) 3 0 2 50 30 20 25 25 150 Contents: Unit Topics Contact Hours 1 Introduction: Introduction to Microprocessors, microcomputer and single chip microcomputer, Components of Microprocessor: Registers, ALU and control & timing, CPU, I/O devices, clock, memory, bussed architecture,
tri-state logic, address bus, data bus and control bus. 2 Architecture of 8085 Microprocessor: Microprocessor Architecture, Pin Functions, De-multiplexing of Buses Memory and I/O operation, Generation of Control Signals, Instruction Cycle, Machine Cycles, T-States. 3 Instruction Set: Assembly Language Programming Basics, Classification of Instructions, 8085 Instruction Set, Instruction and data Formats, Addressing Modes. Assembly Language Programming: Looping, counting and indexing using data transfer, arithmetic, logical and branch instructions. Stack & Subroutines, Time Delay routines, Code Conversion, BCD Arithmetic and 16-Bit Data operations. 5 Interfacing of Memory & I/O with 8085 Microprocessors: Memory mapped I/O and I/O mapped I/O. Address decoding, interfacing of memory chips with 8085. Interfacing of I/O devices with 8085. 6 Interrupt of 8085up: Concept of Interrupt mechanism, Hardware and Software interrupt of 8085, 8259 Programmable Interrupt Controller - Internal structure, pin diagram and modes of operation. 7 Programmable Peripheral devices: 8255 Programmable Peripheral Interface, 825 Programmable Interval Timer, ADC and DAC chips and their interfacing. 8 Advanced Microprocessors: RISC and CISC Architecture, Intel advanced microprocessors, ARM and SUN SPARC, Total Hours 2 6 8 8 References: 1. Gaonkar R. S., Microprocessor Architecture, Programming and Applications. 2. Sunil Mathur, Microprocessor 8085 and Its Interfacing, PHI Learning Pvt. Ltd. 3. Hall D. V., Microprocessor and Interfacing-Programming and Hardware, Tata McGraw-Hill Publishing Company Limited.. Muhammad Ali Mazidi, ARM Assembly Language Programming & Architecture. 5. Short K. L., Microprocessors and Programmed Logic, Pearson Educatio.
Suggested Theory distribution: The suggested theory distribution as per Bloom s taxonomy is as per follows. This distribution serves as guidelines for teachers and students to achieve effective teaching-learning process Distribution of Theory for course delivery and evaluation Remember Understand Apply Analyse Evaluate Create 20% 20% 30% 15% 10% 5% Suggested List of Experiments: 1. i. Introduction to 8085 microprocessors. ii. Study of DYNA-85 trainer kit. 2. To perform Data Transfer (Copy) Operations: i. Write the data 1h into register C and copy it to Accumulator ii. Load Register H with 3h and Register L with ABh. iii. Copy 32h in all the Registers. iv. Load accumulator with the content of memory whose address is 2500h using three different techniques. v. Exchange the content of memory location 2000h and 2500h using direct addressing and indirect addressing. 3. To perform Arithmetic Operations: i. Load Register B and C with 55h and 66h. Add Register B, C and store the result in Register D. ii. Add/Subtract two 16 bit numbers. iii. Add the content of memory location 2500h, 2501h and store the result at memory locations 2503h and 250H. iv. Transfer the array (3 byte) of data starting from 2500h to 2600h by memory pointer without LDA and STA.. To perform Logical Operations: i. Assume register B holds 93h and the accumulator holds. 15h. illustrate the result of instruction ORA B, XRA B and CMA. ii. Load the data byte 8EH in register D and F7H in register E. Mask the higher order bits (D7-D) from both the data bytes, Exclusive OR the lower order bits (D3-D0) and display the answer at an output port. iii. Write a program to shift an eight bit data four bits right. Assume data is in register C. iv. Program to shift a 16-bit data 1 bit left. Assume data is in the HL register.
5. To perform Branch Operations: i. WAP to multiply two 8-bit numbers stored in Register A & Register B. ii. WAP to divide two 8-bit numbers. iii. WAP to find out largest/smallest number from given array stored at 5 consecutive memory locations starting from 2000H and store the result to memory location 2500h. iv. WAP to sort given 10 numbers stored from memory location 2200 in ascending/descending order. v. WAP to search the given byte in the list of 50 numbers stored in the consecutive memory locations starting at 2000H and store the result at the memory locations 2200H and 2201H. Assume byte is in the C register. If byte is not found, store 00 at 2200H and 2201H. vi. Find the square of the given numbers from memory location 6100H and store the result to memory location 7000H & 7001H. 6. To perform Timing and Delay Operations: i. WAP to count continuously in hexadecimal from FFH to 00H with 0.5 us clock period. Use register C to set up a 1ms delay between each count and display number at one of the o/p port. ii. WAP to generate continuous square wave with a period of 00us. Assume the system clock period is 325.5ns and use bit D0 to output for the square wave. (LED blinking) iii. WAP to generate a rectangular wave with on period of 200 us and off period of 00 us. Use bit D0 of Register A to output for the rectangular wave. iv. Design up/down counter to count from0 to 9 and 9 to 0 continuously with a 1.5 sec delay between each count. Display output at one of the output port. 7. To perform Stack Operations: i. WAP to meet the following specification. A) Initialize the stack pointer register at 2597H B) Clear the memory location starting from 2592H to 259FH. C) Load register pairs B, D, and H with data 0237H, 122H and 087H respectively. D) Push the content of the register pairs B, D, H on the stack. E) Execute the program and verify the memory location from 2590H to 259FH. ii. WAP to alter the content of flag register using stack related instructions. 8. To perform Subroutine Operations: i. WAP to convert given hex number in corresponding ASCII number. ii. WAP to convert given ASCII number in corresponding HEX number. iii. WAP to find out square of a number using look up table. iv. WAP to calculate the factorial of a number between 0 to 8.
v. WAP to convert the binary to BCD equivalent. 9. To Study 8255 Programmable Peripheral Interface. 10. To Study 8259 Programmable Interrupt Controller. Advance Experiment List 1. Write a program to perform addition of two 16-bit numbers using 8086 Microprocessor. 2. Design a program for Digital Clock with format HH:MM:SS (Address and data field) using inbuilt routines of monitor program of your system. Instructional Method: a. The course delivery method will depend upon the requirement of content and need of students. The teacher in addition to conventional teaching method by black board, may also use any of tools such as demonstration, role play, Quiz, brainstorming, MOOCs etc. b. The internal evaluation will be done on the basis of continuous evaluation of students in the laboratory and class-room. c. Practical examination will be conducted at the end of semester for evaluation of performance of students in laboratory. d. Students will use supplementary resources such as online videos, NPTEL videos, e-courses, Virtual Laboratory Supplementary Resources: - Open source simulator for 8085 processor (Jubin s Java 8085 simulator) - www.nptel.ac.in - www.intel.com