TMP91C824
91C824-208
3.13.3
Explanation of the alarm function
It can use alarm function by setting of register of PAGE1 and output either of three signal from
/ALARM pin as follows.
INTRTC always output 1-shot pulse detecting falling down edge.
RTC circuit isn’t reset by /RESET signal, it need to init interrupt request flag before setting timer and
alarm of RTC.
(1) In accordance of alarm register and the timer, output '0'
(2) Output clock of 1Hz
(3) Output clock of 16Hz
(1) In accordance of alarm register and a timer, output '0'.
When value of a timer of PAGE0 accorded with alarm register of PAGE1 with a state of
PAGER<ENAALM>='1', output '0' to /ALARM pin and occur INTRTC.
Follows are ways using alarm.
Initialization of alarm is done by writing in '1' at RESTR<RSTALM>, setting value of all alarm
becomes don’t care. In this case, always accorded with value of a timer and occur INTRTC interrupt if
PAGER<ENAALM> is '1'.
Setting alarm min., alarm hour, alarm day and alarm the day week is done by writing in data at each
register of PAGE1.
When all setting contents accorded, RTC generates INTRTC interrupt, if PAGER<ENAALM> is '1'.
However, contents (don't care state) which does not set it up is considered to always accord.
The contents, which set it up once, cannot be returned to don't care state in independence. Initialization
of alarm and resetting of alarm register are necessary.
The following is an example program for outputting an alarm from
ALARM
pin at noon
(PM 12:00) every day
LD
(PAGER),09H
; Alarm disable, setting PAGE1
LD
(RESTR),D0H
;
Alarm
initialize
LD
(MONTHR),01H
; 24-hour clock mode
LD
(HOURR),12H
; setting 12 o’clock
LD
(MINR),00H
; setting 00 min.
; Set up time 31
µ
s Note)
LD
(PAGER),0CH
;
Alarm
enable
( LD (PAGER), 8CH
; Interrupt enable )
When CPU is operated by high frequency oscillation, it may take a maximum of one
clock at 32 kHz (about 30
µ
s) for the time register setting to become valid. In the above
example, it is necessary to set 31
µ
s of set up time between setting the time register
and enabling the alarm register.
Note) This set up time is unnecessary under SLOW mode or when you use only internal
interruption.
(2) When output clock of 1Hz
RTC outputs clock of 1Hz to /ALARM pin by setting up PAGER<ENAALM>='0',
RESTR<DIS1HZ>='0',<DIS16HZ>='1'. And RTC generates INTRTC interrupt by falling edge of the
clock.
(3) When output clock of 16Hz
RTC outputs clock of 16Hz to /ALARM pin by setting up PAGER<ENAALM>='0',
RESTR<DIS1HZ>='1', <DIS16HZ>='0'. And RTC generates INTRTC interrupt by falling edge of the
clock.