Sei sulla pagina 1di 46

RTC INTERFACE BOARD

Model No : (VBMB - 015)

Application Manual
Version 2.0

Technical Clarification /Suggestion :


/
Technical Support Division,
Vi Microsystems Pvt. Ltd.,
Plot No :75, Electronics Estate,
Perungudi, Chennai - 600 096, INDIA.
Ph: 91- 44-2496 1842, 91-44-2496 1852
Mail : sales@vimicrosystems.com,
Web : www.vimicrosystem.com

CONTENTS
CHAPTER - 1

INTRODUCTION

Introduction

1- 1

MSM 6242 IC Description

1-1

CHAPTER - 2

7 SEGMENT DISPLAY

7 Segment Display
CHAPTER - 3

2-1
CIRCUIT IMPLEMENTATION

RTC Section

3-1

Display Section

3-1

I/O decoding section

3-1

Jumper Provision

3-2

CHAPTER - 4

SOFTWARE EXAMPLES

Program - 1

Program in 8085

4-1

Program - 2

Program in M51 LCD kit

4-4

Program - 3

Program 3 M51 LED kit

4 - 11

Program - 4

M86/88 LED kit

4 - 16

Program - 5

M86/88 LED kit

4 - 20

Program - 6

M86/88 LCD kit

4 - 23

LIST OF APPENDICES
APPENDIX - A

CIRCUIT DIAGRAM

A-1

APPENDIX - B

COMPONENT LAYOUT

B-1

RTC INTERFACE

VBMB - 015

CHAPTER - 1
1.1

INTRODUCTION

Real time clock / calendar is a peripheral device used in microprocessor based systems for the
purpose of maintaining date and time.
This chapter describes the feature, pin details and functional capabilities of the RTC chip MSM
5832.
1.2

MSM 6242IC

REAL TIME CLOCK GENERATOR


DESCRIPTION
RTC SECTION
The data lines are connected between data bus and data lines of RTC, is used to write the data
into the registers of RTC for seconds, Minutes, Day, Month etc. Four lines of this chip is used
for this purpose.
MSM 6242 is a 4 bit real time clock / calendar manufactured by OKI semiconductors. It comes
in 18-pin DIP plastic package. It requires only +5V DC for its operation.
It is capable of performing 7 function like seconds, minutes, hours, day, day-to-week, month,
year. These functions are software selectable. It supports 12 and 24 hour format.

Vi Microsystems Pvt. Ltd.,

[1-1]

RTC INTERFACE

VBMB - 015

PIN CONFIGURATION

NAME

DESCRIPTION

VDD

+5V Power Supply

WRITE

Data Write Enable

READ

Data Read Enable

A1 - A3

Address input pins used to select internal counters for Read / Write operations.

CS0, CS1

Chip Select

D1 - D3

Bidirectional Data Input / Output Bus

GND

Ground Pin

STD.P

Output pin open drain type. The output data is controlled by the D1 data
content of CE Register. This pin has priority to CS0 and CS1.

XT, XT*

Oscillator pins. 32.768 KHz crystal, capacitor and trimmer condenser for
frequency adjustment connected to these pins.

ALE

This pin enables writing of address data when A = 1 and CS0=0 address data is
latched when ALE = 0. Microcontroller / Microprocessor having an ALE
output should connect to this pin otherwise it should be connected to VDD.

Vi Microsystems Pvt. Ltd.,

[1-2]

RTC INTERFACE

Vi Microsystems Pvt. Ltd.,

VBMB - 015

[1-3]

RTC INTERFACE

Vi Microsystems Pvt. Ltd.,

VBMB - 015

[1-4]

RTC INTERFACE

VBMB - 015

FUNCTIONAL DESCRIPTION F REGISTERS


S 1 , S 10 , MI 1 , MI 10 , H 1 , H 10 , D 1 , D 10 , M 1 , M 10 , Y 1 , Y 10 , W
a)

b)
c)
d)

These are abbreviations for SECOND1, SECOND10, INU E1, INU E10, HOUR1,
HOUR10, DAY1, DAY10, ON H1, ON H10, YEAR1, YEAR10, and WEEK. These
values are in BCD notation.
All registers are logically positive. For example, (S8, S4, S2, S1) = 1001 which means
9 seconds.
If data is written which is out of the clock register data limits, it can result in erroneous
clock data being read back.
P /A , h 20 , h 10 In the mode setting of 24-hour mode, P /A bit is ignored, while in the
setting of 12-hour mode h 20 is to be set. Otherwise it causes a discrepancy. In reading
out the P /A bit in the 24-hour mode, it is continuously read out as 0. In reading out
h20 bit in the 12-hour mode, 0 is written into this bit first, then it is continuously read
out as 0 unless 1 is being written into this bit.

e)

Registers Y1, Y10, and Leap Year. he S 6242B is designed exclusively for the Christian
Era and is capable of identifying a leap year automatically. The result of the setting of
a non-existant day of the month is shown in the following example: If the date February
29 or November 31, 1985, was written, it would be changed automatically to arch
1, or December 1, 1985 at the exact time at which a carry pulse occurs for the day's digit.

f)

The Register W data limits are 0 6.

Vi Microsystems Pvt. Ltd.,

[1-5]

RTC INTERFACE

VBMB - 015

CE REGISTER (Control E Reg ster)


a)

M ASK (D0)

Vi Microsystems Pvt. Ltd.,

This bit controls the S D.P output. When MASK = 1, then


STD.P = 1 (open); when MASK = 0, then STD.P = output
mode.

[1-6]

RTC INTERFACE

Vi Microsystems Pvt. Ltd.,

VBMB - 015

[1-7]

RTC INTERFACE

Vi Microsystems Pvt. Ltd.,

VBMB - 015

[1-8]

RTC INTERFACE

VMB - 015

CHAPTER - 2
SEVEN SEGMENT DISPLAY
7447 is the Binary Coded Decimal (BCD) to seven segment decoder / driver IC. 7447 is used
to drive the seven segment LEDs. In RTC interface board four numbers of seven segment LEDs
are used to display the time or date.
7447 accepts BCD inputs and converts into 7 segment codes. 7447 features, active low output
for driving common anode LEDs. Its inputs and outputs are entirely compatible for use with TTL
logic outputs. Pin configuration of 7447 is given in figure below The truth table for 7447 is
given in table below.

Vi Microsystems Pvt. Ltd.,

[2-1]

RTC INTERFACE

DECIMAL
OR
FUNCTION

VMB - 015

INPUTS

B1/RB0
*
8 4 2 1

OUTPUTS

NOTE

LT*

RBI*

A B C D E F G

0
1
2
3

H
H
H
H

H
X
X
X

L
L
L
L

L
L
L
L

L
L
H
H

L
H
L
H

H
H
H
H

L
H
L
L

L L
L L
L H
L L

L
H
L
L

L
H
L
H

L
H
H
H

H
H
L
L

4
5
6
7

H
H
H
H

X
X
X
X

L
L
L
L

H
H
H
H

L
L
H
H

L
H
L
H

H
H
H
H

H
L
H
L

L
H
H
L

H
L
L
H

H L
H L
L L
H H

L
L
L
H

8
9
10
11

H
H
H
H

X
X
X
X

H
H
H
H

L
L
L
L

L
L
H
H

L
H
L
H

H
H
H
H

L
L
H
H

L L L
L L H
HH L
H L L

L L
H L
L H
HH

L
L
L
L

12
13
14
15

H
H
H
H

X
X
X
X

H
H
H
H

H
H
H
H

L L
L H
H L
HH

H
H
H
H

H
L
H
H

L
H
H
H

H L
H L
L L
H H

L
L
L
H

BI
RBI
LT

X
H
L

X
L
X

X X X X
L L L L
X X X X

L
L
H

H H H H H H H
H H H H H H H
L L L L L L L

L
L
L
L

H
H
H
H

H
L
L
H

