ATMEGA169 ATMEL [ATMEL Corporation], ATMEGA169 Datasheet - Page 21

no-image

ATMEGA169

Manufacturer Part Number
ATMEGA169
Description
8-bit Microcontroller with 16K Bytes In-System Programmable Flash
Manufacturer
ATMEL [ATMEL Corporation]
Datasheet

Available stocks

Company
Part Number
Manufacturer
Quantity
Price
Part Number:
ATMEGA169-16AI
Manufacturer:
Atmel
Quantity:
10 000
Part Number:
ATMEGA169-16AI SL709
Manufacturer:
Atmel
Quantity:
10 000
Part Number:
ATMEGA169-16AI SL710
Manufacturer:
Atmel
Quantity:
10 000
Part Number:
ATMEGA169-16AU
Manufacturer:
Atmel
Quantity:
10 000
Part Number:
ATMEGA169A-AU
Manufacturer:
Atmel
Quantity:
10 000
Part Number:
ATMEGA169P-15AT
Manufacturer:
PANASONIC
Quantity:
301
Part Number:
ATMEGA169P-15AT
Manufacturer:
ATMEL/爱特梅尔
Quantity:
20 000
Part Number:
ATMEGA169P-16AU
Manufacturer:
ATMEL/爱特梅尔
Quantity:
20 000
Part Number:
ATMEGA169PA-MU
Manufacturer:
ATMEL
Quantity:
31
Part Number:
ATMEGA169PAAU
Manufacturer:
INF
Quantity:
4 275
EEPROM Write During Power-
down Sleep Mode
Preventing EEPROM
Corruption
2514P–AVR–07/06
The next code examples show assembly and C functions for reading the EEPROM. The
examples assume that interrupts are controlled so that no interrupts will occur during
execution of these functions.
When entering Power-down sleep mode while an EEPROM write operation is active, the
EEPROM write operation will continue, and will complete before the Write Access time
has passed. However, when the write operation is completed, the clock continues run-
ning, and as a consequence, the device does not enter Power-down entirely. It is
therefore recommended to verify that the EEPROM write operation is completed before
entering Power-down.
During periods of low V
age is too low for the CPU and the EEPROM to operate properly. These issues are the
same as for board level systems using EEPROM, and the same design solutions should
be applied.
An EEPROM data corruption can be caused by two situations when the voltage is too
low. First, a regular write sequence to the EEPROM requires a minimum voltage to
operate correctly. Secondly, the CPU itself can execute instructions incorrectly, if the
supply voltage is too low.
E E P R O M d a t a c o r r u p t i o n c a n e a s i l y b e a v o i d e d b y f o l l o w i n g t h i s d e s i g n
recommendation:
Assembly Code Example
C Code Example
EEPROM_read:
unsigned char EEPROM_read(unsigned int uiAddress)
{
}
; Wait for completion of previous write
sbic EECR,EEWE
rjmp EEPROM_read
; Set up address (r18:r17) in address register
out
out
; Start eeprom read by writing EERE
sbi
; Read data from Data Register
in
ret
/* Wait for completion of previous write */
while(EECR & (1<<EEWE))
/* Set up address register */
EEAR = uiAddress;
/* Start eeprom read by writing EERE */
EECR |= (1<<EERE);
/* Return data from Data Register */
return EEDR;
;
EEARH, r18
EEARL, r17
EECR,EERE
r16,EEDR
CC,
the EEPROM data can be corrupted because the supply volt-
ATmega169/V
21

Related parts for ATMEGA169