You are on page 1of 8

CSE2006 Microprocessor and Interfacing

LTPJC
20 24 4
Preamble
This course is an introductory course to understand the working of the processor. To introduce
students to assembly language programming and to explain how the peripherals are connected to
the processor. This will serve as foundation for the advanced studies in the area of Hardware
design or Embedded System Design.

Objective of the course


 Introduction to fundamentals of 8086
 Ability to use peripherals for product design, problem solving
 learn to use of tools such as assembler(MASM, EMU8086)
 Design product for automation at Home, Industry.

Expected Outcome
After successfully completing the course the student should be able to
1. Describe the basic architecture of a stored -program computer.
2. Identify the addressing modes of a sample microprocessor
3. Write assembly language programs for the given processor
4. Describe a typical I/O interface
5. Design the circuit/prototype using COTS hardware for various applications

Module Topics L Hrs SLO


1 INTRODUCTION TO 8086 MICROPROCESSOR
Introduction to 8086, Pin diagram, Architecture, addressing mode 6 2
and Instruction set
2 INTRODUCTION TO ALP
Tools- Assembler Directives, Editor, assembler, debugger,
simulator and emulator. E.g., ALP Programs-Arithmetic 5 5,9,17
Operations and Number System Conversions, Programs using
Loops, If then else, for loop structures
3 Advanced ALP
interrupt programming using DOS BIOS function calls, File 2 5,9,17
Management
4 Introduction to Peripheral Interfacing-I
5 2,5
PPI 8255, Timer – 8253,Interrupt controller-8259
5 Introduction to Peripheral Interfacing-II
IC 8251 UART, Data converters (A/D and D/A Converter), 4 5,9,17
seven segment display and keyboard interfacing
6 Co-Processor
Introduction to 8087, Architecture, Instruction set and ALP 4 2,9
Programming
7 Introduction to Arduino Boards
2 2,9
Introduction to Microcontroller- Quark –SOC processor,
programming, Arduino Boards using GPIO (LED,LCD, Keypad,
Motor control and sensor), System design application and case
study.
8 Recent Trends:
Architecture of one of the advanced processors such as
2 2,9
Multicore, Snapdraggon, ARM processor in ipad

Lab Experiments areas


1 Arithmetic operations 8/16 bit using different addressing modes. 30 5,6,9,17
2 (a)Finding the factorial of an 8 /16 bit number.
3 (a)Solving nCr and nPr
(b) Compute nCr and nPr using recursive procedure. Assume that
„n‟ and „r‟ are non-negative integers.
3 Fibonacci series
4 Sorting in ascending and descending order
5 (a)Search a given number or a word in an array of given numbers.
(b) Search a key element in a list of „n‟ 16-bit numbers using the
Binary search algorithm.
6 To find the smallest and biggest numbers in a given array.
7 ALP using number system conversions
8 (a) String operations(String length, reverse, comparison,
concatenation, palindrome)
9 Password checking
10 Convert a 16-bit binary value (assumed to be an unsigned integer) to
BCD and display it from left to right and right to left for specified
number of times .
12 Read the current time from the system and display it in the
standard format on the screen.
13 Program to simulate a Decimal Up-counter to display 00-99.
14 Read a pair of input co-ordinates in BCD and move the cursor to
the specified location on the screen.
15 Stepper motor interface using 8086/ Intel Galileo Board
16. Seven segment LED DISPLAY using 8086/Intel Arduino Board

Indicative list of experiments:


1. The bating strike rate of a batsman in an IPL series for 12 matches
is 12h,14h,18h,20h,10h,11h,15h,24h,12h,10h,8h and 16h. Write a
procedure to calculate the average strike rate of the batsman.
2. Compute the factorial of a positive integer „n‟ using recursive
procedure.
3. Write an ALP to find number of password phrase possible using 4
alphabets and 2 numbers. The alphabet and number should not be
repeated.
4. Tulip flower petals are arranged in Fibonacci pattern from outer
layer. Write an ALP to find numbers of petals available at the 5th
layer of a Tulip.
5. For a decoration, 100 petals of Tulip are required. Tulip has petals
arranged in Fibonacci number and has petals up to 5th Fibonacci
level. Write an ALP to find number of Tulip flowers required for the
decoration.
6. VIT university is planning to admit 10 new Ph.D candidates for the
SCSE, but VIT received 15 applications and their marks out of 100
are: 30,24,12,70,45,67,34,20,33,88,34,69,54,90 and 50. Write an ALP
to select top 10 candidates.