2
3
4

The following are the important points to be noted while designing circuit with 7447 BCD to
7 segment counter.
1.

The blanking input (BI*) must be open or held at a high logic level when output
functions 0 through 15 are desired. The ripple blanking input RBI must be open or
high, if blanking of a decimal zero is not desired.

2.

When a low logic level is applied directly to the blanking input (BI*), all segment
output are off regardless of the level of any other input.

3.

When ripple blanking input (RBI*) and inputs 1, 2, 4 and 8 are at a low level with the
Lamp Test (LT) input high, all segment outputs go off and the ripple blanking output,
(RBO) goes at low level (Response condition).

4.

When the blanking input / ripple - blanking output (BI / RBO) is open or held high
and a low is applied to the lamp -test input, all segment outputs are on.

Vi Microsystems Pvt. Ltd.,

[2-2]

RTC INTERFACE

VMB - 015

SEVEN SEGMENT DISPLAY


We have used TIL 312 common anode, red LED seven segment display to display the date
and time in the RTC module. The pin configuration of the seven segment display is shown in
the figure below.

Seven Segment Display Pin Configuration

Vi Microsystems Pvt. Ltd.,

[2-3]

RTC INTERFACE

VBMB - 015

CHAPTER - 3
CIRCUIT IMPLEMENTATION
The RTC board circuitry is basically divided into two section viz., RTC section and Display
section. Circuit Diagram is presented at Appendix-A.
3.1

RTC SECTION

This section consist of 74LS273 (U4), and MSM5852 (U1).


74LS273 is an octal D-type Flip-flops used for the purpose of setting address HOLD, READ,
WRITE inputs to the RTC. Its inputs are directly connected to CPUs data bus.
74LS244, an octal buffer / line driver is used for reading the output of RTC. Input of 74LS244
is connected to D3 - D0 lines of RTC and its output is connected to CPUs data bus.
74LS374, an octal D-type flip flop is connected between data bus and data lines of RTC, is used
to write the data into the registers of RTC for seconds, minutes, day , month etc. four lines of
this chip is used for this purpose, one line for actuating "dp" line of 7 segment displays. The
remaining 3 lines are connected to LEDs.
3.2

DISPLAY SECTION

This section comprises of 7447 (U1), six numbers of 74LS273, six number of seven segment
LED display (U2 to U7).
The 7447, BCD to seven segment decoder/ driver, is always selected in this circuit. The outputs
(a, b, c.....) respond with the BCD inputs A,B,C,D which is connected to RD0, RD1, RD2, RD3
respectively. So, far each and every input to the RTC, the 7447 outputs equivalent seven segment
code for driving the LED display.
The output of 7447 is connected to inputs of all the six 74LS273. The output of 74LS273 are
connected to seven segment LED displays. Particular display can be selected by selecting
appropriate IC. The address information can be had from I/O decoding section.
3.3

I/O DECODING SECTION

This section consist of 74LS138 a 3 - to -8 decoder. 74Ls00, a quad two input NAND gate.
Address lines A4, A5 are given to A, B, C inputs of 74LS138 respectively. IOR and IOW
signals and NANed and the output is connected to G1 input of 74LS138, and the line A5 is
connected to G2A pins of 74LS138.

Vi Microsystems Pvt. Ltd.,

[3-1]

RTC INTERFACE

VBMB - 015

of these A, B, C are input,


G1
G2A, G2B

Active high control input


Active low control input

So 74LS138 will decode the inputs only when,


1
X

1
-

Donts care

With the above configuration for address inputs, the various Ics in the circuit can be selected with
the addresses as below.
CS0
CS1
138SEL
273SEL1
273SEL2
273SEL3
273SEL4
273SEL5
273SEL6
3.4

C0
D0
E0
E0
E1
E2
E3
E4
E5

JUMPER PROVISION

Information from the RTC such a date and time can be read by the CPU using the buffer
74LS244. The board also has provision for interrupt based transfer. The outputs of RTC (D3 D0) can be connected to any of the interrupt lines through the jumpers J2 and J3.

Vi Microsystems Pvt. Ltd.,

[3-2]

RTC INTERFACE

VBMB - 015

CHAPTER - 4
SOFTWARE EXAMPLES
PROGRAM - 1 -

8085 Assembly Language Examples

AIM
To set and read the time and display the time in RTC interface board & Micro - 85 EB LED kit.
THEORY
The RTC has 13 numbers of 4 bit registers to store hours, minutes, seconds, date and so on. To
initialise the RTC, the user has to select the particular register by writing the register number in
the address port and then write the data for that particular register in the data port. The same
procedure is to be repeated to read the current date and time.
PROCEDURE
4100
4100
4100
4102
4104
4106
4108
410B
410C
410E
410F
4110
4112
4113
4114
4116
4117
4118
411A
411B
411C
411E
411F
4120
4122

ORG
START:
3E 05
MVI
D3 DE
OUT
3E 04
MVI
D3 DE
OUT
21 00 45
LXI
7E
MOV
D3 C0
OUT
23
INX
7E
MOV
D3 D0
OUT
23
INX
7E
MOV
D3 C2
OUT
23
INX
7E
MOV
D3 D2
OUT
23
INX
7E
MOV
D3 C4
OUT
23
INX
7E
MOV
D3 D4
OUT
L1:

Vi Microsystems Pvt. Ltd.,

4100H
A,05H
0CFH
A,04H
0CFH
H,4500H
A,M
0C0H
H
A,M
0D0H
H
A,M
0C2H
H
A,M
0D2H
H
A,M
0C4H
H
A,M
0D4H

;SET THE 12 HOURS FORMAT & RST=1


;SET THE 12 HOURS FORMAT & RST=0

;SET THE 10TH DIGIT OF SECONDS

;SET THE 100TH DIGIT OF SECONDS

;SET THE 10TH DIGIT OF MINUTES

;SET THE 100TH DIGIT OF MINUTES

;SET THE 10TH DIGIT OF HOURS

;SET THE 100TH DIGIT OF HOURS

[4-1]

RTC INTERFACE
4122
4125
4127
4129
412A
412B
412D
412F
4130
4131
4133
4135
4136
4137
4139
413B
413C
413D
413F
4141
4142
4143
4145
4147
4148
4148
414B
414C
414E
414F
4150
4152
4153
4154
4156
4157
4158
415A
415B
415C
415E
415F
4160
4162
4162

21 00 50
DB D4
E6 0F
77
23
DB C4
E6 0F
77
23
DB D2
E6 0F
77
23
DB C2
E6 0F
77
23
DB D0
E6 0F
77
23
DB C0
E6 0F
77

LXI H,5000H
IN
0D4H
ANI 0FH
MOV M,A
INX H
IN
0C4H
ANI 0FH
MOV M,A
INX H
IN
0D2H
ANI 0FH
MOV M,A
INX H
IN
0C2H
ANI 0FH
MOV M,A
INX H
IN
0D0H
ANI 0FH
MOV M,A
INX H
IN
0C0H
ANI 0FH
MOV M,A
OUT_CHECK:
21 00 50
LXI H,5000H
7E
MOV A,M
D3 E0
OUT 0E0H
23
INX H
7E
MOV A,M
D3 F0
OUT 0F0
23
INX H
7E
MOV A,M
D3 E2
OUT 0E2H
23
INX H
7E
MOV A,M
D3 F2
OUT 0F2
23
INX H
7E
MOV A,M
D3 E4
OUT E4H
23
INX H
7E
MOV A,M
D3 F4
OUT 0F4
OUT_DIS:
21 00 50
LXI H,5000H

Vi Microsystems Pvt. Ltd.,

VBMB - 015
;STORE TIME IN MEMORY LOCATION
;READ THE 100TH DIGIT OF HOURS

;READ THE 10TH DIGIT OF HOURS

;READ THE 100TH DIGIT OF MINUTES

;READ THE 10TH DIGIT OF MINUTES

;READ THE 100TH DIGIT OF SECONDS

;READ THE 10TH DIGIT OF SECONDS

;DISPLAY IN FIRST LED DISPLAY

;DISPLAY IN SECOND LED DISPLAY

;DISPLAY IN THIRD LED DISPLAY

;DISPLAY IN FOURTH LED DISPLAY

;DISPLAY IN FIFTH LED DISPLAY

;DISPLAY IN SIXTH LED DISPLAY


;TO DISPLAY IN KIT,ADDRESS

[4-2]

RTC INTERFACE
4165
4167
4169
416C
416F
4171
4173
4176
4179
417A

3E 03
0E 09
CD 05 00
21 04 50
3E 03
0E 08
CD 05 00
C3 22 41
76

Vi Microsystems Pvt. Ltd.,

VBMB - 015
MVI
MVI
CALL
LXI
MVI
MVI
CALL
JMP
HLT
END

A,003H ;SEGMENT
C,009H
005H
H,5004H
A,003H
C,008H ;TO DISPLAY IN KIT,DATA
005H
;SEGMENT
L1

[4-3]

RTC INTERFACE

VBMB - 015

PROGRAM - 2 Microcontroller Assembly Language


AIM
To set and read the time and display the time in RTC interface board & Micro-51 EB LCD kit.
4100
ORG
FF04
DEN
EQU
0004
DENL EQU
FF08
LATCH EQU
0008
LATCHLEQU
00FF
IOHIGH EQU
4100
START:
4100 7405
MOV
4102 90FFCF
MOV

4100H
0FF04H
04H
0FF08H
08H
0FFH

4105 F0
4106 7404

MOVX
MOV

@DPTR,A
A,#04H

4108 90FFCF
410B F0
410C 904500
410F E0
4110 C083
4112 C082
4114 90FFC0

MOV
MOVX
MOV
MOVX
PUSH
PUSH
MOV

DPTR,#0FFCFH
@DPTR,A
DPTR,#4500H
A,@DPTR
DPH
DPL
DPTR,#0FFC0H

4117 F0
4118 D082
411A D083
411C A3
411D E0
411E C083
4120 C082
4122 90FFD0

MOVX
POP
POP
INC
MOVX
PUSH
PUSH
MOV

@DPTR,A
DPL
DPH
DPTR
A,@DPTR
DPH
DPL
DPTR,#0FFD0H

4125 F0
4126 D082
4128 D083
412A A3
412B E0
412C C083
412E C082
4130 90FFC2

MOVX @DPTR,A
POP
DPL
POP
DPH
INC
DPTR
MOVX A,@DPTR
PUSH DPH
PUSH DPL
MOV
DPTR,#0FFC2H

Vi Microsystems Pvt. Ltd.,

A,#05H
DPTR,#0FFCFH

;TO SET 12 HOUR FORMAT


AND RST=1
;TO SET 12 HOUR FORMAT
AND RST=0

;S E T T HE 1 0 T H DI GI T OF
SECOND

;SET THE 100TH DIGIT OF


SECOND

;S E T T HE 10T H DI G I T OF
MINUTE

[4-4]

RTC INTERFACE

VBMB - 015

4133 F0
4134 D082
4136 D083
4138 A3
4139 E0
413A C083
413C C082
413E 90FFD2

MOVX
POP
POP
INC
MOVX
PUSH
PUSH
MOV

@DPTR,A
DPL
DPH
DPTR
A,@DPTR
DPH
DPL
DPTR,#0FFD2H

4141 F0
4142 D082
4144 D083
4146 A3
4147 E0
4148 C083
414A C082
414C 90FFC4
414F F0
4150 D082
4152 D083
4154 A3
4155 E0
4156 90FFD4
4159 F0
415A
415A 90FFD4

MOVX
POP
POP
INC
MOVX
PUSH
PUSH
MOV
MOVX
POP
POP
INC
MOVX
MOV
MOVX

@DPTR,A
DPL
DPH
DPTR
A,@DPTR
DPH
DPL
DPTR,#0FFC4H
@DPTR,A
DPL
DPH
DPTR
A,@DPTR
DPTR,#0FFD4H
@DPTR,A

MOV

DPTR,#0FFD4H

415D E0
415E 540F
4160 905000
4163 F0
4164 A3
4165 C083
4167 C082
4169 90FFC4

MOVX
ANL
MOV
MOVX
INC
PUSH
PUSH
MOV

A,@DPTR
A,#0FH
DPTR,#5000H
@DPTR,A
DPTR
DPH
DPL
DPTR,#0FFC4H

416C E0
416D 540F
416F D082
4171 D083
4173 F0
4174 A3
4175 C083
4177 C082

MOVX
ANL
POP
POP
MOVX
INC
PUSH
PUSH

A,@DPTR
A,#0FH
DPL
DPH
@DPTR,A
DPTR
DPH
DPL

;SET THE 100TH DIGIT OF


MINUTE

;SET THE 10TH DIGIT OF HOUR

;SET THE 100TH DIGIT OF HOUR

L1:

Vi Microsystems Pvt. Ltd.,

;READ THE 100TH DIGIT OF


HOUR

;READ THE 10TH DIGIT OF


HOUR

[4-5]

RTC INTERFACE

VBMB - 015

4179 90FFD2

MOV

DPTR,#0FFD2H

417C E0
417D 540F
417F D082
4181 D083
4183 F0
4184 A3
4185 C083
4187 C082
4189 90FFC2

MOVX
ANL
POP
POP
MOVX
INC
PUSH
PUSH
MOV

A,@DPTR
A,#0FH
DPL
DPH
@DPTR,A
DPTR
DPH
DPL
DPTR,#0FFC2H

418C E0
418D 540F
418F D082
4191 D083
4193 F0
4194 A3
4195 C083
4197 C082
4199 90FFD0

MOVX
ANL
POP
POP
MOVX
INC
PUSH
PUSH
MOV

A,@DPTR
A,#0FH
DPL
DPH
@DPTR,A
DPTR
DPH
DPL
DPTR,#0FFD0H

419C E0
419D 540F
419F D082
41A1 D083
41A3 F0
41A4 A3
41A5 C083
41A7 C082
41A9 90FFC0

MOVX
ANL
POP
POP
MOVX
INC
PUSH
PUSH
MOV

A,@DPTR
A,#0FH
DPL
DPH
@DPTR,A
DPTR
DPH
DPL
DPTR,#0FFC0H

41AC E0
MOVX
41AD 540F
ANL
41AF D082
POP
41B1 D083
POP
41B3 F0
MOVX
41B4
OUT_CHECK:
41B4 905000
MOV
41B7 E0
MOVX
41B8 90FFE0
MOV
41BB F0
MOVX
41BC 905001
MOV
41BF E0
MOVX
41C0 90FFF0
MOV

Vi Microsystems Pvt. Ltd.,

;READ THE 100TH DIGIT OF


MINUTE

;READ THE 10TH DIGIT OF


MINUTE

;READ THE 100TH DIGIT OF


SECOND

;READ THE 10TH DIGIT OF


SECOND

A,@DPTR
A,#0FH
DPL
DPH
@DPTR,A
DPTR,#5000H
A,@DPTR
DPTR,#0FFE0H
@DPTR,A
DPTR,#5001H
A,@DPTR
DPTR,#0FFF0H

;TO DISPLAY IN FIRST LED

;TO DISPLAY IN SECOND LED

[4-6]

