SN8P2808
8-bit micro-controller build-in 4*32 LCD and 12-bit ADC.
2.3.2 堆栈寄存器
堆栈指针STKP 是一个3 位寄存器,存放被访问的堆栈单元地址,13 位数据存储器STKnH 和STKnL 用于暂存堆栈
数据。以上寄存器都位于bank 0。
使用入栈指令PUSH 和出栈指令POP 可对堆栈缓存器进行操作。堆栈操作遵循后进先出(LIFO)的原则,入栈时堆
栈指针STKP 的值减1,出栈时STKP 的值加1,这样,STKP 总是指向堆栈缓存器顶层单元。
系统进入中断或执行CALL 指令之前,程序计数器PC 的值被存入堆栈缓存器中进行入栈保护
0DFH
STKP
读/写
Bit 7
GIE
R/W
0
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
STKPB2
R/W
Bit 1
STKPB1
R/W
Bit 0
STKPB0
R/W
-
-
-
-
-
-
-
-
-
-
-
-
复位后
1
1
1
Bit[2:0]
Bit 7
STKPBn:堆栈指针(n = 0 ~ 2)。
GIE:全局中断控制位。
0 = 禁止;
1 = 使能。
¾ 例:系统复位时,堆栈指针寄存器内容为默认值,但强烈建议在程序初始部分重新设定,如下面所示:
MOV
B0MOV
A, #00000111B
STKP, A
0F0H~0FFH
STKnH
Bit 7
Bit 6
Bit 5
Bit 4
SnPC12
R/W
Bit 3
SnPC11
R/W
Bit 2
SnPC10
R/W
Bit 1
SnPC9
R/W
0
Bit 0
SnPC8
R/W
0
-
-
-
-
-
-
-
-
-
读/写
复位后
0
0
0
0F0H~0FFH
STKnL
Bit 7
Bit 6
Bit 5
Bit 4
SnPC4
R/W
Bit 3
SnPC3
R/W
Bit 2
SnPC2
R/W
Bit 1
SnPC1
R/W
Bit 0
SnPC0
R/W
SnPC7
R/W
0
SnPC6
R/W
0
SnPC5
R/W
0
读/写
复位后
0
0
0
0
0
STKn = STKnH,STKnL(n = 7 ~ 0)。
SONiX TECHNOLOGY CO., LTD
Page 32
Version 1.1