I2C-Übertragung: Fehlendes 9. CLK-Signal für NACK

Dies ist das deutsche Forum für alle Themen um den IO-Warrior. Beiträge bitte nur in Deutsch.

Moderator: Guido Körber

Post Reply
Eneas
Posts: 5
Joined: Wed Dec 13, 2006 9:51 pm

I2C-Übertragung: Fehlendes 9. CLK-Signal für NACK

Post by Eneas »

Hallo,

an den I2C-Bus des IO-Warrior 24 habe ich eine Atmel AVR Controller als Slave angeschlossen.

Das Schreiben von Daten (Warrior zum AVR) geht fehlerfrei, das Auslesen von Daten funktioniert im Prinzip auch (die Daten kommen beim Warrior korrekt an), führt aber auf AVR Seite zum einem I2C-Bus Fehler (fehlerhafte Start/Stop Condition). Dieser muss in der Firmware speziell abgefangen werden, ansonsten ist der I2C-Bus völlig blockiert. Das Auslesen von einem PCF8574 geht fehlerfrei.

Mit dem Oszi habe ich die Datenübertragung aufgezeichnet (SDA & SCL) und dabei festgestellt, das seitens Warrior das 9. CLK-Bit für ein NACK (keine weiteren Daten) nicht gesendet wird.

Kann das sein ? Ist ein PCF8574 hier fehlertolerant und übergeht den korrekten Abschluß der Übertragung durch den Master ?

Ich habe mir jetzt nicht die Mühe gemacht und eine Aufzeichnung mit einem anderen I2C-Master gestartet. Evtl. kann mir hier schon vorab jemanden was dazu sagen.

Viele Grüße,
Bernhard
Guido Körber
Site Admin
Posts: 2879
Joined: Tue Nov 25, 2003 10:25 pm
Location: Germany/Berlin
Contact:

Post by Guido Körber »

In Leserichtung gibt es auf dem IIC kein ACK oder NACK, der Master darf die Übertragung jederzeit durch eine Stop-Condition abbrechen und genau das tut der IO-Warrior auch.
Post Reply