RTC INTERFACE
41C3 F0
MOVX
41C4 905002
MOV
41C7 E0
MOVX
41C8 90FFE2
MOV
41CB F0
MOVX
41CC 905003
MOV
41CF E0
MOVX
41D0 90FFF2
MOV
41D3 F0
MOVX
41D4 905004
MOV
41D7 E0
MOVX
41D8 90FFE4
MOV
41DB F0
MOVX
41DC 905005
MOV
41DF E0
MOVX
41E0 90FFF4
MOV
41E3 F0
MOVX
41E4
INIT:
41E4 12423A
LCALL
41E7 90FF04
MOV
41EA 7438
MOV
41EC F0
MOVX
41ED 12423A
LCALL
41F0 7401
MOV
41F2 F0
MOVX
41F3 12423A
LCALL
41F6 7406
MOV
41F8 F0
MOVX
41F9 12423A
LCALL
41FC 740F
MOV
41FE F0
MOVX
41FF 12423A
LCALL
4202 7480
MOV
4204 F0
MOVX
4205
TIMEDIS:
4205 9042B8
MOV
4208 7A05
MOV
420A
EXTRA:
420A 12423A
LCALL
420D 7401
MOV
420F 75A0FF
MOV
4212 F2
MOVX
4213 E0
MOVX
4214 75A0FF
MOV
4217 F3
MOVX

Vi Microsystems Pvt. Ltd.,

VBMB - 015
@DPTR,A
DPTR,#5002H
A,@DPTR
DPTR,#0FFE2H
@DPTR,A
DPTR,#5003H
A,@DPTR
DPTR,#0FFF2H
@DPTR,A
DPTR,#5004H
A,@DPTR
DPTR,#0FFE4H
@DPTR,A
DPTR,#5005H
A,@DPTR
DPTR,#0FFF4H
@DPTR,A
BSYCHK
DPTR,#DEN
A,#38H
@DPTR,A
BSYCHK
A,#01H
@DPTR,A
BSYCHK
A,#06H
@DPTR,A
BSYCHK
A,#0FH
@DPTR,A
BSYCHK
A,#80H
@DPTR,A
DPTR,#LOOKUP
R2,#05H
BSYCHK
A,#01H
P2,#IOHIGH
@R0,A
A,@DPTR
P2,#IOHIGH
@R1,A

;TO DISPLAY IN THIRD LED

;TO DISPLAY IN FOURTH LED

;TO DISPLAY IN FIFTH LED

;TO DISPLAY IN SIXTH LED

;FUNCTION SET

;CLEAR DISPLAY

;ENTRY MODE SET

;DISPLAY CONTROL

;SET DDRAM ADDRESS

;GET TIME DATA

;RS=1,R/W=0

[4-7]

RTC INTERFACE
4218 A3
4219 DAEF
421B 124253

VBMB - 015
INC
DJNZ
LCALL

421E 905010
MOV
4221 7A08
MOV
4223
MORE:
4223 12423A
LCALL
4226 7401
MOV
4228 75A0FF
MOV
422B F2
MOVX
422C E0
MOVX
422D 75A0FF
MOV
4230 F3
MOVX
4231 A3
INC
4232 DAEF
DJNZ
4234 1242AF
LCALL
4237 02415A
LJMP
423A
BSYCHK:
423A 7904
MOV
423C 7808
MOV
423E 75A0FF
MOV
4241 7402
MOV
4243 F2
MOVX
4244
BSY:
4244 75A0FF
MOV
4247 E3
MOVX
4248 5480
ANL
424A 70F8
JNZ
424C 75A0FF
MOV
424F 7400
MOV
4251 F2
MOVX
4252 22
RET
4253
COUNTER:
4253 905000
MOV
4256 7C10
MOV
4258 7B50
MOV
425A E0
MOVX
425B 2430
ADD
425D 8B83
MOV
425F 8C82
MOV
4261 F0
MOVX
4262 0C
INC
4263 905001
MOV
4266 E0
MOVX

Vi Microsystems Pvt. Ltd.,

DPTR
R2,EXTRA
COUNTER

;HEX TO ASCII CONVERSION


ROUTINE

DPTR,#5010H
R2,#08H
BSYCHK
A,#01H
P2,#IOHIGH
@R0,A
A,@DPTR
P2,#IOHIGH
@R1,A
DPTR
R2,MORE
DELAY
L1
R1,#DENL
R0,#LATCHL
P2,#IOHIGH
A,#02H
@R0,A
P2,#IOHIGH
A,@R1
A,#80H
BSY
P2,#IOHIGH
A,#00H
@R0,A

DPTR,#5000H
R4,#10H
R3,#50H
A,@DPTR
A,#30H
DPH,R3
DPL,R4
@DPTR,A
R4
DPTR,#5001H
A,@DPTR

;RS=1,R/W=0

;WRITE DATA TO DDRAM

;RS=0,R/W=1

;CHECK BUSY FLAG

;RS=0,R/W=0

;ADD HEX VALUE WITH 30

[4-8]

RTC INTERFACE
4267 2430
ADD
4269 8B83
MOV
426B 8C82
MOV
426D F0
MOVX
426E 0C
INC
426F 743A
MOV
4271 8B83
MOV
4273 8C82
MOV
4275 F0
MOVX
4276 0C
INC
4277 905002
MOV
427A E0
MOVX
427B 2430
ADD
427D 8B83
MOV
427F 8C82
MOV
4281 F0
MOVX
4282 0C
INC
4283 905003
MOV
4286 E0
MOVX
4287 2430
ADD
4289 8B83
MOV
428B 8C82
MOV
428D F0
MOVX
428E 0C
INC
428F 743A
MOV
4291 8B83
MOV
4293 8C82
MOV
4295 F0
MOVX
4296 0C
INC
4297 905004
MOV
429A E0
MOVX
429B 2430
ADD
429D 8B83
MOV
429F 8C82
MOV
42A1 F0
MOVX
42A2 0C
INC
42A3 905005
MOV
42A6 E0
MOVX
42A7 2430
ADD
42A9 8B83
MOV
42AB 8C82
MOV
42AD F0
MOVX
42AE 22
RET
42AF
DELAY:
42AF 7F22
MOV

Vi Microsystems Pvt. Ltd.,

VBMB - 015
A,#30H
DPH,R3
DPL,R4
@DPTR,A
R4
A,#3AH
DPH,R3
DPL,R4
@DPTR,A
R4
DPTR,#5002H
A,@DPTR
A,#30H
DPH,R3
DPL,R4
@DPTR,A
R4
DPTR,#5003H
A,@DPTR
A,#30H
DPH,R3
DPL,R4
@DPTR,A
R4
A,#3AH
DPH,R3
DPL,R4
@DPTR,A
R4
DPTR,#5004H
A,@DPTR
A,#30H
DPH,R3
DPL,R4
@DPTR,A
R4
DPTR,#5005H
A,@DPTR
A,#30H
DPH,R3
DPL,R4
@DPTR,A

;TO OUT SEMICOLON

;TO OUT SEMICOLON

R7,#22H

[4-9]

RTC INTERFACE
42B1
CNTUE:
42B1 7EFF
MOV
42B3
REPT:
42B3 DEFE
DJNZ
42B5 DFFA
DJNZ
42B7 22
RET
42B8 54494D45 LOOKUP:
42BC 3A
END

Vi Microsystems Pvt. Ltd.,

VBMB - 015
;DELAY FOR LCD DISPLAY
R6,#0FFH
R6,REPT
R7,CNTUE
DB

54H,49H,4DH,45H,2DH

[ 4 - 10 ]

RTC INTERFACE

VBMB - 015

PROGRAM - 3
AIM
To set and read the time and display the time in RTC interface board and 51EB LED kit.
4100
4100
4100

ORG

4100H

7405

MOV

A,#05H

4102
4105
4106

90FFCF
F0
7404

MOV
MOVX
MOV

DPTR,#0FFCFH
@DPTR,A
A,#04H

4108
410B
410C
410F
4110
4112
4114
4117
4118
411A
411C
411D
411E
4120
4122
4125
4126
4128
412A
412B
412C
412E
4130
4133
4134
4136
4138
4139
413A
413C
413E

