EEPROM’a YAZMA işlemi I2C kütüphanesi fonksiyonları ile aşağıdaki adımlarda gerçekleşir.
- Arduino I2C haberleşmesini başlatır.
- Arduino veriyoluna EEPROM çipinin adresiyle beraber başlangıç işaretini yollar
- Arduino yazmak istediği bellekgözünün adresini yollar.(8 bit)
- Arduino yazmak istediği veriyi yollar.
- Arduino veriyoluna durdurma işaretini yollar.
I2C kütüphanesi fonksiyonları ile EEPROM’dan OKUMA işlemi adımları aşağıdaki gibidir.
- Ardunio I2C haberleşmesini başlatır.
- Arduino veriyoluna EEPROM çipinin adresiyle beraber başlangıç işaretiniyollar
- Arduino okumak istediği bellek gözünün adresini yollar. (1 bayt)
- Arduino veriyoluna dudrudma işaretini yollar.
- Arduino EEPROM’a ver alma isteğini yollar. (1bayt)
- Arduino EEPROM veri yollayıncaya kadar bekler. Arduino gelen veriyi okur.
I2C üzerinden gelen yanıtta 4 mesajı olabilir:
0- Veri gönderimi başarılı
1- Gönderilmek istenen veri tampon boyutunu aşıyor
2- Adres gönderiminden sonra NACK (Not Acknowledged - Olumsuz Yanıt alındı)
3- Veri gönderiminden sonra NACK (Not Acknowledged - Olumsuz Yanıt alındı)
4- Başka bir hata oluştu.
1- Gönderilmek istenen veri tampon boyutunu aşıyor
2- Adres gönderiminden sonra NACK (Not Acknowledged - Olumsuz Yanıt alındı)
3- Veri gönderiminden sonra NACK (Not Acknowledged - Olumsuz Yanıt alındı)
4- Başka bir hata oluştu.
Hiç yorum yok:
Yorum Gönder