Hallo, Ich bin gerade bei den ersten Versuchen mit dem I2C-Bus. Leider funktioniert das ganze nicht so recht. Nachdem ich ein Start-Signal und das Device-Select byte (1010 0000) sende bekomme einfach kein Acknowledge vom EEPROM zurück. Ich hab mir folgende Funktion zum einlesen des Ack. geschrieben: getAck() { SDA = 1; delay(1); //10us warten SCL = 1; delay(1); SCL = 0; delay(1); //1 x Clock if(!SDA) anzAck++; } Ich sende dieses anzAck über die serielle Schnittstelle und bekomme immer 0 heraus, also kein Ack! Könnte mir vielleicht irgendjemand einen Tipp geben, was ich da falsch mache? Ich verwende das ST24C02 mit Pullup-Wdst. von 1k. Herzlichen Dank im Voraus, Alex
Device Adresse eindeutig auf 0 ? Pullup laut Datenblatt nicht kleiner als 2k2 Acknowledge ist eine 0
Hi Alex, soweit mir bekannt muß für gültige Daten (und Ack) SCL high sein??? Nach SCL = 0 ist Dein Ack schon wieder weg. Gruß, Klaus
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.