Once per second, the ten time, calendar and
alarm 1 bytes, as well as the century byte and
seven alarm 2 bytes are switched to the update
logic to be advanced by one second and to
check for an alarm condition. If any of these
bytes are read at this time, the data outputs are
undefined. The update cycle time is shown in
Table 67. The update logic contains circuitry for
automatic end-of-month recognition as well as
automatic leap year compensation.
Time, Calendar and Alarm
The processor program obtains time and
calendar information by reading the appropriate
locations. The program may initialize the time,
calendar and alarm by writing to these locations.
The contents of the ten time, calendar and
alarm 1 bytes can be in binary or BCD as shown
in Table 66A. The contents of the century byte
and seven alarm 2 bytes can also be in binary
or BCD as shown in Table 66B.
The three alarm 1 bytes may be used in two
ways. First, when the program inserts an alarm
time in the appropriate hours, minutes and
seconds alarm locations, the alarm interrupt is
initiated at the specified time each day if the
alarm enable bit is high. The second usage is to
insert a "don't care" state in one or more of three
alarm bytes. The "don't care" code is any
hexadecimal byte from C0 to FF inclusive. That
is the two most significant bits of each byte,
when set to "1", create a "don't care" situation.
An alarm interrupt each hour is created with a
"don't care" code in the hours alarm location.
Similarly, an alarm is generated every minute
with "don't care" codes in the hours and minutes
alarm bytes. The "don't care" codes in all three
alarm bytes create an interrupt every second.
Before initializing the internal registers, the SET
bit in Register B should be set to a "1" to prevent
time/calendar updates from occurring. The
program initializes the ten locations in the binary
or BCD format as defined by the DM bit in
Register B. The SET bit may now be cleared to
allow updates.
The 12/24 bit in Register B establishes whether
the hour locations represent 1 to 12 or 0 to 23.
The 12/24 bit cannot 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 "1".
149