English
Language : 

DS80C310_1 Datasheet, PDF (8/21 Pages) Dallas Semiconductor – High-Speed Micro
DS80C310
DUAL DATA POINTER
Data memory block moves can be accelerated using
the DS80C310 Dual Data Pointer (DPTR). The stan-
dard 8032 DPTR is a 16–bit value that is used to
address off–chip data RAM or peripherals. In the
DS80C310, the standard data pointer is called DPTR
and is located at SFR addresses 82h and 83h. These
are the standard locations. No modification of standard
code is needed to use DPTR. The new DPTR is located
at SFR 84h and 85h and is called DPTR1. The DPTR
Select bit (DPS) chooses the active pointer and is
located at the lsb of the SFR location 86h. No other bits
in register 86h have any effect and are set to 0. The user
switches between data pointers by toggling the lsb of
register 86h. The increment (INC) instruction is the fast-
est way to accomplish this. All DPTR–related instruc-
tions use the currently selected DPTR for any activity.
Therefore only one instruction is required to switch from
a source to a destination address. Using the Dual Data
Pointer saves code from needing to save source and
destination addresses when doing a block move. Once
loaded, the software simply switches between DPTR0
and 1. The relevant register locations are as follows.
DPL 82h
DPH 83h
DPL1 84h
DPH1 85h
DPS 86h
Low byte original DPTR
High byte original DPTR
Low byte new DPTR
High byte new DPTR
DPTR Select (lsb)
STOP MODE ENHANCEMENTS
Setting bit 1 of the Power Control register (PCON; 87h)
invokes the Stop mode. Stop mode is the lowest power
state since it turns off all internal clocking. The ICC of a
standard Stop mode is approximately 1 µA (but is speci-
fied in the Electrical Specifications). The CPU will exit
Stop mode from an external interrupt or a reset condi-
tion. Internally generated interrupts are not useful since
they require clocking activity.
The DS80C310 allows a resume from Stop using a
INT2–5, which are edge triggered interrupts. The
start–up timing is managed by an internal crystal
counter. A delay of 65,536 clocks occurs to give the
crystal enough time to start and stabilize.
TIMER RATE CONTROL
There is one important difference between the
DS80C310 and 8051 regarding timers. The original
8051 used 12 clocks per cycle for timers as well as for
machine cycles. The DS80C310 architecture normally
uses 4 clocks per machine cycle. However, in the area
of timers and serial ports, the DS80C310 will default to
12 clocks per cycle on reset. This allows existing code
with real–time dependencies such as baud rates to
operate properly.
If an application needs higher speed timers or serial
baud rates, the user can select individual timers to run at
the 4 clock rate. The Clock Control register (CKCON;
8Eh) determines these timer speeds. When the relevant
CKCON bit is a logic 1, the DS80C310 uses 4 clocks per
cycle to generate timer speeds. When the bit is a 0, the
DS80C310 uses 12 clocks for timer speeds. The reset
condition is a 0. CKCON.5 selects the speed of Timer 2.
CKCON.4 selects Timer 1 and CKCON.3 selects Timer
0. Note that unless a user desires very fast timing, it is
unnecessary to alter these bits. Note that the timer con-
trols are independent.
POWER ON RESET
The DS80C310 will hold itself in reset during a power up
until 65,536 clock cycles have elapsed. The power–on
reset used by the DS80C310 differs somewhat from
other members of the High–Speed Microcontroller fam-
ily. The crystal oscillator may start anywhere between
1.0V and 4.5V, but is not specified. This eliminates the
need for an RC reset circuit. For voltage specific preci-
sion brownout detection, an external component will be
needed. When the device goes through a power on
reset, the POR flag will be set in the WDCON (D8h) reg-
ister at bit 6.
INTERRUPTS
The DS80C310 provides 10 interrupt sources with two
priority levels. Software can assign high or low priority to
all sources. All interrupts that are new to the 8051 have a
lower natural priority than the originals.
PERIPHERAL OVERVIEW
The DS80C310 provides the same peripheral functions
as the standard 80C32. It is compatible with the
DS80C320 but does not offer all of the peripherals.
031296 8/21