SST89V58RD Silicon Storage Technology, SST89V58RD Datasheet - Page 54

no-image

SST89V58RD

Manufacturer Part Number
SST89V58RD
Description
FlashFlex51 MCU
Manufacturer
Silicon Storage Technology
Datasheet

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
SST89V58RD2-33-C-NJE
Manufacturer:
Microchip Technology
Quantity:
10 000
Part Number:
SST89V58RD2-33-C-NJE
Manufacturer:
SST
Quantity:
20 000
Part Number:
SST89V58RD2-33-C-TQJE
Manufacturer:
Microchip Technology
Quantity:
10 000
Part Number:
SST89V58RD2-33-I-N
Manufacturer:
SST
Quantity:
134
Part Number:
SST89V58RD2-33-I-NJE
Manufacturer:
Microchip Technology
Quantity:
10 000
Part Number:
SST89V58RD2-33-I-TQJE
Manufacturer:
Microchip Technology
Quantity:
10 000
w
w
Data Sheet
8.3.5 Watchdog Timer
The Watchdog Timer mode is used to improve reliability in
the system without increasing chip count (See Figure 8-6).
Watchdog Timers are useful for systems that are suscepti-
ble to noise, power glitches, or electrostatic discharge. It
can also be used to prevent a software deadlock. If during
the execution of the user’s code, there is a deadlock, the
Watchdog Timer will time out and an internal reset will
occur. Only module 4 can be programmed as a Watchdog
Timer (but still can be programmed to other modes if the
Watchdog Timer is not used).
To use the Watchdog Timer, the user pre-loads a 16-bit
value in the compare register. Just like the other compare
modes, this 16-bit value is compared to the PCA timer
value. If a match is allowed to occur, an internal reset will be
generated. This will not cause the RST pin to be driven high.
In order to hold off the reset, the user has three options:
The first two options are more reliable because the Watch-
dog Timer is never disabled as in option #3. If the program
counter ever goes astray, a match will eventually occur and
cause an internal reset. The second option is also not rec-
ommended if other PCA modules are being used. Remem-
ber, the PCA timer is the time base for all modules;
changing the time base for other modules would not be a
good idea. Thus, in most application the first solution is the
best option.
©2006 Silicon Storage Technology, Inc.
1. periodically change the compare value so it will
2. periodically change the PCA timer value so it will
3. disable the watchdog timer by clearing the WDTE
w
FIGURE
never match the PCA timer,
never match the compare values, or
bit before a match occurs and then re-enable it.
.
D
a
8-6: PCA Watchdog Timer (Module 4 only)
t
Write to
CCAP4H
a
1
S
CCAP4L
h
Write to
0
e
SST89E52RD2/RD / SST89E54RD2/RD / SST89E58RD2/RD
SST89V52RD2/RD / SST89V54RD2/RD / SST89V58RD2/RD
Reset
Enable
e
t
CCAP4H
PCA Timer/Counter
4
16-bit Comparator
CH
CIDL
U
ECOMn CAPPn CAPNn MATn
CCAP4L
WDTE
.
CL
c
Module 4
0
54
o
Match
Use the code below to initialize the Watchdog Timer. Mod-
ule 4 can be configured in either compare mode, and the
WDTE bit in CMOD must also be set. The user’s software
then must periodically change (CCAP4H, CCAP4L) to
keep a match from occurring with the PCA timer (CH, CL).
This code is given in the Watchdog routine below.
This routine should not be part of an interrupt service rou-
tine. If the program counter goes astray and gets stuck in an
infinite loop, interrupts will still be serviced and the watchdog
will keep getting reset. Thus, the purpose of the watchdog
would be defeated. Instead, call this subroutine from the
main program of the PCA timer.
m
0
;==============================================
Init_Watchdog:
;==============================================
;Main program goes here, but call WATCHDOG periodically.
;==============================================
WATCHDOG:
;==============================================
1
MOVCCAPM4, #4CH; Module 4 in compare mode
MOVCCAP4L, #0FFH; Write to low byte first
MOVCCAP4H, #0FFH; Before PCA timer counts up
ORLCMOD, #40H; Set the WDTE bit to enable the
CLR EA; Hold off interrupts
MOVCCAP4L, #00; Next compare value is within
MOVCCAP4H, CH; 65,535 counts of the
SETBEA; timer value
RET
CPS1
TOGn
X
; to FFFF Hex, these compare
; values must be changed.
; watchdog timer without
; changing the other bits in
; CMOD
; current PCA
PWMn ECCFn
CPS0
0
ECF
X
CMOD
CCAPM4
Reset
FlashFlex51 MCU
1255 F28.0
S71255-05-000
5/06

Related parts for SST89V58RD