안녕하세요,
atmega1280을 사용하는데요.
외부 메모리가 없는 관계로 내부eeprom를 사용하고자 합니다.
그런데, 처음 데이타값을 저장하고 나서..read할 경우에 어느 정도의 딜레이를 주고 나서, 다음 명령을 처리하면 되나요?
delay를 없애고 처리하니까..데이타값을 읽어오지를 못하더라구요.
그래서, 최소한의 딜레이를 어느 정도 주면 되는지 알고 싶네요.
답변 부탁드립니다.
unsigned char Eeprom_Read(unsigned int address) /* read from EEPROM */
{
while(EECR & (1<<EEPE)); // if EEPE = 1, wait
EEAR = address; // if EEPE = 0, read
EECR |= (1<<EERE); // EERE = 1
return EEDR; // return data
}
void Eeprom_Write(unsigned int address, unsigned char byte) /* write to EEPROM */
{
while(EECR & (1<<EEPE)); // if EEPE = 1, wait
EEAR = address; // if EEPE = 0, write
EEDR = byte;
EECR |= (1<<EEMPE); // EEMPE = 1
EECR |= (1<<EEPE); // EEPE = 1
}