Max6901, Wire serial rtc in a tdfn, Using the alarm – Rainbow Electronics MAX6901 User Manual

Page 10

Advertising
background image

MAX6901

does not happen coincident with a Seconds counter
increment to ensure accurate time data is being read.
The clock counters continue to count and keep accu-
rate time during the Read operation.

The simplest way to read the timekeeping registers is to
use a Burst Read. In a Burst Read, the main timekeep-
ing registers (Seconds, Minutes, Hours, Date, Month,
Day, Year) and the Control register are read sequential-
ly in the order listed with the Seconds register first.
They are read out as a group of eight registers, with 8
bits each. All timekeeping registers (except Century)
are latched upon the receipt of the Burst Read com-
mand. The worst-case error between the “actual” time
and the “read” time is 1 second for a normal data transfer.

The timekeeping registers may also be read using
Single Reads. If Single Reads are used, it is necessary
to do some error checking on the receiving end,
because it is possible that the clock counters could
change during the Read operations, and report inaccu-
rate time data. The potential for error is when the
Seconds register increments before all the registers are
read. For example, suppose a carry of 13:59:59 to
14:00:00 occurs during Single Read operations. The
net data read could be 14:59:59, which is erroneous.
To prevent errors from occurring with Single Read oper-
ations, read the Seconds register first (initial-seconds)
and store this value for future comparison. After the
remaining timekeeping registers have been read,
reread the Seconds register (final-seconds). Check that

the final-seconds value equals the initial-seconds value;
if not, repeat the entire Single Read process. Using
Single Reads at a 100kHz serial speed, it takes under
2.5ms to read all seven of the timekeeping registers,
including two reads of the Seconds register.

Example: Reading the Clock

with a Burst Read

To read the time with a Burst Read, send BFh as the
Address/Command byte. Then clock out 8 bytes,
Seconds, Minutes, Hours, Date of the month, Month,
Day of the week, Year, and finally the Control byte. All
data are output LSB first. Decode the required informa-
tion based on the register definitions listed in Table 2.

Using the Alarm

A polled alarm function is available by reading the ALM
OUT bit. The ALM OUT bit is D7 of the Minutes time-
keeping register. A logic 1 in ALM OUT indicates the
alarm function is triggered. There are eight registers
associated with the alarm function, seven programma-
ble Alarm Threshold registers and one programmable
Alarm Configuration register. The Alarm Configuration
register determines which Alarm Threshold registers
are compared to the timekeeping registers, and the
ALM OUT bit sets if the compared registers are equal.
Table 2 shows the function of each bit of the Alarm
Configuration register. Placing a logic 1 in any given bit
of the Alarm Configuration register enables the respec-

3-Wire Serial RTC in a TDFN

10

______________________________________________________________________________________

WRITE

ADDRESS/COMMAND

BYTE (HEX)

READ

ADDRESS/COMMAND

BYTE (HEX)

DESCRIPTION

POR CONTENTS

(HEX)

E4

E5

RAM 18

Indeterminate

E6

E7

RAM 19

Indeterminate

E8

E9

RAM 20

Indeterminate

EA

EB

RAM 21

Indeterminate

EC

ED

RAM 22

Indeterminate

EE

EF

RAM 23

Indeterminate

F0

F1

RAM 24

Indeterminate

F2

F3

RAM 25

Indeterminate

F4

F5

RAM 26

Indeterminate

F6

F7

RAM 27

Indeterminate

F8

F9

RAM 28

Indeterminate

FA

FB

RAM 29

Indeterminate

FC

FD

RAM 30

Indeterminate

FE

FF

RAM Burst

Nonapplicable

Table 3. HEX Register Address/Description (continued)

Advertising