2014-03-08

Arduino ile I2C EEPROM iletişim

Coşkun Taşdemir Arduino Kitabından I2C hakkında yararlı bulduğum bir paragraf.

EEPROM’a  YAZMA işlemi I2C kütüphanesi fonksiyonları ile aşağıdaki adımlarda gerçekleşir.

  1. Arduino I2C haberleşmesini  başlatır.
  2. Arduino veriyoluna EEPROM çipinin adresiyle beraber başlangıç işaretini yollar
  3. Arduino yazmak istediği bellekgözünün adresini yollar.(8 bit)
  4. Arduino yazmak istediği veriyi yollar.
  5. Arduino veriyoluna durdurma işaretini yollar.

I2C kütüphanesi  fonksiyonları ile EEPROM’dan OKUMA işlemi adımları aşağıdaki gibidir.

  1. Ardunio I2C haberleşmesini başlatır.
  2. Arduino veriyoluna  EEPROM çipinin adresiyle beraber başlangıç işaretiniyollar
  3. Arduino okumak istediği  bellek gözünün adresini yollar. (1 bayt)
  4. Arduino veriyoluna dudrudma işaretini yollar.
  5. Arduino EEPROM’a ver alma isteğini yollar. (1bayt)
  6. 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. 



Hiç yorum yok: