English
Language : 

DS89C420 Datasheet, PDF (8/59 Pages) Dallas Semiconductor – Ultra-High-Speed Microcontroller
DS89C420
execution. The user concerned with precise program timing should examine the timing of each instruction
to become familiar with the changes.
Special Function Registers (SFRs)
All peripherals and operations that are not explicit instructions in the DS89C420 are controlled through
SFRs. The most common features basic to the architecture are mapped to the SFRs. These include the
CPU registers (ACC, B, and PSW), data pointers (DPTRs), stack pointer, I/O ports, timer/counters, and
serial ports. In many cases, an SFR controls an individual function or reports the function’s status. The
SFRs reside in register locations 80h–FFh and are only accessible by direct addressing. SFRs whose
addresses end in 0h or 8h are bit-addressable.
All standard SFR locations from the 8051 are duplicated in the DS89C420 and several SFRs have been
added for the unique features of the DS89C420. Most of these features are controlled by bits in SFRs
located in unused locations in the 8051 SFR map. This allows for increased functionality while
maintaining complete instruction set compatibility. Table 2 summarizes the SFRs and their locations.
Table 3 specifies the default reset condition for all SFR bits.
Data Pointers
The data pointers (DPTR and DPTR1) are used to assign a memory address for the MOVX instructions.
This address can point to a MOVX RAM location (on-chip or off-chip), or a memory-mapped peripheral.
Two pointers are useful when moving data from one memory area to another, or when using a memory-
mapped peripheral for both source and destination addresses. The user selects the active pointer through a
dedicated SFR bit (Sel = DPS.0), or activates an automatic toggling feature for altering the pointer
selection (TSL = DPS.5). An additional feature, if selected, provides automatic incrementing or
decrementing of the current DPTR.
Stack Pointer
The stack pointer denotes the register location at the top of the stack, which is the last used value. The
user can place the stack anywhere in the scratchpad RAM by setting the stack pointer to the desired
location, although the lower bytes are normally used for working registers.
I/O Ports
The DS89C420 offers four 8-bit I/O ports. Each I/O port is represented by an SFR location, and can be
written or read. The I/O port has a latch that contains the value written by software.
Counter/Timers
Three 16-bit timer/counters are available in the DS89C420. Each timer is contained in two SFR locations
that can be read or written by software. The timers are controlled by other SFRs described in the “SFR
Bit Description” section of the Ultra-High-Speed Flash Microcontroller User’s Guide.
Serial Ports
The DS89C420 provides two UARTs that are controlled and accessed by SFRs. Each UART has an
address that is used to read and write the UART. The same address is used for both read and write
operations, and the read and write operations are distinguished by the instruction. Each UART is
controlled by its own SFR control register.
8 of 59