Rainbow Electronics W78C52D User Manual

Preliminary W78C52D
INT2
8-BIT MICROCONTROLLER
GENERAL DESCRIPTION
The W78C52D microcontroller supplies a wider frequency and supply voltage range than most 8-bit microcontrollers on the market. It is compatible with the industry standard 80C52 microcontroller series. The W78C52D contains four 8-bit bidirectional parallel ports, one extra 4-bit bit-addressable
The W78C52D microcontroller has two power reduction modes, idle mode and power-down mode, both of which are software selectable. The idle mode turns off the processor clock but allows for continued peripheral operation. The power-down mode stops the crystal oscillator for minimum power consumption. The external clock can be stopped at any time and in any state without affecting the processor.
FEATURES
Fully static design
Supply voltage of 4.5V to 5.5V
DC-40 MHz operation
256 bytes of on-chip scratchpad RAM
8K bytes of on-chip mask ROM
64K bytes program memory address space
64K bytes data memory address space
Four 8-bit bidirectional ports
Three 16-bit timer/counters
One full duplex serial port
Eight-source, two-level interrupt capability
One extra 4-bit bit-addressable I/O port
, INT3 ), three 16-bit timer/counters, one
Two additional external interrupts
Watchdog timer
EMI reduction mode
Built-in power management
Code protection
Packages:
DIP 40: W78C52D-24/40
PLCC 44: W78C52DP-24/40
QFP 44: W78C52DF-24/40
INT2 / INT3
Publication Release Date: December 1998
- 1 - Revision A1
PIN CONFIGURATIONS
40-Pin DIP (W78C52D)
T2, P1.0
T2EX, P1.1
P1.2 P1.3
P1.4 P1.5
P1.6
P1.7 RST
RXD, P3.0 TXD, P3.1
INT0, P3.2
INT1, P3.3
T0, P3.4 T1, P3.5
WR, P3.6
RD, P3.7
XTAL2 XTAL1
VSS
Preliminary W78C52D
VDD1 2
3 4
5 6 7
8 9
10 11
12 13
14 15
16 17
18 19
20
40 39
P0.0, AD0
38
P0.1, AD1
P0.2, AD2
37 36
P0.3, AD3
P0.4, AD4
35 34
P0.5, AD5
P0.6, AD6
33 32
P0.7, AD7
31
EA
30
ALE
29
PSEN
28
P2.7, A15
27
P2.6, A14
26
P2.5, A13
P2.4, A12
25 24
P2.3, A11
P2.2, A10
23 22
P2.1, A9
P2.0, A8
21
44-Pin PLCC (W78C52DP)
P
P
P
1
1
1
.
.
.
2
3
4
6543
7
P1.5
8
P1.6
9
P1.7
10
RST
RXD, P3.0
INT2, P4.3
TXD, P3.1
INT0, P3.2
INT1, P3.3
T0, P3.4
T1, P3.5
11
12
13 14
15
16 17
X
P
P
T
3
3
A
.
.
L
7
6
2
,
,
/
/
R
W
D
R
/
T
I
2
N
T
E
T
2
X
3
,
,
,
P
P
P
1
1
4
.
.
.
0
1
2
2 1 44 43 42
X
V
P
T
S
4
A
S
.
L
0
1
44-Pin QFP (W78C52DF)
/
T
I
2
N
T
E
A
A
A
A
D
D
D
D
3
1
2
0
,
,
,
,
P
P
P
P
0
0
V
0
0
.
.
D
.
.
3
1
D
2
0
40
41
39
P0.4, AD4
38
P0.5, AD5
37
P0.6, AD6
36
P0.7, AD7
35
EA
34
P4.1
33
ALE
32
PSEN
31
P2.7, A15
30
P2.6, A14
29
P2.5, A13
2827262524232221201918
P
P
P
P
P
2
2
2
2
2 . 0 , A 8
.
.
.
.
4
3
2
1
,
,
,
,
A
A
A
A
1
1
9
1
2
1
0
P1.5 P1.6
P1.7 RST
RXD, P3.0
TXD, P3.1
INT0, P3.2
INT1, P3.3
T0, P3.4 T1, P3.5
1 2
3
4 5
6 7 8 9 10
11
P 1 . 4
44
12
P 3 . 6 , / W R
P 1 . 3
43 42 41
P 3 . 7 , / R D
2
X
,
,
P
P
P
1
1
1
.
.
.
0
2
1
40 39 38 37 36 35
V
X
X
S
T
T
A
S
A
L
L
1
2
T 3 , P
V
4
D
.
D
2
P
P
2
4
.
.
0
0
, A 8
A
A
A
A
D
D
D
D
3
2
1
0
,
,
,
,
P
P
P
P
0
0
0
0
.
.
.
.
3
2
1
0
34
33
P0.4, AD4
32
P0.5, AD5
31
P0.6, AD6
30
P0.7, AD7
29
EA
28
P4.1INT2, P4.3
27
ALE
26
PSEN
25
P2.7, A15
24
P2.6, A14
23
P2.5, A13
22212019181716151413
P
P
P
P
2
2
2
2
.
.
.
.
3
4
2
1
,
,
,
,
A
A
A
A
1
1
1
9
2
1
0
- 2 -
Preliminary W78C52D
EA
PIN DESCRIPTION
P0.0−P0.7
Port 0, Bits 0 through 7. Port 0 is a bidirectional I/O port. This port also provides a multiplexed low order address/data bus during accesses to external memory.
P1.0−P1.7
Port 1, Bits 0 through 7. Port 1 is a bidirectional I/O port with internal pull-ups. Pins P1.0 and P1.1 also serve as T2 (Timer 2 external input) and T2EX (Timer 2 capture/reload trigger), respectively.
P2.7
P2.0
Port 2, Bits 0 through 7. Port 2 is a bidirectional I/O port with internal pull-ups. This port also provides the upper address bits for accesses to external memory.
P3.0−P3.7
Port 3, Bits 0 through 7. Port 3 is a bidirectional I/O port with internal pull-ups. All bits have alternate functions, which are described below:
PIN ALTERNATE FUNCTION
P3.0 RXD Serial Receive Data P3.1 TXD Serial Transmit Data P3.2
P3.3
P3.4 T0 Timer 0 Input P3.5 T1 Timer 1 Input P3.6
P3.7
INT0 External Interrupt 0
INT1 External Interrupt 1
WR Data Write Strobe
RD Data Read Strobe
P4.0
P4.3
Another bit-addressable bidirectional I/O port P4. P4.3 and P4.2 are alternative function pins. It can be used as general I/O pins or external interrupt input sources (
External Address Input, active low. This pin forces the processor to execute out of external ROM. This pin should be kept low for all W78C31 operations.
RST
Reset Input, active high. This pin resets the processor. It must be kept high for at least two machine cycles in order to be recognized by the processor.
ALE
Address Latch Enable Output, active high. ALE is used to enable the address latch that separates the address from the data on Port 0. ALE runs at 1/6th of the oscillator frequency. A single ALE pulse is skipped during external data memory accesses. ALE goes to a high impedance state during reset with a weak pull-up.
- 3 - Revision A1
INT2 / INT3 ).
Publication Release Date: December 1998
Preliminary W78C52D
PSEN
PSEN
Program Store Enable Output, active low. PSEN enables the external ROM onto the Port 0 address/data bus during fetch and MOVC operations.
reset with a weak pull-up.
XTAL1
Crystal 1. This is the crystal oscillator input. This pin may be driven by an external clock.
XTAL2
Crystal 2. This is the crystal oscillator output. It is the inversion of XTAL1.
VSS, VDD
Power Supplies. These are the chip ground and positive supplies.
BLOCK DIAGRAM
goes to a high impedance state during
P1.0
~
P1.7
P3.0 ~ P3.7
P4.0 ~ P4.3
INT2
INT3
Port
1
Port
Port
Port 1
Latch
ACC
Interrupt
Timer
2
Timer
0
Timer
1
UART
3
4
Port 3
Latch
Port 4 Latch
XTAL1 PSENALE GNDVDDRSTXTAL2
Oscillator
PSW
Instruction
Decoder
&
Sequencer
Bus & Clock
Controller
ALU
Reset Block
T2T1
SFR RAM
Address
256 bytes
RAM & SFR
8K bytes
ROM
Watchdog
Timer
B
Stack
Pointer
Power control
Port 0
Latch
DPTR
Temp Reg.
PC
Incrementor
Addr. Reg.
Port 2 Latch
Port 0
Port 2
P0.0 ~ P0.7
P2.0 ~ P2.7
- 4 -
Preliminary W78C52D
FUNCTIONAL DESCRIPTION
The W78C52D architecture consists of a core controller surrounded by various registers, five general purpose I/O ports, 256 bytes of RAM, three timer/counters, one watchdog timer and a serial port. The processor supports 111 different opcodes and references both a 64K program address space and a 64 K data storage space.
Timers 0, 1, and 2
Timers 0, 1, and 2 each consist of two 8-bit data registers. These are called TL0 and TH0 for Timer 0, TL1 and TH1 for Timer 1, and TL2 and TH2 for Timer 2. The TCON and TMOD registers provide control functions for timers 0, 1. The T2CON register provides control functions for Timer 2. RCAP2H and RCAP2L are used as reload/capture registers for Timer 2. The operations of Timer 0 and Timer 1 are the same as in the W78C51. Timer 2 is a special feature of the W78C52D: it is a 16-bit timer/counter that is configured and controlled by the T2CON register. Like Timers 0 and 1, Timer 2 can operate as either an external event counter or as an internal timer, depending on the setting of bit C/T2 in T2CON. Timer 2 has three operating modes: capture, auto-reload, and baud rate generator. The clock speed at capture or auto-reload mode is the same as that of Timers 0 and 1.
Clock
The W78C52D is designed to be used with either a crystal oscillator or an external clock. Internally, the clock is divided by two before it is used. This makes the W78C52D relatively insensitive to duty cycle variations in the clock.
Crystal Oscillator
The W78C52D incorporates a built-in crystal oscillator. To make the oscillator work, a crystal must be connected across pins XTAL1 and XTAL2. In addition, a load capacitor must be connected from each pin to ground, and a resistor must also be connected from XTAL1 to XTAL2 to provide a DC bias when the crystal frequency is above 24 MHz.
External Clock
An external clock should be connected to pin XTAL1. Pin XTAL2 should be left unconnected. The XTAL1 input is a CMOS-type input, as required by the crystal oscillator. As a result, the external clock signal should have an input one level of greater than 3.5 volts when V
= 5 volts.
DD
Power Management
Idle Mode
The idle mode is entered by setting the IDL bit in the PCON register. In the idle mode, the internal clock to the processor is stopped. The peripherals and the interrupt logic continue to be clocked. The processor will exit idle mode when either an interrupt or a reset occurs.
Power-down Mode
When the PD bit of the PCON register is set, the processor enters the power-down mode. In this mode all of the clocks, including the oscillator are stopped. The only way to exit power-down mode is by a reset.
Reset
The external RESET signal is sampled at S5P2. To take effect, it must be held high for at least two machine cycles while the oscillator is running. An internal trigger circuit in the reset line is used to
Publication Release Date: December 1998
- 5 - Revision A1
Preliminary W78C52D
INT2
deglitch the reset line when the W78C52D is used with an external RC network. The reset logic also has a special glitch removal circuit that ignores glitches on the reset line. During reset, the ports are initialized to FFH, the stack pointer to 07H, PCON (with the exception of bit 4) to 00H, and all of the other SFR registers except SBUF to 00H. SBUF is not reset.
New Defined Peripheral
In order to be more suitable for I/O, an extra 4-bit bit-addressable port P4 and two external interrupts
INT2 , INT3 have been added to either the PLCC or QFP package. And description follows:
1.
Two additional external interrupts, interrupt 0 and 1 in the standard 80C52. The functions/status of these interrupts are determined/shown by the bits in the XICON (External Interrupt Control) register. The XICON register is bit-addressable but is not a standard register in the standard 80C52. Its address is at 0C0H. To set/clear bits in the XICON register, one can use the "SETB (/CLR) bit" instruction. For example, "SETB 0C2H" sets the EX2 bit of XICON.
***XICON - external interrupt control (C0H)
PX3: External interrupt 3 priority high if set
EX3: External interrupt 3 enable if set
IE3: If IT3 = 1, IE3 is set/cleared automatically by hardware when interrupt is detected/serviced
IT3: External interrupt 3 is falling-edge/low-level triggered when this bit is set/cleared by software
PX2: External interrupt 2 priority high if set
EX2: External interrupt 2 enable if set
IE2: If IT2 = 1, IE2 is set/cleared automatically by hardware when interrupt is detected/serviced
IT2: External interrupt 2 is falling-edge/low-level triggered when this bit is set/cleared by software
Eight-source interrupt informations:
/ INT3
INT2 and INT3 , whose functions are similar to those of external
PX3 EX3 IE3 IT3 PX2 EX2 IE2 IT2
INTERRUPT
SOURCE
External Interrupt 0 03H 0 (highest) IE.0 TCON.0
Timer/Counter 0 0BH 1 IE.1 -
External Interrupt 1 13H 2 IE.2 TCON.2
Timer/Counter 1 1BH 3 IE.3 -
Serial Port 23H 4 IE.4 -
Timer/Counter 2 2BH 5 IE.5 -
External Interrupt 2 33H 6 XICON.2 XICON.0
External Interrupt 3 3BH 7 (lowest) XICON.6 XICON.3
VECTOR
ADDRESS
POLLING
SEQUENCE WITHIN
PRIORITY LEVEL
ENABLE
REQUIRED
SETTINGS
INTERRUPT
TYPE
EDGE/LEVEL
- 6 -
Loading...
+ 12 hidden pages