beautypg.com

3 manual wakeup signal generation, 1 automatic wakeup signal generation, An186 – Cirrus Logic AN186 User Manual

Page 5

background image

AN186

AN186REV1

5

Notes: 1. The use of the keypress interrupt is disabled after any of the three available resets become active (i.e.

nPOR, nURESET, or nPWRFL) due to the fact that the KBWEN bit is cleared by default. Therefore, a
keypress cannot wake-up the device after a cold boot or power fail.

2. When the EP72/73XX is in the Standby State, the nPWRFL signal is disabled. It cannot be used to reset

the device.

At any time, if nPOR or nPWRFL become active, or BATOK and nEXTPWR both become inactive, the EP72/73XX will
require this two second delay before it can exit the Standby State, after all of these signals return to their normal operating state.

After the EP72/73XX has been reset by nPOR, the device will transition into the Standby State. The only method that can be used
to exit the Standby State is by the device detecting the WAKEUP signal transitioning from a low to high. However, the EP72/73XX
has the 2 second fixed delay before it can detect this transition. Therefore, if the WAKEUP signal rises prior to this delay
expiration, it will be ignored. It will have to go low and high again once the delay period has expired.

When the EP72/73XX is not in the Standby State, if BATOK and nEXTPWR both become inactive, the EP72/73XX will not
enter the Standby State immediately. Rather, they simply will generate an interrupt (BLINT in the INTSR1 register). Therefore,
action taken by this interrupt is solely determined by software. For example: this interrupt could be used to send a message to
the display informing the user that the battery needs to be changed. After a period of time, the software could then decide to
force the device into the Standby State by writing to the STDBY register.

4.3 Manual WAKEUP Signal Generation

There are numerous methods of creating the WAKEUP signal. If it is desired to force the user to perform some form of intervention
to wake up the device; here is one possible approach when a keypad is used with the Column drive and the Port A row pins. By
default upon power-up, the Col[x] pins are all driven high and the Port A[x] pins are all configured as inputs. Route a key so that
one terminal is connected to one of the Col[x] pins, and the other terminal is connected to one of the Port A[x] pins. Connect the
Port A[x] pin to the WAKEUP pin. Connect a 47k pull-down resistor to this node. When the key is pressed that is tied to Port A[x],
it will cause this node to go high. Since it is connected to the WAKEUP pin, it was also cause the WAKEUP signal to go high,
thus waking up the EP72/73XX. Two factors are assumed here: 1). The key will not be pressed until two seconds after the product
is powered-up, and 2). The key will be depressed for longer than 125us. It should be easy to comply with both of these factors.

After the EP72/73XX has entered the Operating State, the WAKEUP signal is ignored, and thus it will not have any affect on
the EP72/73XX if the key is used in a normal manner. If the product re-enters the Standby State due to software control, this
key can be used to re-wake the product. If it is desired to disable this key from allowing the product to re-exit the Standby State,
then its WAKEUP functionality can be disabled by forcing the WAKEDIS bit high in the SYSCON1 register. This will cause
the EP72/73XX to ignore any activity on the WAKEUP pin. It will be ignored until the EP72/73XX is reset or the software
clears the WAKEDIS bit.

4.3.1

Automatic WAKEUP Signal Generation

If it is desired to implement a design that will force the EP72/73XX to automatically enter the Operating State upon power-up,
it is possible to create a simple square wave generator whose output becomes the WAKEUP signal. The period of each cycle
must be greater than 2 x 125us = 250us. Thus this signal can be used to automatically wake up the EP72/73XX.

While in the Operating and Idle States, the WAKEUP signal is ignored. Therefore, it can continue to toggle without any effect.
However, if the EP72/73XX is forced back into the Standby State, it would immediately re-wake, unless somehow this external
WAKEUP signal has been disabled. Two methods are available:

The first method uses the software to set the WAKEDIS bit after the EP72/73XX has entered the Operating State. This will
disable the WAKEUP signal from immediately forcing the EP72/73XX out of the Standby State, when forced to do so by the
software. However, this approach does have one drawback. When the WAKEDIS bit is set, it also prevents the device from
being wakened by a keypress after a power fail indication or battery change occurs.

If you want to have the ability to wake the device with a keypress, then an external WAKEUP signal disabler must be implemented.
This can easily be done by adding a two input NOR gate in series with the output of the square wave generator. One of the inputs
into the NOR gate is the output of the square wave generator. The other is an unused GPIO pin. The GPIO pin should have a
pulldown on it to prevent it from floating upon power-up. After the EP72/73XX has entered the Operating State, program this
GPIO pin so that it forces it high. This will cause the output of the NOR to go low. Use the output of this NOR gate as the input
into the WAKEUP pin. See the

Figure 8, “Automatic Wakeup Circuit,” on page 11

.