ATMEL AT89C51-20JC, AT89C51-20AI, AT89C51-20AC, AT89C51-16QI, AT89C51-16QC Datasheet

...
Features
Compatible with MCS-51™ Products
4K Bytes of In-System Reprogrammable Flash Memory
– Endurance: 1,000 Write/Erase Cycles
Fully Static Operation: 0 Hz to 24 MHz
Three-Level Program Memory Lock
128 x 8-Bit Internal RAM
32 Programmable I/O Lines
Two 16-Bit Timer/Counters
Six Interrupt Sources
Programmable Serial Channel
Low Power Idle and Power Down Modes
Description
The AT89C51 is a low-power, high-performance CMOS 8-bit microcomputer with 4K bytes of Flash P rogrammable a nd Erasable R ead Only Memo ry (PEROM). The device is manufactured using Atmel’s high density nonvolatile memory technology and is compatible with the industry standard MCS-51™ instruction set and pinout. The on-chip Flash allows the program memory to be reprogrammed in-system or by a con­ventional nonvolatile memory programmer. By combi ning a versati le 8-bit CPU with Flash on a monolithic chip, the Atme l AT89C51 is a pow erful micro computer whic h provides a highly flex ible and co st effe ctive solu tion to many embedd ed con trol app li­cations.
Pin Configurations
PQFP/TQFP
INDEX CORNER
P1.5 P1.6 P1.7
RST
(RXD) P3.0
(TXD) P3.1 ()P3.2INT0 ()P3.3INT1
(T0) P3.4 (T1) P3.5
NC
P1.4
44
1 2 3 4 5 6 7 8 9 10 11
13
12
()P3.6WR
P1.3
P1.2
424340
41
15
14
XTAL2
()P3.7RD
P1.0
P1.1
16
GND
XTAL1
39
17
38
18
GND
VCC
37
19
(A8) P2.0
P0.0 (AD0)
(A9) P2.1
P0.1 (AD1)
36
20
(A10) P2.2
P0.2 (AD2)
35
21
(A11) P2.3
P0.3 (AD3)
34
22
(A12) P2.4
33 32
31 30 29 28 27 26 25 24 23
P0.4 (AD4) P0.5 (AD5) P0.6 (AD6) P0.7 (AD7)
EA/VPP
NC
ALE/PROG PSEN
P2.7 (A15) P2.6 (A14) P2.5 (A13)
PDIP
P1.0
1
P1.1
2
P1.2
3
P1.3
4
P1.4
5
P1.5
6 7
P1.6 P1.7
8
RST (RXD) P3.0 (TXD) P3.1
()P3.2INT0 ()P3.3INT1
(T0) P3.4 (T1) P3.5
()P3.6WR
()P3.7RD P2.3 (A11)
XTAL2 P2.2 (A10) XTAL1 P2.1 (A9)
9 10 11 12 13 14 15 16 17 18 19
GND P2.0 (A8)
20
PLCC
INDEX CORNER
P1.5 P1.6 P1.7
RST
(RXD) P3.0
NC
(TXD) P3.1 ()P3.2INT0 ()P3.3INT1
(T0) P3.4 (T1) P3.5
P1.1
P1.2
P1.4
P1.3
65444
2
3
7 8 9 10 11 12 13 14 15 16 17 29
21
181920 24
22
NC
P1.0
1
23
40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21
VCC
252827
(continued)
V
CC
P0.0 (AD0) P0.1 (AD1) P0.2 (AD2) P0.3 (AD3) P0.4 (AD4) P0.5 (AD5) P0.6 (AD6) P0.7 (AD7)
EA/VPP ALE/PROG PSEN
P2.7 (A15) P2.6 (A14) P2.5 (A13) P2.4 (A12)
P0.2 (AD2)
P0.1 (AD1)
P0.3 (AD3)
P0.0 (AD0)
424340
41
P0.4 (AD4)
39
P0.5 (AD5)
38
P0.6 (AD6)
37
P0.7 (AD7)
36
EA/VPP
35
NC
34 33
ALE/PROG
32
PSEN
31
P2.7 (A15)
30
P2.6 (A14)
26
P2.5 (A13)
8-Bit Microcontroller with 4K Bytes Flash
AT89C51
()P3.6WR
()P3.7RD
XTAL2
XTAL1
GND
NC
(A9) P2.1
(A8) P2.0
(A10) P2.2
(A12) P2.4
(A11) P2.3
0265F-A–12/97
4-29
Block Diagram
V
CC
GND
RAM ADDR.
REGISTER
B
REGISTER
ACC
TMP2
P0.0 - P0.7
PORT 0 DRIVERS
RAM
PORT 0
LATCH
TMP1
PORT 2 DRIVERS
PORT 2
LATCH
POINTER
P2.0 - P2.7
FLASH
STACK
PROGRAM
ADDRESS
REGISTER
BUFFER
PSEN
ALE/PROG
EA / V
RST
PC
ALU
INTERRUPT, SERIAL PORT,
AND TIMER BLOCKS
PSW
TIMING
AND
PP
CONTROL
OSC
INSTRUCTION
REGISTER
PORT 1
LATCH
PORT 1 DRIVERS
P1.0 - P1.7
PORT 3
LATCH
PORT 3 DRIVERS
P3.0 - P3.7
INCREMENTER
PROGRAM
COUNTER
DPTR
4-30
AT89C51
AT89C51
The AT89C51 provides th e foll owing stan dard features : 4K bytes of Flash, 128 bytes of RAM, 32 I/O lines, two 16-bi t timer/counters, a five vector two-level interrupt architecture, a full duplex serial port, on-chip oscillator and clock cir­cuitry. In addition, the AT89C51 is designed with static logic for operation down to zero frequency and supports two software selectable power saving modes. The Idle Mode stops the CPU while allowing the RAM, timer/counters, serial port and interrupt system to continue functioning. The Power Down Mode saves the RAM contents b ut freezes the oscillator disabling all other chip functions until the next hardware reset.
Pin Description
V
CC
Supply voltage.
GND
Ground.
Port 0
Port 0 is an 8-bit open drain bidirectional I/O port. As an output port each pin can sink eight TTL inputs. When 1s are written to port 0 pins, the pins can be used as high­impedance inputs.
Port 0 may also be configured to be the multiplexed low­order address/data bus during accesses to ex ternal pro­gram and data memory . In this m ode P0 ha s int ernal pul­lups.
Port 0 also rece ives th e code by tes dur ing Fla sh prog ram­ming, and outputs the code bytes during program verifica­tion. External pu llups are requ ired dur ing pro gram ver ifica­tion.
Port 1
Port 1 is an 8-bit bidire ction al I/O por t w ith inter nal pullu ps. The Port 1 output buffers can sink/source four TTL inputs. When 1s are written to Port 1 pins they are pulled high by the internal pullups and can be used as inputs. As inputs , Port 1 pins that are externally being pulled low will source current (I
Port 1 also receives the low-order address bytes during Flash programming and verification.
Port 2
Port 2 is an 8-bit bidire ction al I/O por t w ith inter nal pullu ps. The Port 2 output buffers can sink/source four TTL inputs. When 1s are written to Port 2 pins they are pulled high by the internal pullups and can be used as inputs. As inputs , Port 2 pins that are externally being pulled low will source current (I
Port 2 emits the high-order address byte during fetches from external program memory and during accesses to external data memory that use 16-bit addre sses ( MOVX @ DPTR). In this ap plication it uses strong internal pull ups
) because of the internal pullups.
IL
) because of the internal pullups.
IL
when emitting 1s. During accesses to external data mem­ory that use 8-bit addresses (MOVX @ RI), Port 2 emits the contents of the P2 Special Function Register.
Port 2 also receives the high-order address bits and some control signals during Flash programming and verification.
Port 3
Port 3 is an 8-bit bidirectional I/O port with interna l pullups. The Port 3 output buffers can sink/source four TTL inputs. When 1s are written to Port 3 pins they are pulled high by the internal pullups and can be used as inputs. As inputs, Port 3 pins that are externally being pulled low will source current (I
) because of the pullups.
IL
Port 3 also serv es t he fun ctions of v arious spe cial f eatures of the AT89C51 as listed below:
Port Pin Alternate Functions
P3.0 RXD (serial input port) P3.1 TXD (serial output port) P3.2 INT0 P3.3 INT1 (external in terrupt 1) P3.4 T0 (timer 0 external input) P3.5 T1 (timer 1 external input) P3.6 WR P3.7 RD
(external interrupt 0)
(external data memory write strobe)
(external data memory read strobe)
Port 3 also receives some control signals for Flash pro­gramming and verification.
RST
Reset input. A high on this pin for two machine cycles while the oscillator is running resets the device.
ALE/PROG
Address Latch Enable output pulse for latching the low byte of the address during accesses to external memory. This pin is also the program pulse input (PROG
) during Flash
programming. In normal operation ALE is emitted at a constant rate of 1/6
the oscillator fr equen cy, and ma y be us ed for ext ernal tim­ing or clocking purposes. Note, however, that one ALE pulse is skipped during each access to external Data Mem­ory.
If desired, ALE operation can be disabled by setting bit 0 of SFR location 8 EH. With the bit se t, ALE is activ e only du r­ing a MOVX or MOVC instruction. Otherwise, the pin is weakly pulled high. Setting the ALE-disable bit has no effect if the microcontroller is in external execution mode.
PSEN
Program Store Enable is the read strobe to external pro­gram memory.
4-31
When the AT89C51 is executing code from external pro­gram memory, PSEN
cycle, except that two PSEN
is activated twice each machine
activations are skipped during
each access to external data memory.
/V
EA
PP
External Access Enable. EA must be strapped to GND in order to enable the device to fetch code from external pro­gram memory locations starting at 0000H up to FFFFH. Note, however, that if lock bit 1 is programmed, EA
will be
internally latched on reset.
should be strapped to VCC for internal program execu-
EA tions.
This pin also receives the 12-volt programming enable volt­age (V 12-volt V
) during Flash programming, for parts that require
PP
.
PP
XTAL1
Input to the inverting os cillator ampl ifier and input to the internal clock operating circuit.
XTAL2
Output from the inverting oscillator amplifier.
Oscillator Characteristics
XTAL1 and XTAL2 are the input and output, resp ectively, of an inverting amplifier which can be configured for use as an on-chip oscillator, as shown in Figure 1. Either a quartz crystal or ceramic resonator may be used. To drive the device from an external clock source, XTAL2 should be left unconnected while XTAL1 is driven as shown in Figure 2. There are no requirements on the duty cycle of the external clock signal, since the input to the internal clocking circuitry is through a divide-by-two flip-flop, but minimum and maxi­mum voltage high and low time specifications must be observed.
It should be noted that when idle is terminated by a hard ware reset, the devic e normally res umes progr am execu­tion, from where it le ft off, up to tw o machi ne c ycles before the internal reset algorithm takes control. On-chip hardware inhibits access to interna l RAM in this event, but access to the port pins is not inhibited. To eliminate the possibility of an unexpected write to a port pin when Idle is terminated by reset, the instruction following the one that invokes Idle should not be one th at writes to a p ort pin or to external memory.
Figure 1.
Note: C1, C2 = 30 pF ± 10 pF for Cry s tals
Figure 2.
Oscillator Connections
C2
XTAL2
C1
XTAL1
GND
= 40 pF ± 10 pF for Ceramic Resonators
External Clock Drive Configuration
Idle Mode
In idle mode, the CPU puts itself to sleep while all the on­chip peripherals remain active. The mode is invoked by software. The content of the on-chip RAM and all the spe­cial functions registers remain unchanged during this mode. The idle mode can be terminated by any en abled interrupt or by a hardware reset.
Status of External Pins During Idle and Power Down Modes
Mode Program Memory ALE PSEN PORT0 PORT1 PORT2 PORT3
Idle Internal 1 1 Data Data Data Data Idle External 1 1 Float Data Address Data Po w er Do wn Internal 0 0 Data Data Data Data Power Down External 0 0 Float Data Data Data
4-32
AT89C51
AT89C51
Power Down Mode
In the power down mode the oscillator is stopped, and the instruction t hat invo kes po wer down is th e last instru ction executed. The on-chip RAM and Special Function Regis­ters retain their values until the power d own m ode is ter mi­nated. The only exit fr om power do wn is a hard ware reset . Reset redefines the SFRs but does not change the on-c hip RAM. The reset should not be activated before V restored to its normal operating level and must be held active long enough to allow the oscillator to restart and sta­bilize.
CC
Program Memory Lock Bits
On the chip are three lock bits which can be left unpro­grammed (U) or can be programmed (P) to obtain the addi­tional features listed in the table below:
When lock bit 1 is programmed, the logic level at the EA is sampled and latched during reset. I f the dev ice is po w­ered up without a reset, the latch initi alizes to a random
is
value, and holds that value until reset is activated. It is nec­essary that the latched value of EA the current logic level at that pi n in order for the de vice to function properly.
be in agreement with
Lock Bit Protection Modes
Program Lock Bits Protection Type
LB1 LB2 LB3
1 U U U No program lock features. 2 P U U MOVC instructions executed from external program memory are disabled from fetching code
bytes from in ternal memory, EA
Flash is disabled. 3 P P U Same as mode 2, also verify is disabled. 4 P P P Same as mode 3, also external execution is disabled.
is sampled and la tched on reset, an d further progr amming of the
pin
Programming the Flash
The AT89C51 is normally shipped with the on-chip Flash memory array in th e erased st ate (that i s, con tents = FFH) and ready to be programmed. The programming interface accepts either a high-voltage (12-volt) or a low-voltage
) program enable signal. The low voltage program-
(V
CC
ming mode provides a convenient way to program the AT89C51 inside the user’s system, while the high-voltage programming mode is compatible with conventional third party Flash or EPROM programmers.
The AT89C51 is shipped with either the high-voltage or low-voltage programming mode enabled. The respective top-side marking and device signature codes are listed in the following table.
VPP = 12V V
Top-Side Mark AT89C51
xxxx yyww
Signature (030H)=1EH
(031H)=51H (032H)=FFH
The AT89C51 code memo ry array is pr ogrammed byte- by­byte in eithe r progr amming mode.
To program any non ­blank byte in the on-chip Flash Mem or y , the ent ire memory must be erased using the Chip Erase Mode.
= 5V
PP
AT8 9C51 xxxx-5 yyww
(030H)=1EH (031H)=51H (032H)=05H
Programming Algorithm:
Before programming the AT89C51, the addres s, data and cont rol sig nals sho uld be set up according to the Flash programming mode table and Figures 3 and 4. To program the AT89C51, take the follow­ing steps.
1. Input the desired memory location on the address
lines.
2. Input the appropriate data byte on the data lines.
3. Activate the correct combination of control signals.
4. Raise EA
/VPP to 12V for the high-voltage programming
mode.
5. Pulse ALE/PROG
once to program a byte in the Flash array or the lock bits. The byte-write cycle is self-timed and typically takes no more tha n 1.5 ms. Repeat ste ps 1 through 5, changing the address and data for the entire array or until the end of the object file is reached.
Polling:
Data
The AT89C51 features Data
Polling to indi­cate the end of a write cycle. During a write cycle, an attempted read of the last byte written will result in the com­plement of the written datum on PO.7. Once the write cycle
has been completed, tr ue d ata a re va lid on all outputs, and the next cycle may begin . Data
Polling may begi n any time
after a write cycle has been initiated.
Ready/Busy
be monitored by the RDY /B SY
:
The progress of byte programming can also
output signal. P3.4 is p ull ed low after ALE goes high during programmin g to indic ate BUSY. P3.4 is pull ed high again when programming is done to indicate READY.
4-33
Program Verify:
programmed, the programmed code data can be read back via the address an d d ata l ine s for verification. The l oc k bi ts cannot be verified dir ectly. Verificat ion of the lock bits is achieved by observing that their features are enabled.
Chip Erase:
by using the proper combinati on of control s ignals and by holding ALE/PROG with all “1”s. The chip erase operation must be executed before the code memory can be re-programmed.
Reading the Signature Bytes:
read by the same procedure as a normal verification of locations 030H,
031H, and 032H, except that P3.6 and P3.7 must be pulled to a logic low. The values returned are as follows.
If lock bits LB1 and LB2 have not been
The entire Flash array is erased electrically
low for 10 ms. The code array is written
The signature bytes are
(030H) = 1EH indicates manufactured by Atmel (031H) = 51H indicates 89C51 (032H) = FFH indicates 12V programming (032H) = 05H indicates 5V programming
Programming Interface
Every code byte in the Flash array c an be written and the entire array can be erased by using the app ropriat e combi ­nation of control signals. The write operation cycle is s elf­timed and once initiated, will automatically time itself to completion.
All major programmi ng ve ndors of fer worl dwide s upport fo r the Atmel microcontroller series. Please contact your local programming vendor for the appropriate software revision.
Flash Programming Modes
Mode
Write Code Data H L H/12V L H H H
Read Code Data H L H H L L H H Write Lock Bit - 1 H L H/12V H H H H
Bit - 2 H L H/12V H H L L
Bit - 3 H L H/12V H L H L
Chip Erase H L H/12V H L L L
Read Signature Byte H L H H L L L L
Note: 1. Chip Erase requires a 10-ms PROG pulse.
RST PSEN ALE/PROG EA/V
(1)
PP
P2.6 P2.7 P3.6 P3.7
4-34
AT89C51
AT89C51
Figure 3.
SEE FLASH
PROGRAMMING
MODES ABLE
3-24 MHz
Programming the Flash
ADDR.
OOOOH/OFFFH
T
A0 - A7
A8 - A11
AT89C51
P1 P2.0 - P2.3 P2.6 P2.7 P3.6 P3.7 XTAL2 EA
XTAL1 GND
V
P0
ALE
RST
PSEN
Figure 4.
+5V
Verifying the Flash
+5V
AT89C51
CC
PGM DATA
PROG
V/V
IH PP
3-24 MHz
V
IH
ADDR.
OOOOH/0FFFH
SEE FLASH
PROGRAMMING
MODES ABLE
A0 - A7
A8 - A11
T
P1 P2.0 - P2.3 P2.6 P2.7 P3.6 P3.7 XTAL2 EA
1
XTAL GND
V
P0
ALE
RST
PSEN
CC
PGM DATA (USE 10K PULLUPS)
V
IH
V
IH
Flash Programming and Verification Characteristics
TA = 0°C to 70°C, VCC = 5.0 ± 10%
Symbol Parameter
(1)
V
PP
(1)
I
PP
1/t
CLCL
t
AVGL
t
GHAX
t
DVGL
t
GHDX
t
EHSH
t
SHGL
(1)
t
GHSL
t
GLGH
t
AVQV
t
ELQV
t
EHQZ
t
GHBL
t
WC
Programming Enable Voltage Programming Enable Current Oscillator Frequency Address Setup to PROG Low Address Hold After PROG Data Setup to PROG Low Data Hold After PROG P2.7 (ENABLE) High to V
PP
VPP Setup to PROG Low VPP Hold After PROG PROG Width Address to Data Valid ENABLE Low to Data Valid Data Float After ENABLE PROG High to BUSY Low
Byte Write Cycle Time
Note: 1. Only used in 12-volt programming mode.
Min Max Units
11.5 12.5 V
324MHz
48t
CLCL
48t
CLCL
48t
CLCL
48t
CLCL
48t
CLCL
10 µs 10 µs
1110µs
048t
1.0 mA
48t
CLCL
48t
CLCL CLCL
1.0 µs
2.0 ms
4-35
Flash Programming and Verification Waveforms - High Voltage Mode (V
P1.0 - P1.7 P2.0 - P2.3
PORT 0
ALE/PROG
EA/V
PP
t
AVGL
t
SHGL
PROGRAMMING
ADDRESS
DATA IN
t
DVGL
V
PP
t
GLGH
t
GHDX
t
GHAX
t
GHSL
LOGIC 1 LOGIC 0
VERIFICATION
ADDRESS
t
AVQV
DATA OUT
PP
= 12V)
P2.7
t
EHSH
t
ELQV
t
EHQZ
(ENABLE)
t
GHBL
P3.4
(RDY/BSY)
BUSY
t
WC
READY
Flash Programming and Verification Waveforms - Low Voltage Mode (V
P1.0 - P1.7 P2.0 - P2.3
PORT 0
ALE/PROG
EA/V
PP
t
AVGL
t
SHGL
PROGRAMMING
ADDRESS
DATA IN
t
DVGL
t
GLGH
t
GHDX
t
GHAX
LOGIC 1 LOGIC 0
VERIFICATION
ADDRESS
t
AVQV
DATA OUT
PP
= 5V)
4-36
P2.7
(ENABLE)
P3.4
(RDY/BSY)
AT89C51
t
EHSH
t
GHBL
t
ELQV
BUSY
t
WC
READY
t
EHQZ
Absolute Maximum Ratings*
AT89C51
Operating Temperature..................................-55°C to +125°C
*NOTICE: Stresses beyond those listed under “Absolute
Maximum Ratings” may cause permanent dam-
Storage Temperature..................................... -65°C to +150°C
age to the dev ice . This is a s tress rating only an d
functional oper ation of the device at these o r any Voltage on Any Pin
with Respect to Ground.....................................-1.0V to +7.0V
other conditions beyond those indicated in the
operational sections of this specification is not
implied. Exposure to absolute maximum rating
Maximum Operating Voltage.............................................6.6V
conditions f or e xtended periods ma y af fect de vice
reliability .
DC Output Current......................................................15.0 mA
DC Characteristics
TA = -40°C to 85°C, VCC = 5.0V ± 20% (unless otherwise noted)
Symbol Parameter Condition Min Max Units
V
IL
V
IL1
V
IH
V
IH1
V
OL
V
OL1
V
OH
V
OH1
I
IL
I
TL
I
LI
RRST Reset Pulldown Resistor 50 300 K C
IO
I
CC
Notes: 1. Under steady state (non-transient) conditions, IOL must be external ly limited as follows:
2. Minimum V
Input Low Voltage (Except EA)-0.50.2 V Input Low Voltage (EA)-0.50.2 V Input High V oltage (Except XTAL1, RST) 0.2 V Input High Voltage (XTAL1, RST) 0.7 V Output Low Voltage Output Low Voltage
(Port 0, ALE, PSEN) Output High Voltage
(Ports 1,2,3, ALE, PSEN
Output High Voltage (Port 0 in External Bus Mode)
Logical 0 Input Current (Ports 1,2,3) VIN = 0.45V -50 Logical 1 to 0 Transition Current
(Ports 1,2,3) Input Leakage Current (Port 0, EA)0.45 < VIN < V
Pin Capacitance Test Freq. = 1 MHz, TA = 25°C 10 pF Power Supply Current Active Mode, 12 MHz 20 mA
Power Down Mode
Maximum I Maximum I
per port pin: 10 mA
OL
per 8-bit port: Port 0: 26 mA
OL
(1)
(Ports 1,2,3) IOL = 1.6 mA 0.45 V
(1)
)
(2)
I
= 3.2 mA 0.45 V
OL
I
= -60 µA, VCC = 5V ± 10% 2.4 V
OH
I
= -25 µA 0.75 V
OH
I
= -10 µA0.9 VCCV
OH
IOH = -800 µA, VCC = 5V ± 10% 2.4 V I
= -300 µA 0.75 V
OH
I
= -80 µA0.9 VCCV
OH
VIN = 2V, VCC = 5V ± 10% -650
CC
Idle Mode, 12 MHz 5 mA VCC = 6V 100 V
= 3V 40
CC
+ 0.9 V
CC
CC
CC
CC
- 0.1 V
CC
- 0.3 V
CC
+ 0.5 V
CC
V
+ 0.5 V
CC
±
10
Ports 1, 2, 3: 15 mA Maximum total I If I
exceeds the test condition, VOL may exceed the related specification. Pins are not guaranteed to sink current greater
OL
for all output pins: 71 mA
OL
than the listed test conditions.
for Power Down is 2V.
CC
V
V
µ
A
µ
A
µ
A
µ
A
µ
A
4-37
AC Characteristics
(Under Operating Conditions; Load Capacitance for Port 0, ALE/PROG, and PSEN = 100 pF; Load Capacitance for all other outputs = 80 pF)
External Program and Data Memory Characteristics
Symbol Parameter 12 MHz Oscillator 16 to 24 MHz Oscillator Units
Min Max Min Max
1/t
CLCL
t
LHLL
t
AVLL
t
LLAX
t
LLIV
t
LLPL
t
PLPH
t
PLIV
t
PXIX
t
PXIZ
t
PXAV
t
AVIV
t
PLAZ
t
RLRH
t
WLWH
t
RLDV
t
RHDX
t
RHDZ
t
LLDV
t
AVDV
t
LLWL
t
AVWL
t
QVWX
t
QVWH
t
WHQX
t
RLAZ
t
WHLH
Oscillator Frequency 0 24 MHz ALE Pulse Width 127 2t Address Valid to ALE Low 43 t Address Hold After ALE Low 48 t ALE Low to Valid Instruction In 233 4t ALE Low to PSEN Low 43 t PSEN Pulse Width 205 3t PSEN Low to Valid Instruction In 145 3t
-40 ns
CLCL
-13 ns
CLCL
-20 ns
CLCL
-65 ns
CLCL
-13 ns
CLCL
-20 ns
CLCL
-45 ns
CLCL
Input Instruction Hold After PSEN 00ns Input Instruction Float After PSEN 59 t PSEN to Address Valid 75 t
-8 ns
CLCL
Address to Valid Instruction In 312 5t
-10 ns
CLCL
-55 ns
CLCL
PSEN Low to Address Float 10 10 ns RD Pulse Width 400 6t WR Pulse Width 400 6t RD Low to Valid Data In 252 5t
-100 ns
CLCL
-100 ns
CLCL
-90 ns
CLCL
Data Hold After RD 00ns Data Float After RD 97 2t ALE Low to Valid Data In 517 8t Address to Valid Data In 585 9t ALE Low to RD or WR Low 200 300 3t Address to RD or WR Low 203 4t Data Valid to WR T ransition 23 t Data Valid to WR High 433 7t Data Hold After WR 33 t
-50 3t
CLCL
-75 ns
CLCL
-20 ns
CLCL
-120 ns
CLCL
-20 ns
CLCL
-28 ns
CLCL
-150 ns
CLCL
-165 ns
CLCL
+50 ns
CLCL
RD Low to Address Float 0 0 ns RD or WR High to ALE High 43 123 t
-20 t
CLCL
+25 ns
CLCL
4-38
AT89C51
External Program Memory Read Cycle
t
LHLL
ALE
t
AVLL
t
LLPL
PSEN
t
LLAX
PORT 0
PORT 2
A0 - A7 A0 - A7
t
AVIV
A8 - A15
External Data Memory Read Cycle
t
PLAZ
t
LLIV
t
PLIV
t
PXIZ
t
PXIX
INSTR IN
t
PLPH
t
PXAV
AT89C51
A8 - A15
ALE
PSEN
RD
PORT 0
PORT 2
t
LHLL
t
LLDV
t
LLWL
t
LLAX
t
AVLL
A0 - A7 FROM RI OR DPL
t
AVWL
P2.0 - P2.7 OR A8 - A15 FROM DPH
t
AVDV
t
RLAZ
t
WHLH
t
RLRH
t
RLDV
DATA IN INSTR IN
t
RHDZ
t
RHDX
A0 - A7 FROM PCL
A8 - A15 FROM PCH
4-39
External Data Memory Write Cycle
t
LHLL
ALE
PSEN
t
LLWL
t
WLWH
t
WHLH
WR
PORT 0
PORT 2
t
AVLL
A0 - A7 FROM RI OR DPL
P2.0 - P2.7 OR A8 - A15 FROM DPH
t
AVWL
t
LLAX
t
QVWX
External Clock Drive Waveforms
t
0.7 V
CC
CHCX
CC
0.45V
V - 0.5V
CC
0.2 V - 0.1V
t
t
QVWH
DATA OUT INSTR IN
t
CLCH
t
CLCX
WHQX
A0 - A7 FROM PCL
A8 - A15 FROM PCH
t
CHCX
t
CLCL
t
CHCL
External Clock Drive
Symbol Parameter Min Max Units
1/t t
CLCL
t
CHCX
t
CLCX
t
CLCH
t
CHCL
4-40
CLCL
Oscillator Frequency 0 24 MHz Clock Period 41.6 ns High Time 15 ns Low Time 15 ns Rise Time 20 ns Fall Time 20 ns
AT89C51
AT89C51
Serial Port Timing: Shift Register Mode Test Conditions
(VCC = 5.0 V ± 20%; Load Capacitance = 80 pF)
Symbol Parameter 12 MHz Osc Variable Oscillator Units
Min Max Min Max
t
XLXL
t
QVXH
t
XHQX
t
XHDX
t
XHDV
Shift Register Mode Timing Waveforms
Serial Port Clock Cycle Time 1.0 12t Output Data Setup to Clock Rising Edge 700 10t Output Data Hold After Clock Rising Edge 50 2t
CLCL
-133 ns
CLCL
-117 ns
CLCL
Input Data Hold After Clock Rising Edge 0 0 ns Clock Rising Edge to Input Data Valid 700 10t
-133 ns
CLCL
s
µ
INSTRUCTION
WRITE TO SBUF
OUTPUT DATA
INPUT DATA
ALE
CLOCK
CLEAR RI
AC Testing Input/Output Waveforms
V - 0.5V
CC
0.45V
0
t
QVXH
0.2 V + 0.9V
CC
TEST POINTS
0.2 V - 0.1V
CC
1
t
XHDV
2
t
XLXL
t
XHQX
0
VALID VALIDVALID VALIDVALID VALIDVALID VALID
1
(1)
Note: 1. AC Inputs during testing are driv en at VCC - 0.5V for
a logic 1 and 0.45V for a logic 0. Timing measure­ments are made at V
min. for a logic 1 and VIL
IH
max. for a logic 0.
3
2
t
XHDX
Float Waveforms
V
LOAD
4
3
5
4
6
5
7
6
8
7
SET TI
SET RI
(1)
V
V
LOAD
LOAD
+ 0.1V
- 0.1V
Timing Reference
Points
- 0.1V
V
OL
+ 0.1V
V
OL
Note: 1. For timing purposes, a port pin is no longer floating
when a 100 mV change fro m load voltage occurs. A port pin begins to float when 100 mV change from the loaded V
OH/VOL
lev el occ urs.
4-41
Ordering Information
Speed
(MHz)
12 5V ± 20% AT89C51-12AC 44A Commercial
16 5V ± 20% AT89C51-16AC 44A Commercial
20 5V ± 20% AT89C51-20AC 44A Commercial
Power
Supply Ordering Code Package Operation Range
AT89C51-12JC 44J (0°C to 70°C) AT89C51-12PC 40P6 AT89C51-12QC 44Q AT89C51-12AI 44A Industrial AT89C51-12JI 44J (-40°C to 85°C) AT89C51-12PI 40P6 AT89C51-12QI 44Q AT89C51-12AA 44A A utomotive AT89C51-12JA 44J (-40°C to 105°C) AT89C51-12PA 40P6 AT89C51-12QA 44Q
AT89C51-16JC 44J (0°C to 70°C) AT89C51-16PC 40P6 AT89C51-16QC 44Q AT89C51-16AI 44A Industrial AT89C51-16JI 44J (-40°C to 85°C) AT89C51-16PI 40P6 AT89C51-16QI 44Q AT89C51-16AA 44A A utomotive AT89C51-16JA 44J (-40°C to 105°C) AT89C51-16PA 40P6 AT89C51-16QA 44Q
AT89C51-20JC 44J (0°C to 70°C) AT89C51-20PC 40P6 AT89C51-20QC 44Q AT89C51-20AI 44A Industrial AT89C51-20JI 44J (-40°C to 85°C) AT89C51-20PI 40P6 AT89C51-20QI 44Q
4-42
AT89C51
Ordering Information
AT89C51
Speed
(MHz)
24 5V ± 20% AT89C51-24AC 44A Commercial
Power
Supply Ordering Code Package Operation Range
AT89C51-24JC 44J (0°C to 70°C) AT89C51-24PC 44P6 AT89C51-24QC 44Q AT89C51-24AI 44A Industrial AT89C51-24JI 44J (-40°C to 85°C) AT89C51-24PI 44P6 AT89C51-24QI 44Q
Package Type
44A 44 Lead, Thin Plastic Gull Wing Quad Flatpack (TQFP) 44J 44 Lead, Plastic J-Leaded Chip Carrier (PLCC) 40P6 40 Lead, 0.600” Wide, Plastic Dual Inline Package (PDIP) 44Q 44 Lead, Plastic Gull Wing Quad Flatpack (PQFP)
4-43
Loading...