90FFCF
F0
904500
E0
C083
C082
90FFC0
F0
D082
D083
A3
E0
C083
C082
90FFD0
F0
D082
D083
A3
E0
C083
C082
90FFC2
F0
D082
D083
A3
E0
C083
C082
90FFD2

MOV
MOVX
MOV
MOVX
PUSH
PUSH
MOV
MOVX
POP
POP
INC
MOVX
PUSH
PUSH
MOV
MOVX
POP
POP
INC
MOVX
PUSH
PUSH
MOV
MOVX
POP
POP
INC
MOVX
PUSH
PUSH
MOV

DPTR,#0FFCFH
@DPTR,A
DPTR,#4500H
A,@DPTR
DPH
DPL
DPTR,#0FFC0H
@DPTR,A
DPL
DPH
DPTR
A,@DPTR
DPH
DPL
DPTR,#0FFD0H
@DPTR,A
DPL
DPH
DPTR
A,@DPTR
DPH
DPL
DPTR,#0FFC2H
@DPTR,A
DPL
DPH
DPTR
A,@DPTR
DPH
DPL
DPTR,#0FFD2H

START:

Vi Microsystems Pvt. Ltd.,

;TO SET 12HRS FORMAT


AND RST=1

;TO SET 12HRS FORMAT


AND RST=0

;TO SET LSB OF SECOND

;TO SET MSB OF SECOND

;TO SET LSB OF MINUTE

;TO SET MSB OF MINUTE

[ 4 - 11 ]

RTC INTERFACE
4141
4142
4144
4146
4147
4148
414A
414C
414F
4150
4152
4154
4155
4156
4159
415A
415A
415D
415E
4160

F0
D082
D083
A3
E0
C083
C082
90FFC4
F0
D082
D083
A3
E0
90FFD4
F0

4163
4164
4165
4167
4169
416C
416D
416F
4171
4173
4174
4175
4177
4179
417C
417D
417F
4181
4183
4184
4185
4187
4189
418C

VBMB - 015
MOVX
POP
POP
INC
MOVX
PUSH
PUSH
MOV
MOVX
POP
POP
INC
MOVX
MOV
MOVX

@DPTR,A
DPL
DPH
DPTR
A,@DPTR
DPH
DPL
DPTR,#0FFC4H
@DPTR,A
DPL
DPH
DPTR
A,@DPTR
DPTR,#0FFD4H
@DPTR,A

90FFD4
E0
540F
905000

MOV
MOVX
ANL
MOV

DPTR,#0FFD4H
A,@DPTR
A,#0FH
DPTR,#5000H

F0
A3
C083
C082
90FFC4
E0
540F
D082
D083
F0
A3
C083
C082
90FFD2
E0
540F
D082
D083
F0
A3
C083
C082
90FFC2
E0

MOVX
INC
PUSH
PUSH
MOV
MOVX
ANL
POP
POP
MOVX
INC
PUSH
PUSH
MOV
MOVX
ANL
POP DPL
POP DPH
MOVX
INC
PUSH
PUSH
MOV
MOVX

@DPTR,A
DPTR
DPH
DPLfs
DPTR,#0FFC4H
A,@DPTR
A,#0FH
DPL
DPH
@DPTR,A
DPTR
DPH
DPL
DPTR,#0FFD2H
A,@DPTR
A,#0FH

;TO SET LSB OF HOUR

;TO SET MSB OF HOUR

L1:

Vi Microsystems Pvt. Ltd.,

@DPTR,A
DPTR
DPH
DPL
DPTR,#0FFC2H
A,@DPTR

;TO READ MSB OF HOUR

;TO STORE TIME IN


MEMORY

;TO READ LSB OF HOUR

;TO READ MSB OF MINUTE

;TO READ LSB OF MINUTE

[ 4 - 12 ]

RTC INTERFACE
418D
418F
4191
4193
4194
4195
4197
4199
419C
419D
419F
41A1
41A3
41A4
41A5
41A7
41A9
41AC
41AD
41AF
41B1
41B3
41B4
41B4
41B7
41B8
41BB
41BC
41BF
41C0
41C3
41C4
41C7
41C8

540F
D082
D083
F0
A3
C083
C082
90FFD0
E0
540F
D082
D083
F0
A3
C083
C082
90FFC0
E0
540F
D082
D083
F0

41CB
41CC
41CF
41D0

VBMB - 015
A,#0FH
DPL
DPH
@DPTR,A
DPTR
DPH
DPL
DPTR,#0FFD0H
A,@DPTR
A,#0FH
DPL
DPH
@DPTR,A
DPTR
DPH
DPL
DPTR,#0FFC0H
A,@DPTR
A,#0FH
DPL
DPH
@DPTR,A

905000
E0
90FFE0
F0
905001
E0
90FFF0
F0
905002
E0
90FFE2

ANL
POP
POP
MOVX
INC
PUSH
PUSH
MOV
MOVX
ANL
POP
POP
MOVX
INC
PUSH
PUSH
MOV
MOVX
ANL
POP
POP
MOVX
OUT_CHECK:
MOV
MOVX
MOV
MOVX
MOV
MOVX
MOV
MOVX
MOV
MOVX
MOV

F0
905003
E0
90FFF2

MOVX
MOV
MOVX
MOV

@DPTR,A
DPTR,#5003H
A,@DPTR
DPTR,#0FFF2H

41D3 F0
41D4 905004
41D7 E0

MOVX
MOV
MOVX

@DPTR,A
DPTR,#5004H
A,@DPTR

Vi Microsystems Pvt. Ltd.,

DPTR,#5000H
A,@DPTR
DPTR,#0FFE0H
@DPTR,A
DPTR,#5001H
A,@DPTR
DPTR,#0FFF0H
@DPTR,A
DPTR,#5002H
A,@DPTR
DPTR,#0FFE2H

;TO READ MSB OF SECOND

;TO READ LSB OF SECOND

;TO DISPLAY MSB OF


;HOUR IN FIRST LED

;TO DISPLAY LSB OF HOUR


;IN SECOND LED

; T O D I S P L AY M S B O F
MINUTE
;IN THIRD LED

;TO DISPLAY LSB O F


MINUTE
;IN FOURTH LED

[ 4 - 13 ]

RTC INTERFACE

VBMB - 015

41D8 90FFE4

MOV

DPTR,#0FFE4H

41DB
41DC
41DF
41E0

F0
905005
E0
90FFF4

MOVX
MOV
MOVX
MOV

@DPTR,A
DPTR,#5005H
A,@DPTR
DPTR,#0FFF4H

41E3
41E4
41E4
41E7
41E8
41E9
41EA
41EB
41EC
41EF
41F0
41F1
41F4
41F5
41F6
41F8
41FB
41FC
41FE
4200
4203
4206
4209
420A
420B
420C
420D
420E
4211
4212
4213
4216
4217
4218
421A
421D
421E
4220

F0

MOVX

@DPTR,A

MOV
MOVX
RLC
RLC
RLC
RLC
MOV
MOVX
MOV
MOV
MOVX
ORL
MOV
MOV
MOVX
MOV
MOV
MOV
LCALL
MOV
MOVX
RLC
RLC
RLC
RLC
MOV
MOVX
MOV
MOV
MOVX
ORL
MOV
MOV
MOVX
MOV
MOV

DPTR,#5000H
A,@DPTR
A
A
A
A
DPTR,#4400H
@DPTR,A
R5,A
DPTR,#5001H
A,@DPTR
A,R5
R5,#00H
DPTR,#4300H
@DPTR,A
A,#02H
R1,#00H
B,#00H
0020H
DPTR,#5002H
A,@DPTR
A
A
A
A
DPTR,#4401H
@DPTR,A
R5,A
DPTR,#5003H
A,@DPTR
A,R5
R5,#00H
DPTR,#4301H
@DPTR,A
A,#02H
R1,#00H

; T O D I S P L AY M S B O F
SECOND
;IN FIFTH LED

;TO DISP LAY LSB OF


