Top Banner
Room: E3-31 Phone: 03-8921 6726 [email protected] Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller & Assembly Language
60

Room: E3-31 Phone: 03-8921 6726 [email protected] Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Dec 15, 2015

Download

Documents

Mia Crosier
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Room: E3-31

Phone: 03-8921 6726

[email protected]

Associate Professor Dr Masri Ayob

TK 2633Microprocessor & Interfacing

Lecture 1: Microprocessors, Microcontroller & Assembly Language

Page 2: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

22

Course Information

Text books: Gaonkar, R. S. (2002). “Microprocessor architecture, programming,

and application with the 8085”, 5th edition, Prentice Hall. Brey, B. B. (1993). “The 8085A microprocessor software,

programming and architecture”, 2nd edition, Prentice Hall. .

Class: Thursday 8:00am - 10:00am BK6 Thursday 10:00am - 11:00am BK1

Lab: Will be announced

Course website:portal TK2633 (http://www.ftsm.ukm.my/masri/TK2633)portal TK2633 (http://www.ftsm.ukm.my/masri/TK2633)

Page 3: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob – TK6123Prepared by: Dr Masri Ayob – TK612333

Assessment

Lab assignment : 25% Mid Sem: 15% Quiz : 10% Oral Quiz/Class Participation: 5% Attendance: 5% Final Examination : 40%

Warnings:Warnings: Copying assignment/quiz/exam is prohibited. Delay of submission influences on marks.

Page 4: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK212344

Synopsis The microprocessor is a general-purpose programmable

logic device. Understanding the microprocessor concepts is crucial in

understanding the operation of digital computer. This course is an introduction to the basic concept of

microprocessor architecture and operation, programming model, pins configuration and microprocessor interfacing.

The content of the course is divided into three sections: microprocessor architecture, programming and interfacing input/output.

The course is designed around the Intel 8-bit microprocessor (8085A) and its assembly language.

Page 5: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK212355

LEARNING OUTCOME

At the end of the course, student should be: Able to understand the basic operation of

microprocessor. Able to understand the basic concept of microprocessor

architecture and its pins configuration. Able to understand the machine language programs. Able to design and write programs in assembly language. Able to understand the basic concept of microprocessor

input/output interfacing

Page 6: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK212366

Introduction

The majority of people think that computers are some The majority of people think that computers are some kind of complicated device that is impossible to learn and kind of complicated device that is impossible to learn and infinitely intelligent, able to infinitely intelligent, able to thinkthink better than a person. better than a person. The truth is much less glamorous.  The truth is much less glamorous.  

A computer can only do what the programmer has A computer can only do what the programmer has told told it to do, in the form of a it to do, in the form of a programprogram..

A program is just a sequence of very simple commands A program is just a sequence of very simple commands that lead the computer to solve some problem. that lead the computer to solve some problem.

Once the program is written and debugged, the Once the program is written and debugged, the computer can execute the instructions computer can execute the instructions very fastvery fast, and , and always do it the same, every time, without a mistake. always do it the same, every time, without a mistake.

Page 7: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK212377

Introduction Even though the program consists of very simple

instructions, the overall result can be very impressive, due mostly to the speed at which the computer can process the instructions.

Even though each step in the program is very simple, the sequence of instructions, executing at millions of steps per second, can appear to be very complicated, when taken as a whole.

The trick is not to think of it as a whole, but as a series of very simple steps, or commands.

Page 8: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK212388

Introduction

The microprocessor itself is usually a single integrated circuit (IC).

Most microprocessors (MPU), or very small computers, have much the same commands or instructions that they can perform. They vary mostly in the names used to describe each command.

In a typical MPU, there are commands to move data around, do simple math (add, subtract, multiply, and divide), bring data into the micro from the outside world, and send data out of the micro to the outside world. Sounds too simple....right? .

Page 9: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK212399

Microprocessors

The microprocessor is a programmable integrated device that has computing and decision-making capability similar to that of the central processing unit (CPU) of a computer.

The fact that the microprocessor is programmable means it can be instructed to perform given tasks within its capability.

The microprocessor is a clock-driven semiconductor device consisting of electronic logic circuits manufactured by using either a large-scale integration (LSI) or very-large-scale integration (VLSI) technique.

Page 10: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21231010

Microprocessors

A typical MPU has three basic parts inside. They are: the Program Counter (PC) Memory, and Input / Output (I/O).

The Program Counter keeps track of which command is to be executed.

The Memory contains the commands to be executed. The Input / Output handles the transfer of data to and

from the outside world (outside the MPU physical package).

There are many other actual parts inside the MPU, however, we will learn about every single one, one step at a time.

Page 11: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21231111

Microprocessors

Nowadays, the microprocessor is being used in a wide range of products called microprocessor-based products or systems.

The microprocessor can he embedded in a larger system, can be a stand alone unit controlling processes, or it can function as the CPU of a computer called a microcomputer.

Page 12: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21231212

Microprocessors

The microprocessor communicates and operates in the binary numbers 0 and 1, called bits.

Each microprocessor has a fixed set of instructions in the form of binary patterns called a machine language.

It is difficult for humans to communicate in the language of 0 s and 1 s.

Therefore, the binary instructions are given abbreviated names, called mnenomics, which form the assembly language for a given microprocessor.

Page 13: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21231313

Microprocessors

A typical programmable machine can be represented with four components: microprocessor, memory, input, and output.

These four components work together or interact with each other to perform a given task; thus, they comprise a system.

The physical components of this system are called hardware.

A set of instructions written for the microprocessor to perform a task is called a program, and a group of programs is called software.

Page 14: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21231414

Microprocessors

The microprocessor applications are classified The microprocessor applications are classified primarily in two categories: primarily in two categories: reprogrammable systems and reprogrammable systems and embedded systems. embedded systems.

Page 15: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21231515

Microprocessors

In reprogrammable systems, such as In reprogrammable systems, such as microcomputers, the microprocessor is used for microcomputers, the microprocessor is used for computing and data processing. These systems computing and data processing. These systems include:include: general-purpose microprocessors capable of handling general-purpose microprocessors capable of handling

large data, mass storage devices (such as disks and large data, mass storage devices (such as disks and CD-ROMs), and peripherals such as printers; CD-ROMs), and peripherals such as printers;

a personal computer (PC) is a typical illustration. a personal computer (PC) is a typical illustration.

Page 16: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21231616

Microprocessors

In embedded systems, the microprocessor is a In embedded systems, the microprocessor is a part of a final product and is not available for part of a final product and is not available for reprogramming to the end user. Example: reprogramming to the end user. Example: copying machine copying machine washing machine.washing machine. Air-conditionerAir-conditioner Etc.Etc.

Page 17: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21231717

Microprocessor, CPU & Microcontroller

Microprocessor (MPU) - a semiconductor device Microprocessor (MPU) - a semiconductor device (integrated circuit) manufactured by using the (integrated circuit) manufactured by using the LSI technique.LSI technique. It includes the ALU, register arrays, and control It includes the ALU, register arrays, and control

circuits on a single chip.circuits on a single chip. CPU - the central processing unit. CPU - the central processing unit.

The group of circuits that processes data and The group of circuits that processes data and provides control signals and timing. It includes the provides control signals and timing. It includes the arithmetic/logic unit, registers, instruction decoder, arithmetic/logic unit, registers, instruction decoder, and the control unit. and the control unit.

Microcontroller - a device that includes Microcontroller - a device that includes microprocessor, memory, and I/O signal lines on microprocessor, memory, and I/O signal lines on a single chip, fabricated using VLSI technology. a single chip, fabricated using VLSI technology.

Page 18: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21231818

Microprocessor, CPU & Microcontroller

In large computers, a CPU implemented on one In large computers, a CPU implemented on one or more circuit boards performs these computing or more circuit boards performs these computing functions.functions.

The microprocessor is in many ways similar to The microprocessor is in many ways similar to the CPU, but includes all the logic circuitry, the CPU, but includes all the logic circuitry, including the control unit, on one chip. including the control unit, on one chip.

Page 19: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21231919

Traditional block diagram of a computer

Page 20: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21232020

Block diagram of a computer with the microprocessor as a CPU

Page 21: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21232121

Block diagram of a microcontroller

Page 22: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21232222

A Simple Program A program is a sequence or series of very simple A program is a sequence or series of very simple

commands or instructions. commands or instructions. A real world example program might be the problem of A real world example program might be the problem of

crossing a busy street. crossing a busy street. Step 1: Walk up to the traffic lights and stop. Step 1: Walk up to the traffic lights and stop. Step 2: Look at the traffic light. Step 2: Look at the traffic light. Step 3: Is your light green? Step 3: Is your light green? Step 4: If the light is red, goto step 2. (otherwise continue to step Step 4: If the light is red, goto step 2. (otherwise continue to step

5) 5) Step 5: Look to the left. Step 5: Look to the left. Step 6: Are there cars still passing by? Step 6: Are there cars still passing by? Step 7: If yes, goto step 5. (otherwise continue to step 8). Step 7: If yes, goto step 5. (otherwise continue to step 8). Step 8: Look to the right. Step 8: Look to the right. Step 9: Are there cars still passing by? (there shouldn't be any Step 9: Are there cars still passing by? (there shouldn't be any

by now, but, you never know!) by now, but, you never know!) Step 10: If yes, goto step 8. (otherwise continue to step 11) Step 10: If yes, goto step 8. (otherwise continue to step 11) Step 11: Proceed across the street, carefully!! Step 11: Proceed across the street, carefully!! ..