7. Find the shortest word from the given words “Windowsxp”,


“RedhatLinux” and “AppleMacOs” and print the word in reverse
order.
8. Read your name from the keyboard and display it at a
specified location on the screen in front of the message “What is
your name”? You must clear the entire screen before display.
9. „A chain is only‟? is the first string. Append the second string „as
strong as its weakest link‟ with the first string and replace character
„a‟ with „z‟.
10. For security reasons, the bank accepts the username of a new
internet user with a characteristic such that the reverse of the user
name should not match with original, if so „OK‟ message is displayed
otherwise “Retype username “message is displayed. Write an ALP
for the above scenario.
11. Assume an optical document scanner. The Optical sensor is
controlled by the stepper motor. While scanning the optical sensor
has to move slowly from left to right and has to move back to the
left. Write an ALP to control the optical sensor while scanning.
12. Assume that 1st of May is Friday, you are planning to take a leave on
Friday of 6th week from 1st May. Find the date of leave and display
all the dates of Friday till 6th weeks.
13. Write an ALP to switch the simulate Traffic Light using input output
peripherals interfaced to 8086 microprocessor/ GPIO of Intel
Arduino Board.
Sample Project # Generally a team project [5 to 10 members] 60 5,6,9,17
# Assessment on a continuous basis with a min of 3 reviews. [Non
Contact
Projects may be given as group projects hrs]

Sample project titles:


1. Water Level/ Flood Control system using microprocessor/arduino -
GPIO
2. Elevator Control System
3. Home Automation System using arduino GPIO
4. Efficient water supply to the plants using Moisture sensor( Intel
Galileo Arduino Board) 5, 9
5. Security system Intel Arduino Galileo Board(Burglar Alarm system)
6. Arduino based obstacle detection system for disabled people.
7. Pill Remainder for elderly people using arduino
8. People counter using Arduino in an auditorium

Text Books
1. A.K. Ray and K.M. Bhurchandi Advanced Microprocessors and Peripherals, third
Edition, Tata McGraw Hill, 2012.
2. Barry B Bray , The Intel Micro processor 8086/8088, 80186,80286, 80386 and 80486-
Arcitecture, programming and interfacing, PHI, 8th Edition, 2009

Reference Books
1. Douglas V. Hall, SSSP Rao” Microprocessors and Interfacing Programming and
Hardware”. Tata McGraw Hill, Third edition, 2012.
2. Mohamed Rafiquazzaman, “Microprocessor and Microcomputer based system design,”
Universal Book stall, New Delhi, Second edition, 1995
3. K Uday Kumar, B S Umashankar, Advanced Micro processors & IBM-PC Assembly
Language Programming, Tata McGraw Hill, 2002.
4. Massimo Banzi,”Getting Started with Arduino “, First Edition, pub. O'Reilly,2008‟

Microprocessor and Interfacing

Knowledge areas that contain topics and learning outcomes covered in the course

Knowledge Area Total Hours of Coverage

CS: AR(Architecture) / CE: CAO(Computer 28


Architecture and Organization)

CS: HCI (Human computer Interaction) 2

Body of Knowledge coverage

KA Knowledge Unit Topics Covered Hours

CE:CAO0 History and  Indicate some important topic areas such as 2


CE:CAO6 overview of system organization and architecture,
CE:CAO3 computer memory, interfacing, microprocessors
architecture and CAO0
organization
 Mention a typical CPU and sketch its
Processor systems organization CAO0
design
 The CPU interface: clock, control, data and
address buses (CAO6)

 Main memory organization and its


characteristics and performance (CAO3)

CE:CAO1 Fundamentals of  Instruction formats (CAO1) 4


CS:AR computer
architecture  The fetch/execute cycle; instruction
decoding and execution (CAO1)
Assembly Level
Machine  Registers and register files (CAO1)
Organization
 Instruction types and addressing modes
(CAO1)

 Control unit; instruction fetch, decode, and


execution AR

 Instruction sets and types (data


manipulation, control, I/O) AR

 Instruction formats AR

 Addressing modes AR

CE:CAO1 Fundamentals of  Programming in assembly language CAO1 7


CS:AR computer
architecture  I/O techniques and interrupts CAO1

Assembly level  Subroutine call and return mechanisms


machine CAO1, AR
organization
 Assembly/machine language programming
