
357
2545M–AVR–09/07
ATmega48/88/168
34. Errata
34.1 Errata ATmega48
The revision letter in this section refers to the revision of the ATmega48 device.
34.1.1 Rev. D
•
Interrupts may be lost when writing the timer registers in the asynchronous timer
1. Interrupts may be lost when writing the timer registers in the asynchronous timer
If one of the timer registers which is synchronized to the asynchronous timer2 clock is writ-
ten in the cycle before an overflow interrupt occurs, the interrupt may be lost.
Problem Fix/Workaround
Always check that the Timer2 Timer/Counter register, TCNT2, does not have the value 0xFF
before writing the Timer2 Control Register, TCCR2, or Output Compare Register, OCR2.
The only safe time to write to any of the Timer2 registers in asynchronous mode is in a com-
pare interrupt routine where the compare register is not 0xFF, or if the compare register is
0xFF, after a delay of at least one asynchronous clock cycle from the start of the interrupt.
34.1.2 Rev. C
•
Reading EEPROM when system clock frequency is below 900 kHz may not work
• Interrupts may be lost when writing the timer registers in the asynchronous timer
1. Reading EEPROM when system clock frequency is below 900 kHz may not work
Reading Data from the EEPROM at system clock frequency below 900 kHz may result in
wrong data read.
Problem Fix/Workaround
Avoid using the EEPROM at clock frequency below 900 kHz.
2. Interrupts may be lost when writing the timer registers in the asynchronous timer
If one of the timer registers which is synchronized to the asynchronous timer2 clock is writ-
ten in the cycle before an overflow interrupt occurs, the interrupt may be lost.
Problem Fix/Workaround
Always check that the Timer2 Timer/Counter register, TCNT2, does not have the value 0xFF
before writing the Timer2 Control Register, TCCR2, or Output Compare Register, OCR2.
The only safe time to write to any of the Timer2 registers in asynchronous mode is in a com-
pare interrupt routine where the compare register is not 0xFF, or if the compare register is
0xFF, after a delay of at least one asynchronous clock cycle from the start of the interrupt.
34.1.3 Rev. B
•
Interrupts may be lost when writing the timer registers in the asynchronous timer
1. Interrupts may be lost when writing the timer registers in the asynchronous timer
If one of the timer registers which is synchronized to the asynchronous timer2 clock is writ-
ten in the cycle before an overflow interrupt occurs, the interrupt may be lost.