SECOND
;IN SIXTH LED

OUT_DIS:
905000
E0
33
33
33
33
904400
F0
FD
905001
E0
4D
7D00
904300
F0
7402
7900
75F000
120020
905002
E0
33
33
33
33
904401
F0
FD
905003
E0
4D
7D00
904301
F0
7402
7900

Vi Microsystems Pvt. Ltd.,

;TO DISPLAY IN KIT

[ 4 - 14 ]

RTC INTERFACE
4222
4225
4228
422B
422C
422D
422E
422F
4230
4233
4234
4235
4238
4239
423A
423D
423E
4240
4242
4245
4248
424B

75F002
120020
905004
E0
33
33
33
33
904402
F0
FE
905005
E0
4E
904302
F0
7402
7900
75F004
120020
02415A
80FE

HLT:

Vi Microsystems Pvt. Ltd.,

VBMB - 015
MOV
LCALL
MOV
MOVX
RLC
RLC
RLC
RLC
MOV
MOVX
MOV
MOV
MOVX
ORL
MOV
MOVX
MOV
MOV
MOV
LCALL
LJMP
SJMP
END

B,#02H
0020H
DPTR,#5004H
A,@DPTR
A
A
A
A
DPTR,#4402H
@DPTR,A
R6,A
DPTR,#5005H
A,@DPTR
A,R6
DPTR,#4302H
@DPTR,A
A,#02H
R1,#00H
B,#04H
0020H
L1
HLT

[ 4 - 15 ]

RTC INTERFACE

VBMB - 015

PROGRAM - 4 - 8086/8088 ASSEMBLY LANGUAGE EXAMPLES


