UM10147_2
© NXP B.V. 2008. All rights reserved.
User manual
Rev. 02 — 28 April 2008
105 of 134
NXP Semiconductors
UM10147
P89LPC952/954 User manual
16.1 Software reset
The SRST bit in AUXR1 gives software the opportunity to reset the processor completely,
as if an external reset or watchdog reset had occurred. If a value is written to AUXR1 that
contains a 1 at bit position 3, all SFRs will be initialized and execution will resume at
program address 0000. Care should be taken when writing to AUXR1 to avoid accidental
software resets.
16.2 Dual Data Pointers
The dual Data Pointers (DPTR) adds to the ways in which the processor can specify the
address used with certain instructions. The DPS bit in the AUXR1 register selects one of
the two Data Pointers. The DPTR that is not currently selected is not accessible to
software unless the DPS bit is toggled.
Specific instructions affected by the Data Pointer selection are:
INC DPTR —
Increments the Data Pointer by 1
JMP@A+DPTR —
Jump indirect relative to DPTR value
MOV DPTR, #data16 —
Load the Data Pointer with a 16-bit constant
MOVC A, @A+DPTR —
Move code byte relative to DPTR to the accumulator
MOVX A, @DPTR —
Move accumulator to data memory relative to DPTR
MOVX @DPTR, A —
Move from data memory relative to DPTR to the accumulator
Also, any instruction that reads or manipulates the DPH and DPL registers (the upper and
lower bytes of the current DPTR) will be affected by the setting of DPS. The MOVX
instructions have limited application for the P89LPC952/954 since the part does not have
an external data bus. However, they may be used to access Flash configuration
information (see Flash Configuration section) or auxiliary data (XDATA) memory.
Bit 2 of AUXR1 is permanently wired as a logic 0. This is so that the DPS bit may be
toggled (thereby switching Data Pointers) simply by incrementing the AUXR1 register,
without the possibility of inadvertently altering other bits in the register.
16.3 Debugger interface
This device contains a two-wire serial debugger interface designed to be used with
commerically available debugging tools. An additional trigger output is provided that
maybe triggered using the two-wire debugger interface.
The following conditions are required to enter the debug mode:
•
UCFG2.5 has been programmed
•
a 10K pullup resistor to V
DD
is connected to SCLK
•
a 10K pullup resistor to V
DD
is connected to SDAT
•
the debug pins are connected to a commercially available debugger
•
either a power-on reset or external reset occurs