English
Language : 

UPSD3422_06 Datasheet, PDF (28/293 Pages) STMicroelectronics – Turbo Plus Series Fast Turbo 8032 MCU with USB and Programmable Logic
8032 MCU registers
7
8032 MCU registers
uPSD34xx
The uPSD34xx has the following 8032 MCU core registers, also shown in Figure 11.
Figure 11. 8032 MCU registers
PCH
DPTR(DPH)
A
B
SP
PCL
PSW
R0-R7
DPTR(DPL)
Accumulator
B Register
Stack Pointer
Program Counter
Program Status Word
General Purpose
Register (Bank0-3)
Data Pointer Register
AI06636
7.1
Stack pointer (SP)
The SP is an 8-bit register which holds the current location of the top of the stack. It is
incremented before a value is pushed onto the stack, and decremented after a value is
popped off the stack. The SP is initialized to 07h after reset. This causes the stack to begin
at location 08h (top of stack). To avoid overlapping conflicts, the user must initialize the top
of the stack to 20h if all four banks of registers R0 - R7 are used, as well as the top of stack
to 30h if all of the 8032 bit memory locations are used.
7.2
Data pointer (DPTR)
DPTR is a 16-bit register consisting of two 8-bit registers, DPL and DPH. The DPTR
Register is used as a base register to create an address for indirect jumps, table look-up
operations, and for external data transfers (XDATA). When not used for addressing, the
DPTR Register can be used as a general purpose 16-bit data register.
Very frequently, the DPTR Register is used to access XDATA using the External Direct
addressing mode. The uPSD34xx has a special set of SFR registers (DPTC, DPTM) to
control a secondary DPTR Register to speed memory-to-memory XDATA transfers. Having
dual DPTR Registers allows rapid switching between source and destination addresses
(see details in Section 11: Dual data pointers on page 47).
7.3
Program counter (PC)
The PC is a 16-bit register consisting of two 8-bit registers, PCL and PCH. This counter
indicates the address of the next instruction in program memory to be fetched and executed.
A reset forces the PC to location 0000h, which is where the reset jump vector is stored.
7.4
Accumulator (ACC)
This is an 8-bit general purpose register which holds a source operand and receives the
result of arithmetic operations. The ACC Register can also be the source or destination of
logic and data movement operations. For MUL and DIV instructions, ACC is combined with
28/293