AIM:
To set and read the time and display the time in RTC interface board & Micro-86/88 EB LED kit.
THEORY:
The RTC has 13 numbers of 4 bit registers to store hours, minutes, seconds, date and so on. To
initialize the RTC, the user as to select the [articular register by writing the register number in the
address port and then write the data for that particular register in the data port. The same
procedure is to repeated to read the current data and time.
PROCEDURE:
0000
0006
0004
1000
1000
1000

CODE

SEGMENT

ASSUME CS:
CODE, DS: CODE
IOCNT EQU
06H
DCNT
EQU
04H
ORG

1000H

B0 05

MOV

AL, 05H

1002
1004

E6 DE
B0 04

OUT
MOV

0DEH, AL
AL, 04H

1006
1008
100B
100D

E6 DE
BE 1013
8A 04
E6 C0

OUT
MOV
MOV
OUT

0DEH, AL
SI, 1310H
AL, [SI]
0C0H, AL

100F 46
1010 8A 04
1012 E6 D0

INC
MOV
OUT

SI
AL, [SI]
0D0H, AL

1014
1015
1017

46
8A 04
E6 C2

INC
MOV
OUT

SI
AL, [SI]
0C2H, AL

1019 46
101A 8A 04
101C E6 D2

INC
MOV
OUT

SI
AL, [SI]
0D2H, AL

101E 46
101F 8A 04

INC
MOV

SI
AL. [SI]

START:

Vi Microsystems Pvt. Ltd.,

; SET THE 24 HOURS


FORM AT & RST = 1
; SET THE 24 HOURS
FORM AT & RST = 0

; SET THE 10 TH DIGIT


OF SECONDS

; SET THE 100TH DIGIT


OF SECONDS

; SET THE 10TH DIGIT


OF MINUTES

; SET THE 100TH DIGIT


OF MINUTES

[ 4 - 16 ]

RTC INTERFACE

VBMB - 015

1021

E6 C4

OUT

0C4H, AL

1023
1024
1026

46
8A 04
E6 D4

INC
MOV
OUT

SI
AL, [SI]
0D4H, AL

MOV

SI, 1320H

102B E4 D4

IN

AL, 0D4H

102D 24 0F
102F 88 04
1031 E4 C4

AND
MOV
IN

AL, 0FH
[SI], AL
AL, 0C4H

1033
1035
1036
1038

24 0F
46
88 04
E4 D2

AND
INC
MOV
IN

AL, 0FH
SI
[SI], AL
AL, 0D2H

103A
103C
103D
103F

24 0F
46
88 04
E4 C2

AND
INC
MOV
IN

AL, 0FH
SI
[SI], AL
AL, 0C2H

1041
1043
1044
1046

24 0F
46
88 04
E4 D0

AND
INC
MOV
IN

AL, 0FH
SI
[SI], AL
AL, 0D0H

104F
104A
104B
104D

24 0F
46
88 04
E4 C0

AND
INC
MOV
IN

AL, 0FH
SI
[SI], AL
AL, 0C0H

104F
1051
1052
1054
1054
1057
1059

24 0F
46
88 04

AND
INC
MOV

AL, 0FH
SI
[SI], AL

OUT_CHECK
BE 2013
8A 04
E6 E0

MOV
MOV
OUT

SI, 1320H
AL, [SI]
0E0H, AL

INC

SI

1028
1028

; SET THE 10TH DIGIT


OF HOURS

; SET THE 10TH DIGIT


OF HOURS

L1:
BE 2013

105B 46

Vi Microsystems Pvt. Ltd.,

;STORE TIME IN
MEMORY LOCATION
;READ THE 100TH DIGIT
OF HOURS

; READ THE 10TH DIGIT


OF HOURS

; RE AD T H E 1 0 0 T H
DIGIT OF MINUTES

; READ THE 10TH DIGIT


OF MINUTES

; RE AD T H E 1 0 0 T H
DIGIT OF SECONDS

; READ THE 10TH DIGIT


OF SECONDS

; DISPLAY IN FIRST
LED DISPLAY

[ 4 - 17 ]

RTC INTERFACE

VBMB - 015

105C 8A 04
105E E6 F0

MOV
OUT

AL, [SI]
0F0H, AL

1060
1061
1063

46
8A 04
E6 E2

INC
MOV
OUT

SI
AL, [SI]
0E2H, AL

1065
1066
1068

46
8A 04
E6 F2

INC
MOV
OUT

SI
AL, [SI]
0F2H, AL

106A 46
106B 8A 04
106D E6 E4

INC
MOV
OUT

SI
AL, [SI]
0E4H, AL

106F 46
1070 8A 04
1072 E6 F4

INC
MOV
OUT

SI
AL, [SI]
0F0H, AL

MOV
MOV
MOV
MOV
ROL
INC
MOV
OR
MOV
MOV
INC
MOV

SI, 1320H
DI, 1500H
AL, [SI]
CL, 04H
AL, CL
SI
CL, [SI]
AL, CL
[DI], AL
SI, 1325H
DI
BL, 02H

DEC
MOV
MOV
ROL
INC
MOV
OR
MOV
DEC
DEC

SI
AL, [SI]
CL, 04H
AL, CL
SI
CL, [SI]
AL, CL
[DI], AL
SI
SI

INC

DI

1074
1074
1077
107A
107C
107E
1080
1081
1083
1085
1087
108A
108B
108D
108D
108E
1090
1092
1094
1095
1097
1099
109B
109C

; DISPLAY IN SECOND
LED DISPLAY

; DISPLAY IN THIRD
LED DISPLAY

; DISPLAY IN FOURTH
LED DISPLAY

; DISPLAY IN FIFTH
LED DISPLAY

; DISPLAY IN SIXTH
LED DISPLAY

DIS:
BE 2013
BF 0015
8A 04
B1 04
D2 C0
46
8A 0C
0A C1
88 05
BE 2513
47
B3 02
DAT_DIS:
4E
8A 04
B1 04
D2 C0
46
8A 0C
0A C1
88 05
4E
4E

109D 47

Vi Microsystems Pvt. Ltd.,

[ 4 - 18 ]

RTC INTERFACE
109E
10A0
10A2
10A2
10A5
10A7
10A9
10AB
10AD
10AE
10B0
10B2
10B4
10B6
10B9

FE CB
75 EB
DISP:
BF 0015
8B 15
B4 03
B0 01
CD 05
47
8B 15
B4 03
B0 10
CD 05
E9 2810

Vi Microsystems Pvt. Ltd.,

VBMB - 015
DEC BL
JNZ
MOV
MOV
MOV
MOV
INT
INC
MOV
MOV
MOV
INT
RJMP
CODE
END

DAT_DIS
DI, 1500H
DX, [DI]
AH, 03H
AL, 01H
05
DI
DX, [DI]
AH, 03H
AL, 10H
05
L1
ENDS

[ 4 - 19 ]

APPENDIX-A
EXAMPLE : 5

SOFTWARE EXAMPLES
TO DISPLAY THE TIME IN THE RTC BOARD:

AIM:
To display the clock in the RTC (Using 6242).
PROCEDURE:
Enter the Current time in the following memeory Location.
1200
1201
1202

Seconds LSB
Seconds MSB
Minutes LSB

1203
1204
1205

Minutes MSB
Hours LSB
Hours MSB

Now enter the following program starting from the user RAM location 1000H and then execute
the same. And the clock will be displayed in the RTC board.
0000
1000
1000
1000

CODE SEGMENT ASSUME CS: CODE, DS: CODE


ORG

1000H

B0 05

MOV

AL,05H

S E T T HE 24 H O U R S
FORM AT & RST=1

1002
1004

E6 DE
B0 04

OUT
MOV

0DEH,AL
AL,04H

S E T T H E 24 HO U R S
FORM AT & RST=0

1006
1008
100B
100D

E6 DE
BE 1013
8A 04
E6 C0

OUT
MOV
MOV
OUT

0DEH,AL
SI,1310H
AL,[SI]
0C0H,AL

SET THE 10TH DIGIT


OF SECONDS

100F
1010
1012

46
8A 04
E6 D0

INC
MOV
OUT

SI
AL,[SI]
0D0H,AL

SET THE 100TH DIGIT


OF SECONDS

1014
1015
1017

46
8A 04
E6 C2

INC
MOV
OUT

SI
AL,[SI]
0C2H,AL

SET THE 10TH DIGIT


OF MINUTES

1019
101A
101C

46
8A 04
E6 D2

INC
MOV
OUT

SI
AL,[SI]
0D2H,AL

SET THE 100TH DIGIT


OF MINUTES

101E
101F

46
8A 04

INC
MOV

SI
AL,[SI]

START:

Vi Microsystems Pvt. Ltd.,

[ 4 - 20 ]

APPENDIX-A

SOFTWARE EXAMPLES

1021

E6 C4

OUT

0C4H,AL

SET THE 10TH DIGIT


OF HOURS

1023
1024
1026

46
8A 04
E6 D4

INC
MOV
OUT

SI
AL,[SI]
0D4H,AL

SET THE 100TH DIGIT


OF HOURS
STORE TIME IN
MEMORY LOCATION
READ THE 100TH
DIGIT 0F HOURS

1028
1028

L1:
BE 2013

MOV

SI,1320H

102B

E4 D4

IN

AL,0D4H

102D
102F
1031

24 0F
88 04
E4 C4

AND
MOV
IN

AL,0FH
[SI],AL
AL,0C4H

READ THE 10TH DIGIT


0F HOURS

1033
1035
1036
1038

24 0F
46
88 04
E4 D2

AND
INC
MOV
IN

AL,0FH
SI
[SI],AL
AL,0D2H

READ THE 100TH


DIGIT 0F MINUTES

103A
103C
103D
103F

24 0F
46
88 04
E4 C2

AND
INC
MOV
IN

AL,0FH
SI
[SI],AL
AL,0C2H

READ THE 10TH DIGIT


0F MINUTES

1041
1043
1044
1046

24 0F
46
88 04
E4 D0

AND
INC
MOV
IN

AL,0FH
SI
[SI],AL
AL,0D0H

READ THE 100TH


DIGIT OF SECONDS

1048
104A
104B
104D

24 0F
46
88 04
E4 C0

AND
INC
MOV
IN

AL,0FH
SI
[SI],AL
AL,0C0H

READ THE 10TH DIGIT


OF SECONDS

104F
1051
1052
1054
1054
1057
1059

24 0F
46
88 04

DISPLAY IN FIRST LED


DISPLAY

105B
105C

46
8A 04

BE 2013
8A 04
E6 E0

Vi Microsystems Pvt. Ltd.,

AND
INC
MOV
OUT_CHECK:
MOV
MOV
OUT
INC
MOV

AL,0FH
SI
[SI],AL
SI,1320H
AL,[SI]
0E0H,AL
SI
AL,[SI]

[ 4 - 21 ]

APPENDIX-A

SOFTWARE EXAMPLES

105E

E6 F0

OUT

0F0H,AL

DI S P LAY I N
SECOND
LED
DISPLAY

1060
1061

46
8A 04

INC
MOV

SI
AL,[SI]

1063

E6 E2

OUT

0E2H,AL

DISPLAY IN THIRD
LED DISPLAY

1065
1066
1068

46
8A 04
E6 F2

INC
MOV
UT

SI
AL,[SI]
0F2H,AL

DI S P LAY I N
FOURTH
LED
DISPLAY

106A
106B
106D

46
8A 04
E6 E4

INC
MOV
OUT

SI
AL,[SI]
0E4H,AL

DISPLAY IN FIFTH
LED DISPLAY

106F
1070
1072

46
8A 04
E6 F4

INC
MOV
OUT

SI
AL,[SI]
0F4H,AL

DISPLAY IN SIXTH
LED DISPLAY

1074
1076

EB B2
CODE

JMP
ENDS
END

L1

Vi Microsystems Pvt. Ltd.,

[ 4 - 22 ]

APPENDIX-A

SOFTWARE EXAMPLES

PROGRAM - 6
AIM
To set and read the time and display the time in RTC interface board in Micro-86/88 LCD kit.
Program
1000
1000

ORG
MOV

1000H
AL, 05H

10002 E6 DE
1004 B0 04
1006 E6 C0

OUT
MOV
OUT

0DEH, AL
AL, 04H
0DEH, AL

1008 BE 1013
100B 8A 04
100D E6 C0

MOV
MOV
OUT

SI, 1310H
AL, [SI]
0C0H, AL

100F 46
1010 8A 04
1012 E6 D0

INC
MOV
OUT

SI
AL, [SI]
0D0H, AL

1014
1015
1017

46
8A 04
E6 C2

INC
MOV
OUT

SI
AL, [SI]
0D0H, AL

1019 46
101A 8A 04
101C E6 D2

INC
MOV
OUT

SI
AL, [SI]
0C4H, AL

101E 46
101F 8A 04
1021 E6 C4

INC
MOV
OUT

SI
AL, [SI]
0C04H, AL

1023
1024
1026

46
8A 04
E6 D4

INC
MOV
OUT

SI
AL, [SI]
0D4H, AL

1028

BE 2013

MOV

SI, 1320H

102B E4 D4

IN

AL, 0D4H

102D 24 0F

AND

AL, 0FH

B0 05

START:

J1:

Vi Microsystems Pvt. Ltd.,

; Set the 24 Hours from


AL & RST = 1
; Set the 24 Hours from
AL & RST = 0

;Set the 10th Digit of


Seconds

;Set the 100th Digit of


Seconds

;Set the 10th Digit of Minutes

;Set the 100th Digit of


Minutes

;Set the 10th Digit of


Hours

;Set the 100th Digit of


Hours
;Store Time in memory
Location
;Read the 100th Digit of
Hours

[ 4 - 23 ]

APPENDIX-A

SOFTWARE EXAMPLES

102F 88 04
1031 E4 C4

MOV
IN

[SI], AL
AL, 0C4H

1033
1035
1036
1038

24 0F
46
88 04
E4 D2

AND
INC
MOV
IN

AL, 0FH
SI
[SI], AL
AL, 0D2H

103A
103C
103D
103F

24 0F
46
88 04
E C2

AND
INC
MOV
IN

AL, 0FH
SI
[SI], AL
AL, 0C2H

1041
1043
1044
1046

24 0F
46
88 04
E4 D0

AND
INC
MOV
IN

AL, 0FH
SI
[SI], AL
AL, 0C0H

1048
104A
104B
104D

24 0F
46
88 04
E4 C0

AND
INC
MOV
IN

AL, 0FH
SI
[SI], AL
AL, 0C0H

104F
1051
1052
1054
1057
1059

24 0F
46
88 04
BE 2013
8A 04
E6 E0

AND
INC
MOV
MOV
MOV
OUT

AL, 0FH
SI
[SI], AL
SI, 1320H
AL, [SI]
0E0H, AL

105B 46
105C 8A 04
105E E6 F0

INC
MOV
OUT

SI
AL, [SI]
0F0H, AL

1060
1061
1063

46
8A 04
E6 E2

INC
MOV
OUT

SI
AL, [SI]
0E2H, AL

1065
1066
1068

46
8A 04
E6 F2

INC
MOV
OUT

SI
AL, [SI]
0F2H, AL

106A 46
106B 8A 04

INC
MOV

SI
AL, [SI]

Vi Microsystems Pvt. Ltd.,

;Read the 10th Digit of


Hours

;Read the 100th Digit of


Minutes

;Read the 10th Digit of


Minutes

; Read the 100th Digit of


Seconds

; Read the 10th Digit of


Seconds

;Display in 1st LED


Display

;Display in 2nd LED


Display

;Display in 3rd LED


Display

;Display in 4th LED


Display

[ 4 - 24 ]

APPENDIX-A

SOFTWARE EXAMPLES

106D E6 E4

OUT 0E4H, AL

106F 46
1070 8A F4
1072 E6 E5

INC SI
MOV AL, [SI]
OUT 0F4H, AL

1074
1076

JMP J1
CODE ENDS
END

EB B2

Vi Microsystems Pvt. Ltd.,

;Display in 5th LED


Display

; Display in 6tht LED


Display

[ 4 - 25 ]

APPENDIX-A
EXAMPLE : 7

SOFTWARE EXAMPLES
TO DISPLAY THE TIME IN THE RTC BOARD:

AIM:
To display the clock in the RTC (Using 6242).
PROCEDURE:
Enter the Current time in the following memeory Location.
1310
1311
1312

Seconds LSB
Seconds MSB
Minutes LSB

1313
1314
1315

Minutes MSB
Hours LSB
Hours MSB

Now enter the following program starting from the user RAM location 1000H and then execute
the same. And the clock will be displayed in the RTC board.
0000

CODE SEGMENT ASSUME CS: CODE, DS: CODE

1000
1000
1000

ORG
START:
C6 C0 05

1003
1005

E6 DE
C6 C0 04

1008
100A
100E
1010

AL,05H

S E T T HE 24 H O U R S
FORM AT & RST=1

OUT
MOV

0DEH,AL
AL,04H

S E T T H E 24 HO U R S
FORM AT & RST=0

E6 DE
C7 C6 1013
8A 04
E6 C0

OUT
MOV
MOV
OUT

0DEH,AL
SI,1310H
AL,[SI]
0C0H,AL

SET THE 10TH DIGIT


OF SECONDS

1012
1013
1015

46
8A 04
E6 D0

INC
MOV
OUT

SI
AL,[SI]
0D0H,AL

SET THE 100TH DIGIT


OF SECONDS

1017
1018
101A

46
8A 04
E6 C2

INC
MOV
OUT

SI
AL,[SI]
0C2H,AL

SET THE 10TH DIGIT


OF MINUTES

101C
101D
101F

46
8A 04
E6 D2

INC
MOV
OUT

SI
AL,[SI]
0D2H,AL

SET THE 100TH DIGIT


OF MINUTES

1021
1022

46
8A 04

INC
MOV

SI
AL,[SI]

Vi Microsystems Pvt. Ltd.,

MOV

1000H

[ 4 - 26 ]

APPENDIX-A

SOFTWARE EXAMPLES

1024

E6 C4

OUT

0C4H,AL

SET THE 10TH DIGIT


OF HOURS

1026
1027
1029

46
8A 04
E6 D4

INC
MOV
OUT

SI
AL,[SI]
0D4H,AL

102B

C7 C6 2013

102F

SET THE 100TH DIGIT


OF HOURS
STORE TIME IN
MEMORY LOCATION
READ THE 100TH
DIGIT 0F HOURS

L1:

MOV SI,1320H

E4 D4

IN

AL,0D4H

1031
1034
1036

80 E0 0F
88 04
E4 C4

AND
MOV
IN

AL,0FH
[SI],AL
AL,0C4H

READ THE 10TH DIGIT


0F HOURS

1038
103B
103C
103E

80 E0 0F
46
88 04
E4 D2

AND
INC
MOV
IN

AL,0FH
SI
[SI],AL
AL,0D2H

READ THE 100TH


DIGIT 0F MINUTES

1040
1043
1044
1046

80 E0 0F
46
88 04
E4 C2

AND
INC
MOV
IN

AL,0FH
SI
[SI],AL
AL,0C2H

READ THE 10TH DIGIT


0F MINUTES

1048
104B
104C
104E

80 E0 0F
46
88 04
E4 D0

AND
INC
MOV
IN

AL,0FH
SI
[SI],AL
AL,0D0H

1050
1053
1054
1056

80 E0 0F
46
88 04
E4 C0

AND
INC
MOV
IN

AL,0FH
SI
[SI],AL
AL,0C0H

1058
105B
105C

80 E0 0F
46
88 04

105E
1062
1064

C7 C6 2013
8A 04
E6 E0

1066
1067
1069

46
8A 04
E6 F0

AND
INC
MOV
OUT_CHECK:
MOV
MOV
OUT

Vi Microsystems Pvt. Ltd.,

INC
MOV
OUT

READ THE 100T H


DIGIT OF SECONDS

READ THE 10TH DIGIT


OF SECONDS

SI,1320H
AL,[SI]
0E0H,AL

DISPLAY IN FIRST LED


DISPLAY

SI
AL,[SI]
0F0H,AL

DISPLAY IN SECOND

AL,0FH
SI
[SI],AL

[ 4 - 27 ]

APPENDIX-A

SOFTWARE EXAMPLES
LED DISPLAY

106B
106C

46
8A 04

INC
MOV

SI
AL,[SI]

106E

E6 E2

OUT

0E2H,AL

DISPLAY IN THIRD
LED DISPLAY

1070
1071
1073

46
8A 04
E6 F2

INC
MOV
OUT

SI
AL,[SI]
0F2H,AL

DI S P LAY I N
FOURTH
LED
DISPLAY

1075
1076
1078

46
8A 04
E6 E4

INC
MOV
OUT

SI
AL,[SI]
0E4H,AL

DISPLAY IN FIFTH
LED DISPLAY

107A
107B
107D

46
8A 04
E6 F4

INC
MOV
OUT

SI
AL,[SI]
0F4H,AL

DISPLAY IN SIXTH
LED DISPLAY

107F
1076

E9 A9 FF
CODE

JMP
ENDS
END

L1

Vi Microsystems Pvt. Ltd.,

[ 4 - 28 ]

RTC INTERFACE

APPENDIX - A

APPENDIX - A
CIRCUIT DIAGRAM

Vi Microsystems Pvt. Ltd.,

[A-1]

RTC INTERFACE

Vi Microsystems Pvt. Ltd.,

APPENDIX - A

[A-2]

RTC INTERFACE

APPENDIX - B

APPENDIX - B
COMPONENT LAYOUT

Vi Microsystems Pvt. Ltd.,

[B-1]

Potrebbero piacerti anche