Page 23: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21232323

A Simple Program

Now this may seem childish at first glance, but this is Now this may seem childish at first glance, but this is exactly what you do every time you cross a busy street, exactly what you do every time you cross a busy street, that has a traffic light.that has a traffic light.

This is also exactly how you would tell a MPU to cross This is also exactly how you would tell a MPU to cross the street, if one could. the street, if one could.

This is what I mean by a sequence or series of very This is what I mean by a sequence or series of very simple steps. simple steps.

Taken as a whole, the steps lead you cross a busy Taken as a whole, the steps lead you cross a busy intersection, which, if a computer did it, would seem very intersection, which, if a computer did it, would seem very intelligent.intelligent.

It is intelligence, people are intelligent. A programmer It is intelligence, people are intelligent. A programmer that programmed these steps into a MPU, would impart that programmed these steps into a MPU, would impart that intelligence to the micro.that intelligence to the micro.

The MPU would not, however, in this case, know what to The MPU would not, however, in this case, know what to do when it got to the other side, since we didn't tell it. do when it got to the other side, since we didn't tell it.

Page 24: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21232424

A Simple Program

In a MPU, the problems are different but the logical In a MPU, the problems are different but the logical steps to solve the problem are similar, that is, a series of steps to solve the problem are similar, that is, a series of very simple steps, leading to the solution of a larger very simple steps, leading to the solution of a larger problem. problem.

Also notice that since the steps are numbered, 1 through Also notice that since the steps are numbered, 1 through 11, that is the order in which they're executed. 11, that is the order in which they're executed. The Program Counter (PC), in this case, starting with 1 and The Program Counter (PC), in this case, starting with 1 and

ending with 11, doing what each one says.ending with 11, doing what each one says. The PC automatically advances to the next step, after doing The PC automatically advances to the next step, after doing

what the current step says, unless a what the current step says, unless a branch,branch, or or jumpjump, is , is encountered.encountered.

A branch is an instruction that directs the PC to go to a specific A branch is an instruction that directs the PC to go to a specific step, step, other than the next in the sequenceother than the next in the sequence. .

Page 25: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21232525

A Simple Program

The point of this lesson is to show how a simple set of The point of this lesson is to show how a simple set of instructions can solve a bigger problem.instructions can solve a bigger problem. Taken as a whole, the solution could appear to be more Taken as a whole, the solution could appear to be more

complicated than any of the separate steps it took to solve it. complicated than any of the separate steps it took to solve it. The most difficult problem to be solved in programming a The most difficult problem to be solved in programming a

MPU is to define the problem you are trying to solve. MPU is to define the problem you are trying to solve. Sounds silly but I assure you, it's not.Sounds silly but I assure you, it's not. This is the This is the Logical Thought ProcessLogical Thought Process. . It is having a good understanding of the problem you're trying to It is having a good understanding of the problem you're trying to

solve. solve.

You must You must understandunderstand the information I'm presenting in the information I'm presenting in order to pass the course. Trying to order to pass the course. Trying to rememberremember everything everything does not work at university.does not work at university.

Page 26: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21232626

Decimal, Binary & Hex

The microprocessor operates in binary digits, 0 and 1, The microprocessor operates in binary digits, 0 and 1, also known as bits. also known as bits. Bit is an abbreviation for the term binary digit. Bit is an abbreviation for the term binary digit. These digits are represented in terms of electrical voltages in the These digits are represented in terms of electrical voltages in the

machine: Generally, 0 represents low voltage level, and 1 machine: Generally, 0 represents low voltage level, and 1 represents high voltage level. represents high voltage level.

Each MPU recognises and processes a group of bits Each MPU recognises and processes a group of bits called the word.called the word. A word is a group of bits the computer recognizes and A word is a group of bits the computer recognizes and

processes at a timeprocesses at a time. MPUs are classified according to their word length.MPUs are classified according to their word length.

For example, a processor with an 8-bit word is known as an 8-bit For example, a processor with an 8-bit word is known as an 8-bit microprocessor, and a processor with a 32-bit word is known as microprocessor, and a processor with a 32-bit word is known as a 32-bit microprocessor. a 32-bit microprocessor.

Page 27: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21232727

Decimal, Binary & Hex All numbering systems follow the same rules. All numbering systems follow the same rules. Decimal is Base 10, Binary is Base 2, and Decimal is Base 10, Binary is Base 2, and

Hex(adecimal) is Base 16.Hex(adecimal) is Base 16. The base of a system refers to how many The base of a system refers to how many

possible numbers can be in each digit position. possible numbers can be in each digit position. In decimal, a single digit number is 0 through 9. In decimal, a single digit number is 0 through 9. In binary a single digit number is 0 or 1. In binary a single digit number is 0 or 1. In hex a single digit number is 0 through 9, A,B,C,D,E, In hex a single digit number is 0 through 9, A,B,C,D,E,

and F. and F.

Page 28: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21232828

Decimal, Binary & Hex

General format to represent number:General format to represent number:

N = AN = AnnBBnn + A + An-1n-1BBn-1n-1 +……..+A +……..+A11BB11 + A + A00BB00

Where,Where,

N is numberN is number

B is baseB is base

A is any digit in that base.A is any digit in that base.A binary 10 (one zero) is decimal 2

A decimal 10 is ten

A hex 10 is decimal 16.

Page 29: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21232929

Number Conversion (revision)

Page 30: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21233030

Number Conversion (revision)

Page 31: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21233131

Number Conversion

Convert the binari number 1001 1011 into its hex:Convert the binari number 1001 1011 into its hex: Arrange the binary digits in groups of four:Arrange the binary digits in groups of four:

1001 1011 1001 1011

Convert each group into its equivalent Hex number. Convert each group into its equivalent Hex number.

1001 1011 1001 1011

B9

Page 32: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21233232

Advances in Semiconductor Technology

After the invention of the transistor, integrated After the invention of the transistor, integrated circuits (ICs) appeared on the scene at the end of circuits (ICs) appeared on the scene at the end of the 1950s.the 1950s. an entire circuit consisting of several transistors, an entire circuit consisting of several transistors,

diodes, and resistors could be designed on a single diodes, and resistors could be designed on a single chip.chip.

In the early 1960s, logic gates 7400 series were In the early 1960s, logic gates 7400 series were commonly available as ICs, and the technology of commonly available as ICs, and the technology of integrating the circuits of a logic gate on a single integrating the circuits of a logic gate on a single chip became known as small-scale integration chip became known as small-scale integration (SSI). (SSI).

Page 33: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21233333

Advances in Semiconductor Technology

As semiconductor technology advanced, more As semiconductor technology advanced, more than 100 gates were fabricated on one chip:than 100 gates were fabricated on one chip: medium-scale integration (MSI). medium-scale integration (MSI). Example:a decade counter (7490). Example:a decade counter (7490).

Within a few years, it was possible to fabricate Within a few years, it was possible to fabricate more than 1000 gates on a single chipmore than 1000 gates on a single chip large-scale integration (LSI). large-scale integration (LSI).

Now we are in the era of very-large- scale Now we are in the era of very-large- scale integration (VLSI) and super-large-scale integration (VLSI) and super-large-scale integration (SLSI). integration (SLSI).

The lines of demarcation between these different The lines of demarcation between these different scales of integration are rather ill defined and scales of integration are rather ill defined and arbitrary. arbitrary.

Page 34: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21233434

Historical Perspective

The microprocessor revolution began with a bold The microprocessor revolution began with a bold and innovative approach in logic design pioneered and innovative approach in logic design pioneered by Intel engineer Ted Hoff. by Intel engineer Ted Hoff.

In 1969, Intel was primarily in the business of In 1969, Intel was primarily in the business of designing semiconductor memory.designing semiconductor memory. it introduced a 64-hit bipolar RAM chip that year. it introduced a 64-hit bipolar RAM chip that year.

Page 35: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21233535

Historical Perspective Intel coined the term “microprocessor” and in Intel coined the term “microprocessor” and in

1971 released the first 4-bit microprocessor as the 1971 released the first 4-bit microprocessor as the 4004.4004. It was designed with LSI technology; It was designed with LSI technology; It had 2,300 transistors, 640 bytes of memory-It had 2,300 transistors, 640 bytes of memory-

addressing capacity, and a 108 kHz clock. Thus, the addressing capacity, and a 108 kHz clock. Thus, the microprocessor revolution began with this tiny chip. microprocessor revolution began with this tiny chip.

Gordon Moore, cofounder of Intel Corporation, Gordon Moore, cofounder of Intel Corporation, predicted that the number of transistors per predicted that the number of transistors per integrated circuit would double every 18 months;integrated circuit would double every 18 months; this came to he known as “Moore’s Law.” this came to he known as “Moore’s Law.” Just twenty-five years since the invention of the 4004, Just twenty-five years since the invention of the 4004,

we have processors that are designed with 15 million we have processors that are designed with 15 million transistors, that can address one terabyte (1 X 1transistors, that can address one terabyte (1 X 11212) of ) of memory, and that can operate at 400 MHz to I .5-0Hz memory, and that can operate at 400 MHz to I .5-0Hz frequency (see Table 1.1). frequency (see Table 1.1).

Page 36: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21233636

Page 37: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21233737

Organization of a Microprocessor-Based System

It includes three components:It includes three components: Microprocessor;Microprocessor; I/O (input/output) and I/O (input/output) and memory (read/write memory and read-only memory). memory (read/write memory and read-only memory).

These components are organised around a These components are organised around a common communication path called a common communication path called a busbus..

The entire group of components is also referred to The entire group of components is also referred to as a system or a microcomputer system. as a system or a microcomputer system.

Page 38: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21233838

Page 39: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21233939

Organization of a Microprocessor-Based System

The functions of various components:The functions of various components: The microprocessorThe microprocessor

reads instructions from memory.reads instructions from memory. communicates with all peripherals (memory and 1/Os) using the communicates with all peripherals (memory and 1/Os) using the

system bus.system bus. controls the timing of information flow.controls the timing of information flow. performs the computing tasks specified in a program.performs the computing tasks specified in a program.

The memoryThe memory stores binary information, called instructions and data.stores binary information, called instructions and data. provides the instructions and data to the microprocessor on request.provides the instructions and data to the microprocessor on request. stores results and data for the microprocessor.stores results and data for the microprocessor.

The input deviceThe input device enters data and instructions under the control of a program such as enters data and instructions under the control of a program such as

program.program. The output deviceThe output device

accepts data from the microprocessor as specified in a program.accepts data from the microprocessor as specified in a program. The busThe bus

carries bits between the microprocessor and memory and I/Os. carries bits between the microprocessor and memory and I/Os.

Page 40: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21234040

Microprocessor Instruction Setand Computer Languages

Microprocessors recognize and operate in binary Microprocessors recognize and operate in binary numbers.numbers.

Each microprocessor has its own binary words, meanings, Each microprocessor has its own binary words, meanings, and language. and language.

The words are formed by combining a number of bits for a The words are formed by combining a number of bits for a given machine. given machine. The word (or word length) is defined as the number of bits the The word (or word length) is defined as the number of bits the

microprocessor recognizes and processes at a time. microprocessor recognizes and processes at a time. The word length ranges from 4-bit to 64-bit.The word length ranges from 4-bit to 64-bit.

Another term commonly used to express word length is Another term commonly used to express word length is byte. byte. A byte is defined as a group of eight bits. A byte is defined as a group of eight bits. For example, a 16-bit microprocessor has a word length to two For example, a 16-bit microprocessor has a word length to two

bytes. bytes. The term nibble stands for a group of four bits.The term nibble stands for a group of four bits.

A byte has two nibbles.A byte has two nibbles.

Page 41: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21234141

Microprocessor Instruction Setand Computer Languages

Each machine has its own set of instructions Each machine has its own set of instructions based on the design of its CPU or of its based on the design of its CPU or of its microprocessor. microprocessor.

To communicate with the computer, one must To communicate with the computer, one must give instructions in binary language (machine give instructions in binary language (machine language).language). Difficult for most people to write programs in sets of 0s Difficult for most people to write programs in sets of 0s

and 1s, computer manufacturers have devised English-and 1s, computer manufacturers have devised English-like words to represent the binary instructions of a like words to represent the binary instructions of a machine - assembly language.machine - assembly language.

An assembly language is machine-specific. An assembly language is machine-specific.

Page 42: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21234242

Microprocessor Instruction Setand Computer Languages

The 8085 is a microprocessor with 8-bit word The 8085 is a microprocessor with 8-bit word length: length: its instruction set (or language) is designed by using its instruction set (or language) is designed by using

various combinations of these eight bits. various combinations of these eight bits. 8085 has 74 different instructions - instruction set. 8085 has 74 different instructions - instruction set.

Page 43: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21234343

Microprocessor Instruction Setand Computer Languages

For convenience, the 8085 instructions can be For convenience, the 8085 instructions can be written in hexadecimal code and entered in a written in hexadecimal code and entered in a single-board microcomputer by using Hex keys. single-board microcomputer by using Hex keys. E.g., the binary instruction 0011 1100 E.g., the binary instruction 0011 1100 22 ≡ 3C ≡ 3Ch h .. This instruction can be entered in a single-board This instruction can be entered in a single-board

microcomputer system with a Hex keyboard by microcomputer system with a Hex keyboard by pressing two keys: 3 and C.pressing two keys: 3 and C.

The monitor program of the system translates these The monitor program of the system translates these keys into their equivalent binary pattern. keys into their equivalent binary pattern.

Page 44: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21234444

8085 Assembly Language

Even though the instructions can be written in Even though the instructions can be written in hexadecimal code, it is still difficult to understand hexadecimal code, it is still difficult to understand a program written in hexadecimal numbers.a program written in hexadecimal numbers. Therefore, each manufacturer of a MPU has devised a Therefore, each manufacturer of a MPU has devised a

symbolic code for each instruction, called a symbolic code for each instruction, called a mnemonicmnemonic.. The mnemonic for a particular instruction consists of The mnemonic for a particular instruction consists of

letters that suggest the operation to be performed by letters that suggest the operation to be performed by that instruction.that instruction.

For example, 0011 1100For example, 0011 110022 (3C (3Chh) is represented by the ) is represented by the mnemonic INR A. mnemonic INR A.

Page 45: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21234545

8085 Assembly Language

The complete set of 8085 mnemonics is called the The complete set of 8085 mnemonics is called the 8085 assembly language.8085 assembly language.

A program written in these mnemonics is called A program written in these mnemonics is called an assembly language program.an assembly language program.

Machine language and assembly language are Machine language and assembly language are microprocessor-specific and are both considered microprocessor-specific and are both considered low-level languages. low-level languages.

The machine language is in binary, and the The machine language is in binary, and the assembly language is in English-like words; assembly language is in English-like words; however, the microprocessor understands only however, the microprocessor understands only the binary. the binary.

Page 46: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21234646

8085 Assembly Language

The mnemonics can be written by hand on paper The mnemonics can be written by hand on paper and translated manually in hexadecimal code, and translated manually in hexadecimal code, called called hand assemblyhand assembly..

Or the mnemonics can be written on a computer Or the mnemonics can be written on a computer using a program called an Editor in the ASCII using a program called an Editor in the ASCII code and translated into binary code by using the code and translated into binary code by using the program called an program called an assemblerassembler. .

ASCII—American Standard Code for Information ASCII—American Standard Code for Information Interchange. This is a 7-bit alphanumeric code with 128 Interchange. This is a 7-bit alphanumeric code with 128 combinations. Each combination is assigned to either a combinations. Each combination is assigned to either a letter, decimal digit, a symbol, or a machine command.letter, decimal digit, a symbol, or a machine command.

Page 47: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21234747

Hand Assembly

To manually write and execute an assembly To manually write and execute an assembly language program on a single-board computer, language program on a single-board computer, with a Hex keyboard for input and LEDs for with a Hex keyboard for input and LEDs for output, the following steps are necessary:output, the following steps are necessary: Write the instructions in mnemonics obtained from the Write the instructions in mnemonics obtained from the

instruction set supplied by the manufacturer.instruction set supplied by the manufacturer. Find the hexadecimal machine code for each Find the hexadecimal machine code for each

instruction by searching through the set of instructions.instruction by searching through the set of instructions. Enter (load) the program in the user memory in a Enter (load) the program in the user memory in a

sequential order by using the Hex keyboard as the sequential order by using the Hex keyboard as the input device.input device.

Execute the program by pressing the Execute key. The Execute the program by pressing the Execute key. The answer will be displayed by the LEDs.answer will be displayed by the LEDs.

Page 48: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21234848

Assembler

The hand assembly:The hand assembly: tedious and subject to errors;tedious and subject to errors; suited for small programs.suited for small programs.

Alternative, use assembler:Alternative, use assembler: The assembler is a program that translates the The assembler is a program that translates the

mnemonics entered by the ASCII keyboard into the mnemonics entered by the ASCII keyboard into the corresponding binary machine codes of the corresponding binary machine codes of the microprocessor.microprocessor.

Each microprocessor has its own assembler because Each microprocessor has its own assembler because the mnemonics and machine codes are specific to the the mnemonics and machine codes are specific to the microprocessor being used, and each assembler has microprocessor being used, and each assembler has rules that must be followed by the programmer.rules that must be followed by the programmer.

Page 49: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21234949

High-Level Languages

Programming languages that are intended to be Programming languages that are intended to be machine-independent are called high-level machine-independent are called high-level languages.languages.

These include such languages as BASIC, These include such languages as BASIC, PASCAL, C, C++ and Java, all of which have PASCAL, C, C++ and Java, all of which have certain sets of rules and draw on symbols and certain sets of rules and draw on symbols and conventions from English.conventions from English.

Instructions written in these languages are known Instructions written in these languages are known as statements rather than mnemonics.as statements rather than mnemonics.

Page 50: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21235050

High-Level Languages

How are words in English converted into the How are words in English converted into the binary languages of different microprocessors? binary languages of different microprocessors? Through another program called either a Through another program called either a compilercompiler or an or an

interpreterinterpreter. . These programs accept English-like statements as their These programs accept English-like statements as their

input, called the source code.input, called the source code. The compiler or interpreter then translates the source The compiler or interpreter then translates the source

code into the machine language compatible (object code into the machine language compatible (object code) with the microprocessor being used in the code) with the microprocessor being used in the system.system.

Each microprocessor needs its own compiler or an Each microprocessor needs its own compiler or an interpreter for each high-level language.interpreter for each high-level language.

Page 51: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21235151

High-Level Languages

Compiler - a program that translates English-like Compiler - a program that translates English-like words of a high-level language into the machine words of a high-level language into the machine language of a computer.language of a computer. A compiler reads a given program, called a source A compiler reads a given program, called a source

code, in its entirety and then translates the program into code, in its entirety and then translates the program into the machine language, which is called an object code.the machine language, which is called an object code.

Interpreter - a program that translates the English-Interpreter - a program that translates the English-like statements of a high-level language into the like statements of a high-level language into the machine language of a computer.machine language of a computer. An interpreter translates one statement at a time from a An interpreter translates one statement at a time from a

source code to an object code.source code to an object code. Assembler - a computer program that translates Assembler - a computer program that translates

an assembly language program from mnemonics an assembly language program from mnemonics to the binary machine code of a computer.to the binary machine code of a computer.

Page 52: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21235252

Operating system

Operating system - a set of programs that Operating system - a set of programs that manages interaction between hardware and manages interaction between hardware and software. software. Responsible primarily for storing information on disks Responsible primarily for storing information on disks

and for communication between microprocessor, and for communication between microprocessor, memory, and peripherals.memory, and peripherals.

Page 53: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21235353

OS and its relationship with various hardware components

Page 54: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21235454

Hierarchical relationship between computer hardware and software.

Page 55: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21235555

Single-board microcomputer

Typically, these microcomputers include an 8- or Typically, these microcomputers include an 8- or 16-bit microprocessor, from 256 bytes to 8K bytes 16-bit microprocessor, from 256 bytes to 8K bytes of user memory, a Hex keyboard, and seven-of user memory, a Hex keyboard, and seven-segment LEDs as display.segment LEDs as display.

The interaction between the microprocessor, The interaction between the microprocessor, memory, and I/Os in these small systems is memory, and I/Os in these small systems is managed by a monitor program, which is managed by a monitor program, which is generally small in size, stored in less than 2K generally small in size, stored in less than 2K bytes of ROM.bytes of ROM.

When a single-board microcomputer is turned on, When a single-board microcomputer is turned on, the monitor program is in charge of the system; the monitor program is in charge of the system; it monitors the keyboard inputs, interprets those keys, it monitors the keyboard inputs, interprets those keys,

stores progranis in memory, sends system displays to stores progranis in memory, sends system displays to the LEDs, and enables the execution of the user the LEDs, and enables the execution of the user programs. programs.

Page 56: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21235656

Single-board microcomputer

Monitor program - a program that interprets the Monitor program - a program that interprets the input from a keyboard and converts the input into input from a keyboard and converts the input into its binary equivalent.its binary equivalent. The function of the monitor program in a small system The function of the monitor program in a small system

is similar to that of the operating system in a large is similar to that of the operating system in a large system. system.

Page 57: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21235757

Page 58: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21235858

Application: Microprocessorcontrolled Temperature System (Mcts)

This system is expected:This system is expected: to read the temperature in a room;to read the temperature in a room; display the temperature at a liquid crystal display (LCD) display the temperature at a liquid crystal display (LCD)

panel (described later);panel (described later); turn on a fan if the temperature is above a set point, turn on a fan if the temperature is above a set point,

and and turn on a heater if the temperature is below a set point. turn on a heater if the temperature is below a set point.

Page 59: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21235959

Page 60: Room: E3-31 Phone: 03-8921 6726 masri@ftsm.ukm.my Associate Professor Dr Masri Ayob TK 2633 Microprocessor & Interfacing Lecture 1: Microprocessors, Microcontroller.

Prepared by: Dr Masri Ayob - TK2123Prepared by: Dr Masri Ayob - TK21236060

Thank youQ&A