Datasheet
33
7766E–AVR–04/10
ATmega16U4/ATmega32U4
The temperature sensitivity is quite linear but as said previously depends on the process. To
determine its slope, the frequency must be measured at two temperatures. The temperature
sensor of the ATmega16U4/ATmega32U4 allows such an operation, that is detailed on Section
24.6.1 ”Sensor Calibration” on page 300. It is then possible to calibrate the oscillator frequency
in function of the temperature measured.
Note that this oscillator is used to time EEPROM and Flash write accesses, and these write
times will be affected accordingly. If the EEPROM or Flash are written, do not calibrate to more
than 8.8 MHz. Otherwise, the EEPROM or Flash write may fail.
6.5.2 Oscillator Control Register – RCCTRL
Bits 7..1 – Reserved
Do not set these bits. Bits should be read as ‘0’.
Bit 0– RCFREQ: RC Oscillator Frequency Select
When this bit is cleared (default value), the RC Oscillator output frequency is set to 8 MHz.
When the bit is set, the RC output frequency is 1 MHz. Note that the OSCCAL value has the
same effect on both 8 MHz and 1 MHz output modes (~0.4% / step).
6.6 External Clock
The device can utilize a external clock source as shown in Figure 6-3. To run the device on an
external clock, the CKSEL Fuses must be programmed as shown in Table 6-1.
Figure 6-3. External Clock Drive Configuration
When this clock source is selected, start-up times are determined by the SUT Fuses as shown in
Table 6-9.
Bit 76543210
-------RCFREQRCCTRL
Read/WriteRRRRRRRR/W
Initial Value00000000
NC
EXTERNAL
CLOCK
SIGNAL
XTAL2
XTAL1
GND