Intel 80C188XL, 80C186XL user manual 9.2.1Initialization Sequence

Models: 80C186XL 80C188XL

1 405
Download 405 pages 42.62 Kb
Page 240
Image 240
9.2.1Initialization Sequence

TIMER/COUNTER UNIT

Register Name:Timer Maxcount Compare Register

Register Mnemonic: T0CMPA, T0CMPB, T1CMPA, T1CMPB, T2CMPA

Register Function:Contains timer maximum count value.

15

T

T

T

T

C

C

C

C

1

1

1

1

5

4

3

2

 

 

 

 

T

C

1

1

TT C C

19

T

C

8

T

T

T

T

C

C

C

C

7

6

5

4

 

 

 

 

 

 

 

0

T

T

T

T

C

C

C

C

3

2

1

0

 

 

 

 

A1300-0A

Bit

Bit Name

Reset

Function

Mnemonic

State

 

 

 

 

 

 

TC15:0

Timer

XXXXH

Contains the maximum value a timer will count

 

Compare

 

to before resetting its Count register to zero.

 

Value

 

 

 

 

 

 

Figure 9-8. Timer Maxcount Compare Registers

9.2.1Initialization Sequence

When initializing the Timer/Counter Unit, the following sequence is suggested:

1.If timer interrupts will be used, program interrupt vectors into the Interrupt Vector Table.

2.Clear the Timer Count register. This must be done before the timer is enabled because the count register is undefined at reset. Clearing the count register ensures that counting begins at zero.

3.Write the desired maximum count value to the Timer Maxcount Compare register. For dual maximum count mode, write a value to both Maxcount Compare A and B.

4.Program the Timer Control register to enable the timer. When using Timer 2 to prescale another timer, enable Timer 2 last. If Timer 2 is enabled first, it will be at an unknown point in its timing cycle when the timer to be prescaled is enabled. This results in an unpredictable duration of the first timing cycle for the prescaled timer.

9-11

Page 240
Image 240
Intel 80C188XL, 80C186XL user manual 9.2.1Initialization Sequence