beautypg.com

3 mode 2 - 8-bit auto-reload timer/counter, 4 mode 3 - 8-bit split timer, 3 mode 2 – 8-bit auto-reload timer/counter – Rainbow Electronics AT89LP216 User Manual

Page 29: 4 mode 3 – 8-bit split timer

background image

29

3621A–MICRO–6/06

AT89LP216 [Preliminary]

14.3

Mode 2 – 8-bit Auto-Reload Timer/Counter

Mode 2 configures the Timer register as an 8-bit Counter (TL1) with automatic reload, as shown
in

Figure 14-3

. Overflow from TL1 not only sets TF1, but also reloads TL1 with the contents of

TH1, which is preset by software. The reload leaves TH1 unchanged. Mode 2 operation is the
same for Timer/Counter 0.

Figure 14-3. Timer/Counter 1 Mode 2: 8-bit Auto-Reload

Note:

RH1/RL1 are not required by Timer 1 during Mode 2 and may be used as temporary storage
registers.

14.4

Mode 3 – 8-bit Split Timer

Timer 1 in Mode 3 simply holds its count. The effect is the same as setting TR1 = 0. Timer 0 in
Mode 3 establishes TL0 and TH0 as two separate counters. The logic for Mode 3 on Timer 0 is
shown in

Figure 14-4

. TL0 uses the Timer 0 control bits: C/T, GATE, TR0, INT0, and TF0. TH0 is

locked into a timer function (counting machine cycles) and takes over the use of TR1 and TF1
from Timer 1. Thus, TH0 now controls the Timer 1 interrupt. While Timer 0 is in Mode 3, Timer 1
will still obey its settings in TMOD but cannot generate an interrupt.

Mode 3 is for applications requiring an extra 8-bit timer or counter. With Timer 0 in Mode 3, the
AT89LP216 can appear to have three Timer/Counters. When Timer 0 is in Mode 3, Timer 1 can
be turned on and off by switching it out of and into its own Mode 3. In this case, Timer 1 can still
be used by the serial port as a baud rate generator or in any application not requiring an
interrupt.

Figure 14-4. Timer/Counter 0 Mode 3: Two 8-bit Counters

Note:

RH0/RL0 are not required by Timer 0 during Mode 3 and may be used as temporary storage
registers.

Mode 2:

Time-out Period

256

TH

0

(

)

Oscillator Frequency

-------------------------------------------------------

TPS

1

+

(

)

×

=

OSC

T1 Pin

TR1

GATE

TF1

TL1

(8 Bits)

TH1

(8 Bits)

Control

Reload

Interrupt

INT0 Pin

C/T = 0

C/T = 1

÷TPS

Control

Interrupt

Control

Interrupt

(8 Bits)

(8 Bits)

C/T = 0

C/T =1

T0 Pin

GATE

INT0 Pin

÷TPS

÷TPS