AR

CE:CAO4 Interfacing and  I/O fundamentals: handshaking, buffering, 7


CE:CAO6 communication I/O techniques: programmed I/O,
interrupt-driven I/O, DMA, (CAO4)
Processor systems
design  Interrupt structures: vectored and
prioritized, interrupt overhead, interrupts
CS:AR Assembly Level and re-entrant code (CAO4)
Machine
Organization  Basic parallel and serial interfaces (CAO6)

Interfacing and  Timers (CAO6)


Communication
 I/O and interrupt AR

 I/O fundamentals: handshaking, buffering,


programmed I/O, interrupt-driven I/O AR

 Interrupt structures: vectored and


prioritized, interrupt acknowledgment AR

CE:HCI1 Foundations of  Motivation: the importance of the human 2


CS:HCI human-computer interface in computer engineering; issues of
interaction small screens and larger screens, HCI1

User-centered  Principles of good human computer


design and testing interaction design in the context of
computer engineering; engineering tradeoffs,
HCI1

 Approaches to, and characteristics of, the


design process HCI

CE:CAO2 Computer  Representation of integers (positive and 8


arithmetic negative numbers)

 Significance of range, precision, and


accuracy in computer arithmetic

 Representation of real numbers (standards


for floating-point arithmetic)

 Algorithms for carrying out common


floating-point operations

 Converting between integer and real


numbers
Multi-precision arithmetic

 Hardware and software implementation of


arithmetic unit

 The generation of higher order functions


from square roots to transcendental
functions

Total hours 30
Where does the course fit in the curriculum?
This course is a
 Program core Course.
 Suitable from 3rd semester onwards.
 Knowledge of Fundamental Digital logic is preferred

What is covered in the course?


This course is designed to cover Introduction to microprocessor and microcontroller. Various
peripheral devices that may be connected to microprocessor for input, output with other system
are covered here. Second module covers how to program the microprocessor using assembly
language. Intel 80x86 architecture is used in desktop computers. Peripheral device interface and
assembly language programming to interact with DOS is also covered here. Fourth module
covers to enable multiprocessing with numeric processor.
The last module is intended for encouraging project work in automation at home and at
Industry.

What is the format of the course?


This Course is designed with 100 minutes of in-classroom sessions per week. Generally this
course will have the combination of lectures, in-class discussion, case studies, guest-lectures,
mandatory off-class reading material, assignments and quizzes.

How are students assessed?


 Students are assessed based on group activities, classroom discussion, assignments, quiz,
projects, continuous (CAT) assessment test, and final assessment test.

Session wise plan

Sl. Class Lab Topic Covered levels of Text/ Remarks


No. Hour Hour mastery Reference
Book
1 3 Introduction to 8086, Pin Familiarity 1,2
diagram, Architecture,
2 3 4 addressing mode and Usage 1, 2
Instruction set
3 1 1 Tools- Assembler Usage 1 LAB
Directives, Editor, Component
assembler, debugger,
simulator and emulator
4 3 5 . E.g., ALP Programs- Assessment 1,2 LAB
Arithmetic Operations and Component
Number System
Conversions,
5 1 4 Programs using Loops, If Familiarity 1,2 LAB
then else, for loop structures Component
6 2 2 interrupt programming Usage 1, LAB
using DOS BIOS function Component
calls, File Management
7 3 2 PPI 8255, Timer – 8253 Familiarity 1 LAB
Component
8 2 0 Interrupt controller-8259, Usage 1
9 2 2 IC 8251 UART, Data Usage 1
converters (A/D and D/A
Converter),
10 2 2 seven segment display and Usage 1 LAB
keyboard interfacing Component
11 2 4 Introduction to 8087, Usage 1
Architecture,
12 2 Instruction set and ALP 1
Programming
13 1 Introduction to Usage INTEL LAB
Microcontroller- Quark – Galileo Component
SOC processor, Arduino Lab
manual
14 1 4 Programming INTEL Assessment INTEL LAB
Galileo Arduino Boards Galileo Component
using GPIO (LED, LCD, Arduino Lab
Keypad, Motor control and manual
sensor), System design
application and case study.
15 2 Recent trends: Architecture
of one of the advanced
processors, such as
Multicore, Snapdraggon,
ARM processor in ipad.
30 Hours 30 Hours
(2 Credit (2 Credit
hours / hours /
week)
15 Weeks
schedule)

You might also like