I2C macht mich wahnsinnig

OP #2627880
Lesenswert?

Ich hab einen beschleunigungssensor mit I2C an einen arduino angehängt, 
mit der wire library. Hardware I2C. Geht bestens. Dann hab ich dasselbe 
mit peter fleury's software I2C (i2cmaster.h und i2cmaster.s) auf einen 
atmega168 probiert. Geht nicht. Immer nur nack's.

Die signale hab ich mit meinem DSO aufgezeichnet. Oben die 
funktionierende arduino variante, unten die bitbang variante. Was ist da 
anders ?

Hilfe !
Angehängte Dateien:
Gast #2627994
Lesenswert?

Oliver J. schrieb:
> Dass man es bei I2C so genau nehmen muss, ist mir neu, aber lasse mich
> gerne eines Besseren belehren.

Eigentlich gibt es viel Spielraum im Timing. Trotzdem habe ich mal einen 
Master in Händen gehabt, bei dem vereinzelte Slaves NACK geliefert 
haben. Die Data Hold Time mit 0n wurde von ihm voll ausgereizt. Es kann 
natürlich auch am Slave gelegen haben - aber mit einem anderen 
Masterchip gab es nie Probleme.

Das sieht zwar bei dem Bild des TO auch so aus, allerdings ist die 
Auflösung zu ungenau und von einem Logikanalyzer aufgenommen. Da gehen 
solche Feinheiten verloren.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren