Professional Documents
Culture Documents
&
EMBEDDED SYSTEM LAB
1
MICROPROCESSOR AND EMBEDDED SYSTEM LAB
LIST OF EXPERIMENTS
V SEM.(BME)
2. WRITE A PROGRAM USING 8085 & VERIFY FOR ADDITION OF TWO 8-BIT NUMBERS.
4. WRITE A PROGRAM USING 8085 & VERIFY FOR SUBTRACTION OF TWO 8-BIT NUMBERS. (DISPLAY OF
BARROW)
6. WRITE A PROGRAM USING 8085 FOR MULTIPLICATION OF TWO 8-BIT NUMBERS BY REPEATED ADDITION
METHOD CHECK MINIMUM NUMBER OF ADDITION & TEST FOR TYPICAL DATA.
7. WRITE A PROGRAM USING 8085 FOR MULTIPLICATION OF TWO 8-BIT NUMBERS BY BIT ROTATION METHOD &
VERIFY.
8. WRITE A PROGRAM USING 8085 FOR DIVISION OF TWO 8-BIT NUMBERS BY REPEATED SUBTRACTION
9. WRITE A PROGRAM USING 8085 FOR DIVISION OF TWO 8 -BIT NUMBERS BY BIT ROTATION METHOD & TEST
10. WRITE A PROGRAM USING 8085 FOR FINDING SQUARE OF A NUMBER USING LOOK-UP TABLE & VERIFY.
11. WRITE A PROGRAM USING 8085 FOR FINDING SQUARE-ROOT OF A NUMBER.
2
EXPERIMENT NO. 1
AIM: INTRODUCTION TO THE ARCHITECTURE OF MICROPROCESSOR 8085.
THEORY:
The system has got 8085 as the Central Processing Unit. The clock frequency for the system is 3.0/ MHz
and is generated from a crystal of 6.14 MHz. 8085 has got 8 data lines and 16 address lines. The lower 8
address lines and 8 bit data lines are multiplexed. Since the lower 8 address bits appear on the bus during
the first clock cycle of a machine cycle and the 8 bit data appears on the bus during the 2nd and 3rd clock
cycle, it becomes necessary to latch the lower 8 address bits during the first clock cycle so that the 16 bit
address remains available in subsequent cycles. This is achieved using a latch 74-LS373.
MEMORY: 8085 kit provides 8/32K bytes of RAM using 6264/62256 chip and 8K bytes of EPROM for
monitor. There is one memory space provided on kit. This one space can be defined any address slots
from 8000 - DFFF depending upon the size of the memory chip to be used. Total onboard memory can be
extended to 64K bytes.
I/O DEVICES
The various I/O chips used in 8085 microprocessor kit are 8279. 8255 , 8253, & 8155. The functional role
of all these chips is given below:
8279 is a general purpose programmable keyboard and display I/O interface device designed for use with
the 8085 microprocessor. It provides a scanned interface to 28 contact key matrix provided in kit and
scanned interface for the six seven segment displays. 8279 has got 16 x 8 display RAM which can be
loaded or interrogated by the CPU. When a key is pressed, its corresponding code is entered in the FIFO
queue of 8279 and can now be read by the microprocessor. 8279 also refreshes the display RAM
automatically.
8255 is a programmable peripheral interface (PPI) designed to use with 8085 Microprocessor. This
basically acts as a general purpose I/O device to interface peripheral equipments to the system bus. It is
not necessary to have an external logic to interface with peripheral devices since the functional
configuration of 8255 is programmed by the system software. It has got three Input/Output ports of 8 lines
each (PORT-A, PORT-B & PORT-C). Port C can be divided into two ports of 4 lines each named as Port
C upper and Port C lower. Any Input output combination of Port A, Port B, Port C upper and lower) can
be defined using the appropriate software commands. The kit provides 24 Input/Output ports using 8255
chips.
This chip is a programmable interval Timer/Counter and can be used for the generation of accurate time
delays under software control. Various other functions that can be implemented with this chip are
programmable rate generator, Even Counter, Binary rate Multiplier, Real Time Clock etc. This chip has
got three in dependent 16 bit counters each having a count rate of up to 2 KHz. The first Timer/Counter
(i.e. Counter 0) is being used for Single Step operation. However, its connection are also brought at
3
connector space C4. For single step operation CLKO signal of Counter 0 is getting a clock frequency of
1.535 MHz. The counter 1 is. used to generate clock for 8251. Counter 1 & Counter 2 are free for the user.
Clock for the CLK1, CLK2 is to be given externally.
8155 is a programmable I/O ports and timer interface designed to use with 8085 Microprocessor. The
8155 includes 256 bytes of R/W memory, three I/O ports and a Timer. This basically acts as a general
purpose I/O device to interface peripheral equipments to the system bus. It is not necessary to have an
external logic to interface with peripheral devices since the functional configuration of 8155 is
programmed by the system software. It has got two 8-bit parallel I/O port (Port-A, Port-B) and one 6-bit
(Port-C). Ports A & B also can be programmed in the handshake mode, each port using three signals as
handshake signals from Port-C. The timer is a 14 bit down counter and has four modes.
DISPLAY:
The 8085 microprocessor kit provides six digits of seven segment display. Four digits are for displaying
the address of any location or name of any register, whereas the rest of the two digits are meant for
displaying the contents of a memory location or of a register. All the six digits of the display are in
hexadecimal notation
4
EXPERIMENT NO. 2
AIM : WRITE A PROGRAM USING 8085 & VERIFY FOR ADDITION OF TWO 8-BIT NUMBERS
THEORY (Program)
START
END
5
PROCEDURE:-
SCIENTECH(M85 01)
ANSHUMAN Reset
S Exmem
Enter Enter Starting Address
Program Address Next
Write Program Write Program
Execution Steps Execution Steps
Esc Reset
G GO
Enter-enter Starting Address
Prog. Address Fill
Enter Reset
S Exmem
Enter Result Address
Any key-2
Enter-2
Register Name
INPUT DATA
7501- 13H
7502- 12H
OUTPUT DATA
7503- 25H
PRECAUTIONS:-
Make sure that all the machine codes should be as per specified in the program.
6
EXPERIMENT NO. 3
AIM : WRITE A PROGRAM ADDITION OF TWO 16-BIT NUMBERS. (WITH CARRY)
THEORY (Program)
7
CIRCUIT DIAGRAM / BLOCK DIAGRAM:-
START
Exchange DE HL
No
If carry
Yes
Increment reg. C
Move C to A
Store Accumulator
Store HL result
END
PROCEDURE:-
SCIENTECH
ANSHUMAN Reset
S Exmem
Enter Enter Starting Address
Program Address Next
Write Program Write Program
Execution Steps Execution Steps
Esc Reset
G GO
Enter-enter Starting Address
Prog. Address Fill
Enter Reset
S Exmem
Enter Result Address
8
Any key-2
Enter-2
Register Name
INPUT DATA
7601 : 13H
7602 : 31H
7603 : 12H
7604 : 10H
OUTPUT DATA
7500 : 25H
7501 : 41H
7502 : 00H
PRECAUTIONS:-
Make sure that all the machine codes should be as per specified in the program.
9
EXPERIMENT NO. 4
AIM : WRITE A PROGRAM USING 8085 & VERIFY FOR SUBTRACTION OF TWO 8-BIT NUMBERS. (DISPLAY OF
BARROW)
THEORY(Program) :
START
END
10
PROCEDURE:-
SCIENTECH
ANSHUMAN Reset
S Exmem
Enter Enter Starting Address
Program Address Next
Write Program Write Program
Execution Steps Execution Steps
Esc Reset
G GO
Enter-enter Starting Address
Prog. Address Fill
Enter Reset
S Exmem
Enter Result Address
Any key-2
Enter-2
Register Name
INPUT DATA
7501 : 20H
7502 : 10H
OUTPUT DATA
7503 : 10H
PRECAUTIONS:-
Make sure that all the machine codes should be as per specified in the program.
11
EXPERIMENT NO. 5
AIM : WRITE A PROGRAM FOR SUBTRACTION OF TWO 16-BIT NUMBERS. (DISPLAY OF BARROW)
THEORY (Program) :
START
12
END
PROCEDURE:-
SCIENTECH
ANSHUMAN Reset
S Exmem
Enter Enter Starting Address
Program Address Next
Write Program Write Program
Execution Steps Execution Steps
Esc Reset
G GO
Enter-enter Starting Address
Prog. Address Fill
Enter Reset
S Exmem
Enter Result Address
Any key-2
Enter -2
Register Name
INPUT DATA
7501 : 30H
7502 : 40H
7503 : 10H
7504 : 20H
OUTPUT DATA
7505 : 20H
7506 : 20H
PRECAUTIONS:-
Make sure that all the machine codes should be as per specified in the program.
13
EXPERIMENT NO. 6
AIM : WRITE A PROGRAM USING 8085 FOR MULTIPLICATION OF TWO 8-BIT NUMBERS
BY REPEATED ADDITION METHOD CHECK MINIMUM NUMBER OF ADDITION &
TEST FOR TYPICAL DATA
THEORY (Program) :
START
NO
Is Counter
in reg. E=0
Yes
END
14
PROCEDURE:-
SCIENTECH
ANSHUMAN Reset
S Exmem
Enter Enter Starting Address
Program Address Next
Write Program Write Program
Execution Steps Execution Steps
Esc Reset
G GO
Enter-enter Starting Address
Prog. Address Fill
Enter Reset
S Exmem
Enter Result Address
Any key-2
Enter
Name
Register
INPUT DATA
1) Reg.C : 25H
Reg.E : 05H
Reg.B : 00H
OUTPUT DATA
HL pair : 00B9H
PRECAUTIONS:-
Make sure that all the machine codes should be as per specified in the program.
15
EXPERIMENT NO. 7
AIM : WRITE A PROGRAM USING 8085 FOR MULTIPLICATION OF TWO 8-BIT NUMBERS
BY BIT ROTATION METHOD & VERIFY.
THEORY(Program)
16
CIRCUIT DIAGRAM / BLOCK DIAGRAM :-
START
NO IS
Carry from
Multiplier?
YES
Count = Count - 1
NO IS
Count =0?
YES
Store Product
END
17
PROCEDURE:-
SCIENTECH
ANSHUMAN Reset
S Exmem
Enter Enter Starting Address
Program Address Next
Write Program Write Program
Execution Steps Execution Steps
Esc Reset
G GO
Enter-enter Starting Address
Prog. Address Fill
Enter Reset
S Exmem
Enter Result Address
Any key-2
Enter-2
Register Name
INPUT DATA
7501- 25H
7502- 00H
7503- 05H
OUTPUT DATA
7504- B9H
7505- 00H
PRECAUTIONS:-
Make sure that all the machine codes should be as per specified in the program.
18
EXPERIMENT NO. 8
AIM : WRITE A PROGRAM USING 8085 FOR DIVISION OF TWO 8-BIT NUMBERS BY
REPEATED SUBTRACTION METHOD& TEST FOR TYPICAL DATA.
THEORY (Program) :
19
CIRCUIT DIAGRAM / BLOCK DIAGRAM:-
START
NO
IS
Dividend >
Divisor?
YES
Quotient is in reg. C
A= Dividend - Divisor
END
PROCEDURE:-
SCIENTECH
ANSHUMAN Reset
S Exmem
Enter Enter Starting Address
Program Address Next
Write Program Write Program
Execution Steps Execution Steps
Esc Reset
G GO
Enter-enter Starting Address
Prog. Address Fill
Enter Reset
S Exmem
Enter Result Address
Any key-2
Enter-2
Register Name
INPUT DATA
7501- Divisor
7502-Dividend
20
OUTPUT DATA
7503-Remainder
7504-Quotient
PRECAUTIONS:-
Make sure that all the machine codes should be as per specified in the program.
21
EXPERIMENT NO. 9
AIM : WRITE A PROGRAM USING 8085 FOR DIVISION OF TWO 8 -BIT NUMBERS BY BIT
ROTATION METHOD & TEST FOR TYPICAL DATA.
THEORY (Program)
22
CIRCUIT DIAGRAM / BLOCK DIAGRAM:-
START
NO IS MSB
Of Dividend >
Divisor?
YES
Quotient = Quotient + 1
Count = Count - 1
No
IS
Count =0?
YES
Store Product
END
23
PROCEDURE:-
SCIENTECH
ANSHUMAN Reset
S Exmem
Enter Enter Starting Address
Program Address Next
Write Program Write Program
Esc Reset
G GO
Enter-enter Starting Address
Prog. Address Fill
Enter Reset
S Exmem
Enter Result Address
Any key-2
Enter-2
Register Name
INPUT DATA
7501- LSB of dividend
7502- MSB of dividend
7503- Divisor
OUTPUT DATA
7504- Quotient
7505- Remainder
PRECAUTIONS:-
Make sure that all the machine codes should be as per specified in the program.
24
EXPERIMENT NO. 10
AIM : WRITE A PROGRAM USING 8085 FOR FINDING SQUARE OF A NUMBER USING
LOOK-UP TABLE & VERIFY
THEORY(Program) :
LOOK-UP TABLE
Address Square
2600 - 00
2601 - 01
2602 - 04
2603 - 09
2604 - 16
2605 - 25
2606 - 36
2607 - 49
2608 - 64
2609 - 81
START
25
Find the square
END
PROCEDURE:-
SCIENTECH
ANSHUMAN Reset
S Exmem
Enter Enter Starting Address
Program Address Next
Write Program Write Program
Execution Steps Execution Steps
Esc Reset
G GO
Enter-enter Starting Address
Prog. Address Fill
Enter Reset
S Exmem
Enter Result Address
Any key-2
Enter-2
Register Name
INPUT DATA
2500- 07H
OUTPUT DATA
2501- 49H
PRECAUTIONS:-
Make sure that all the machine codes should be as per specified in the program.
26
EXPERIMENT NO. 11
AIM :WRITE A PROGRAM USING 8085 FOR FINDING SQUARE-ROOT OF A NUMBER
THEORY(Program):
27
CIRCUIT DIAGRAM / BLOCK DIAGRAM:-
START
Is YES
remainder=0
Or negative
Store the result
NO
Increment subtraction counter
register END
PROCEDURE:-
SCIENTECH
ANSHUMAN Reset
S Exmem
Enter Enter Starting Address
Program Address Next
Write Program Write Program
Esc Reset
G GO
Enter-enter Starting Address
Prog. Address Fill
Enter Reset
S Exmem
Enter Result Address
Any key-2
Enter
Name
Register
28
INPUT DATA
2500-10H
2501- 00H
OUTPUT DATA
2550- 04H
PRECAUTIONS:-
Make sure that all the machine codes should be as per specified in the program.
29
EXPERIMENT NO.12
AIM : STUDY OF 8086 MICROPROCESSOR KIT.
INTA(Output): Pin no. 24 Interrupt acknowledge. On receiving interrupt signal the processor
issues an interrupt acknowledge signal. It is active LOW.
ALE(Output) : Pin no. 25 Address latch enable. It goes HIGH during T1. The microprocessor
sends this signal to latch the address into the Intel 8282/8283 latch.
DEN(Output) : Pin no. 26 Data enable. When Intel 8286/8287 octal bus transceiver is used this
signal acts as an output enable signal. It is active LOW.
DT/R(Output) : Pin no. 27 Data Transmit/Receive. When Intel 8286/8287 octal bus transceiver is
used this signal controls the direction of data flow through the transceiver. When it is High data are
sent out. When it is LOW data are received.
M/IO(Output) : Pin no. 28.Memory or I/O access. When it is HIGH the CPU wants to access
memory. When it is LOW the CPU wants to access I/O device.
WR (Output) : Pin no. 29. Write. When it is LOW the CPU performs memory or I/O write
Operation.
HLDA (Output) : Pin no. 30.HOLD acknowledge. It is issued by the processor when it receives
HOLD signal. It is active HIGH signal. When HOLD request is removed HLDA goes LOW.
HOLD (Output) : Pin no. 31.Hold. when another device in microcomputer system wants to use
the address and data bus, it sends a HOLD request to CPU through this pin. It is an active HIGH
signal.
30
1 0 Empty the queue
1 1 Subsequent byte from queue
S0,S1,S2(Output) : Pin nos. 26,27,28.status signals. These signals are connected to the bus
controller Intel 8288.The bus controller generates memory and I/O access control signals. Table
for status signals is :
S2 S1 S0
0 0 0 Interrupt acknowledge
0 0 1 Read data from I/O port
0 1 0 Write data into I/O port
0 1 1 Halt
1 0 0 Opcode fetch
1 0 1 Memory read
1 1 0 Memory write
1 1 1 Passive state.
LOCK(Output) : Pin no. 29.It is an active LOW signal. When it is LOW all interrupts are masked
and no HOLD request is granted. In a multiprocessor system all other processors are informed by
this signal that they should not ask the CPU for relinquishing the bus control.
RQ / GT1, RQ / GT0 (Bidirectional) : Pin no. 30,31. Local bus Priority control. Other
processors ask the CPU through these lines to release the local bus. RQ / GT1 has higher priority
than RQ / GT0
U1
16
AD0 15
22 AD1 14
19 READY AD2 13
21 CLK AD3 12
RESET AD4 11
18 AD5 10
INTR AD6 9
AD7 8
AD8 7
AD9 6
AD10 5
AD11 4
AD12 3
AD13 2
AD14 39
AD15 38
A16/S3 37
A17/S4 36
A18/S5 35
A19/S6
34
BHE/S7
26
S0 27
S1 28
31 S2
30 RQ/GT0 32
17 RQ/GT1 RD 29
23 NMI LOCK 25
33 TEST QS0 24
MX QS1
8086
31
The segment registers, instruction pointer and 6-byte instruction queue are associated with the bus
interface unit(BIU)
32
b) Pointer and Index Registers
c) Segment Registers
d) Instruction Registers
e) Status Flags
33
EXPERIMENT NO. 11
AIM : WRITE A PROGRAM USING 8086 FOR ADDITION OF TWO 16 BIT NUMBERS.
THEORY(Program):
START
END
PROCEDURE:-
SCIENTECH
ANSHUMAN Reset
S O
Enter Enter EB/AX
SRC-SEGM Address
Enter Starting Address
Program Address Next
Write Program Write Program
34
Execution Steps Execution Steps
Esc Reset
G GO
Enter-enter Starting Address
SRC-SEGM Add Fill
Enter Reset
Prog. Address O
Enter EB/AX
S
Enter Result Address
Any key-2
Enter-2
Register Name
INPUT DATA
1000-1234(H)
1001-8765(H)
OUTPUT DATA
AX -9999(H)
PRECAUTIONS:-
Make sure that all the machine codes should be as per specified in the program.
35