English
Language : 

DS12B887 Datasheet, PDF (5/16 Pages) Dallas Semiconductor – Real Time Clock
DS12B887
ADDRESS MAP DS12B887 Figure 2
0
00
14 BYTES
13
0D
14
0E
127
7F
0
SECONDS
1
SECONDS ALARM
2
MINUTES
3
MINUTES ALARM
4
HOURS
5
HOURS ALARM
6
DAY OF THE WEEK
7
DAY OF THE MONTH
8
MONTH
9
YEAR
10
REGISTER A
11
REGISTER B
12
REGISTER C
13
REGISTER D
TIME, CALENDAR AND ALARM LOCATIONS
The time and calendar information is obtained by read-
ing the appropriate memory bytes. The time, calendar,
and alarm are set or initialized by writing the appropriate
RAM bytes. The contents of the ten time, calendar, and
alarm bytes can be either Binary or Binary-Coded Deci-
mal (BCD) format. Before writing the internal time, cal-
endar, and alarm registers, the SET bit in Register B
should be written to a logic one to prevent updates from
occurring while access is being attempted. In addition
to writing the ten time, calendar, and alarm registers in a
selected format (binary or BCD), the data mode bit (DM)
of Register B must be set to the appropriate logic level.
All ten time, calendar, and alarm bytes must use the
same data mode. The set bit in Register B should be
cleared after the data mode bit has been written to allow
the real time clock to update the time and calendar
bytes. Once initialized, the real time clock makes all
updates in the selected mode. The data mode cannot
be changed without reinitializing the ten data bytes.
Table 2 shows the binary and BCD formats of the ten
time, calendar, and alarm locations. The 24-12 bit can-
not be changed without reinitializing the hour locations.
When the 12-hour format is selected, the high order bit
of the hours byte represents PM when it is a logic one.
The time, calendar, and alarm bytes are always acces-
sible because they are double buffered. Once per
second the ten bytes are advanced by one second and
checked for an alarm condition. If a read of the time and
calendar data occurs during an update, a problem exists
where seconds, minutes, hours, etc. may not correlate.
The probability of reading incorrect time and calendar
data is low. Several methods of avoiding any possible
incorrect time and calendar reads are covered later in
this text.
The three alarm bytes can be used in two ways. First,
when the alarm time is written in the appropriate hours,
minutes, and seconds alarm locations, the alarm inter-
rupt is initiated at the specified time each day if the alarm
enable bit is high . The second use condition is to insert
a “don’t care” state in one or more of the three alarm
bytes. The “don’t care” code is any hexadecimal value
from C0 to FF. The two most significant bits of each byte
set the “don’t care” condition when at logic 1. An alarm
will be generated each hour when the “don’t care” bits
are set in the hours byte. Similarly, an alarm is gener-
ated every minute with “don’t care” codes in the hours
and minute alarm bytes. The “don’t care” codes in all
three alarm bytes create an interrupt every second.
080895 5/16