ade7518 Analog Devices, Inc., ade7518 Datasheet - Page 78

no-image

ade7518

Manufacturer Part Number
ade7518
Description
Single-phase Energy Measurement Ic With 8052 Mcu, Rtc, And Lcd Driver
Manufacturer
Analog Devices, Inc.
Datasheet

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
ade7518ASTZF16
Manufacturer:
Analog Devices Inc
Quantity:
10 000
Part Number:
ade7518ASTZF16-RL
Manufacturer:
Analog Devices Inc
Quantity:
10 000
Part Number:
ade7518ASTZF8
Manufacturer:
Analog Devices Inc
Quantity:
135
Part Number:
ade7518ASTZF8
Manufacturer:
Analog Devices Inc
Quantity:
10 000
Part Number:
ade7518ASTZF8-RL
Manufacturer:
Analog Devices Inc
Quantity:
10 000
ADE7518
INTERRUPT VECTORS
When an interrupt occurs, the program counter is pushed onto
the stack, and the corresponding interrupt vector address is loaded
into the program counter. When the interrupt service routine
is complete, the program counter is popped off the stack by a
RETI instruction. This allows program execution to resume
from where it was interrupted. The interrupt vector addresses
are shown in Table 64.
Table 64. Interrupt Vector Addresses
Source
IE0
TF0
IE1
TF1
RI + TI
TF2 + EXF2
Reserved
ISPI/I2CI
IPSM (Power Supply)
IADE (Energy Measurement DSP)
IRTC (RTC Interval Timer)
WDT (Watchdog Timer)
INTERRUPT LATENCY
The 8052 architecture requires that at least one instruction
executes between interrupts. To ensure this, the 8052 MCU
core hardware prevents the program counter from jumping to
an ISR immediately after completing an RETI instruction or an
access of the IP and IE registers.
The shortest interrupt latency is 3.25 instruction cycles, 800 ns
with a clock of 4.096 MHz. The longest interrupt latency for a
high priority interrupt results when a pending interrupt is
generated during a low priority interrupt RETI, followed by a
multiply instruction. This results in a maximum interrupt
latency of 16.25 instruction cycles, 4 μs with a clock of 4.096 MHz.
Vector Address
0x0003
0x000B
0x0013
0x001B
0x0023
0x002B
0x0033
0x003B
0x0043
0x004B
0x0053
0x005B
Rev. 0 | Page 78 of 128
CONTEXT SAVING
When the 8052 vectors to an interrupt, only the program counter
is saved on the stack. Therefore, the interrupt service routine
must be written to ensure that registers used in the main
program are restored to their preinterrupt state. Common
registers that can be modified in the ISR are the accumulator
register and the PSW register. Any general-purpose registers
that are used as scratch pads in the ISR should also be restored
before exiting the interrupt. The following example 8052 code
shows how to restore some commonly used registers:
GeneralISR:
; save the current accumulator value
; save the current status and register bank
selection
; service interrupt
; restore the status and register bank
selection
; restore the accumulator
PUSH
PUSH
POP
POP
RETI
ACC
PSW
PSW
ACC

Related parts for ade7518