beautypg.com

128 khz internal oscillator, Clock prescale register – clkpr, Attiny2313 – Rainbow Electronics ATtiny2313 User Manual

Page 28

background image

28

ATtiny2313

2543A–AVR–08/03

128 kHz Internal
Oscillator

The 128 kHz Internal Oscillator is a low power Oscillator providing a clock of 128 kHz.
The frequency is nominal at 3 V and 25

°

C. This clock may be selected as the system

clock by programming the CKSEL Fuses to “0110 - 0111”.

When this clock source is selected, start-up times are determined by the SUT Fuses as
shown in Table 11.

Clock Prescale Register –
CLKPR

• Bit 7 – CLKPCE: Clock Prescaler Change Enable

The CLKPCE bit must be written to logic one to enable change of the CLKPS bits. The
CLKPCE bit is only updated when the other bits in CLKPR are simultaniosly written to
zero. CLKPCE is cleared by hardware four cycles after it is written or when CLKPS bits
are written. Rewriting the CLKPCE bit within this time-out period does neither extend the
time-out period, nor clear the CLKPCE bit.

• Bits 3..0 – CLKPS3..0: Clock Prescaler Select Bits 3 - 0

These bits define the division factor between the selected clock source and the internal
system clock. These bits can be written run-time to vary the clock frequency to suit the
application requirements. As the divider divides the master clock input to the MCU, the
speed of all synchronous peripherals is reduced when a division factor is used. The divi-
sion factors are given in Table 12.

To avoid unintentional changes of clock frequency, a special write procedure must be
followed to change the CLKPS bits:

1.

Write the Clock Prescaler Change Enable (CLKPCE) bit to one and all other bits
in CLKPR to zero.

2.

Within four cycles, write the desired value to CLKPS while writing a zero to
CLKPCE.

Interrupts must be disabled when changing prescaler setting to make sure the write pro-
cedure is not interrupted.

The CKDIV8 Fuse determines the initial value of the CLKPS bits. If CKDIV8 is unpro-
grammed, the CLKPS bits will be reset to “0000”. If CKDIV8 is programmed, CLKPS bits
are reset to “0011”, giving a division factor of 8 at start up. This feature should be used if
the selected clock source has a higher frequency than the maximum frequency of the
device at the present operating conditions. Note that any value can be written to the
CLKPS bits regardless of the CKDIV8 Fuse setting. The Application software must
ensure that a sufficient division factor is chosen if the selcted clock source has a higher

Table 11. Start-up Times for the 128 kHz Internal Oscillator

SUT1..0

Start-up Time from Power-

down and Power-save

Additional Delay from

Reset

Recommended Usage

00

6 CK

14CK

BOD enabled

01

6 CK

14CK + 4 ms

Fast rising power

10

6 CK

14CK + 64 ms

Slowly rising power

11

Reserved

Bit

7

6

5

4

3

2

1

0

CLKPCE

CLKPS3

CLKPS2

CLKPS1

CLKPS0

CLKPR

Read/Write

R/W

R

R

R

R/W

R/W

R/W

R/W

Initial Value

0

0

0

0

See Bit Description