ST7DALIF2 STMicroelectronics, ST7DALIF2 Datasheet - Page 31

no-image

ST7DALIF2

Manufacturer Part Number
ST7DALIF2
Description
8-BIT MCU WITH SINGLE VOLTAGE FLASH MEMORY, DATA EEPROM, ADC, TIMERS, SPI
Manufacturer
STMicroelectronics
Datasheet

Specifications of ST7DALIF2

8 Kbytes Single Voltage Flash Program Memory With Read-out Protection, In-circuit Programming And In-application Programming (icp And Iap). 10k Write/erase Cycles Guaranteed, Data Retention
20 years at 55°C.
256 Bytes Data Eeprom With Read-out Protection. 300k Write/erase Cycles Guaranteed, Data Retention
20 years at 55°C.
Clock Sources
Internal 1% RC oscillator, crystal/ceramic resonator or external clock
Five Power Saving Modes
Halt, Active-Halt, Wait and Slow, Auto Wake Up From Halt
ST7DALIF2
8.3.5
Note:
Stack pointer register (SP)
The Stack Pointer is a 16-bit register which is always pointing to the next free location in the
stack. It is then decremented after data has been pushed onto the stack and incremented
before data is popped from the stack (see
Since the stack is 128 bytes deep, the 9 most significant bits are forced by hardware.
Following an MCU reset, or after a Reset Stack Pointer instruction (RSP), the Stack Pointer
contains its reset value (the SP7 to SP0 bits are set) which is the stack higher address.
The least significant byte of the Stack Pointer (called S) can be directly accessed by an LD
instruction.
When the lower limit is exceeded, the Stack Pointer wraps around to the stack upper limit,
without indicating the stack overflow. The previously stored information is then overwritten
and therefore lost. The stack also wraps in case of an underflow.
The stack is used to save the return address during a subroutine call and the CPU context
during an interrupt. The user may also directly manipulate the stack by means of the PUSH
and POP instructions. In the case of an interrupt, the PCL is stored at the first location
pointed to by the SP. Then the other registers are stored in the next locations as shown in
Figure
A subroutine call occupies two locations and an interrupt five locations in the stack area.
Figure 10. Stack manipulation example
SP
R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W
15
0
When an interrupt is received, the SP is decremented and the context is pushed on the
stack.
On return from interrupt, the SP is incremented and the context is popped from the
stack.
@ 0180h
@ 01FFh
SP
10.
14
0
subroutine
Stack Higher Address = 01FFh
Stack Lower Address = 0180h
Call
13
0
PCH
PCL
12
0
SP
11
0
Interrupt
event
PCH
PCH
PCL
PCL
CC
A
X
10
0
SP
9
0
Push Y
PCH
PCH
PCL
PCL
CC
8
1
Figure
Y
A
X
SP
7
1
10).
SP6 SP5 SP4 SP3 SP2 SP1 SP0
6
Pop Y
PCH
PCH
PCL
PCL
CC
A
X
Central processing unit (CPU)
5
SP
4
IRET
PCH
PCL
3
Reset value: 01 FFh
SP
2
or RSP
RET
1
31/171
0

Related parts for ST7DALIF2