Forum: Mikrocontroller und Digitale Elektronik IIC-Spezifikation einhalten mit ATmega


von Patt :. (patt)


Lesenswert?

Hallo,

hoffe hier kann mir jemand weiterhelfen.
Kann es sein, dass die Hardware-TWI-Schnittstelle nicht die
Spezifikation des IIC-Buses einhält?
Ich meine, dass das SDA-Signal mindestenz 5µs noch anliegen muss wenn
SCL schon low ist. tHD;Date data hold time.( Bei 100Khz )
Hab nichts gefunden, wo man da drehen kann. OK Software-Schnittstelle 
machen. Hab aber schon ein größeres Program, das ich nicht unbedingt 
mehr umstricken will.

Ich bin auf das Problem gekommen, weil ich nen anderen IIC-Bus 
Teilnehmer habe, der das leider sehr genau einhält und Probleme macht 
wenn das nicht so ist. Vielleicht kann mir jemand helfen. Bin für jede 
HILFE sehr dankbar.

Gruss patt

von holger (Gast)


Lesenswert?

>Ich bin auf das Problem gekommen, weil ich nen anderen IIC-Bus
>Teilnehmer habe,

Was für einen? Vieleicht ist der ja nicht IIC konform.

von Patt :. (patt)


Lesenswert?

Hallo,


das ist ein DVB-S2-Dodulator-IC. Der hält sich
an die Spezifikation. Wir haben den selber nachgemessen und das ganze 
auch vom Hersteller noch "schriftlich" bekommen.

Gruss patt

von Peter D. (peda)


Lesenswert?

Patt :-) schrieb:
> Ich meine, dass das SDA-Signal mindestenz 5µs noch anliegen muss wenn
> SCL schon low ist. tHD;Date data hold time.( Bei 100Khz )

Also laut offizieller NXP I2C-Spezifikation (S.32, Table 5) ist tHD;DAT 
min = 0ns.
Die 5µs gelten nur für den CBUS (3-Wire).
Auch ein original NXP I2C-Master, wie z.B. P80C552 macht nur knapp über 
0ns bei 24MHz CPU-Takt (0,3µs bei 12MHz).
5µs sind schon rein logisch nicht möglich, da ja SCL nach 4,7µs wieder 
high ist.

Wenn Dein IC also mehr als 0ns benötigt, hält er die I2C-Spezifikation 
nicht ein.
Da hilft wohl nur, sich in SW das nicht I2C konforme Timing selber zu 
stricken. Der Hersteller wird kaum seinen IC korrigieren.


Peter

von patt (Gast)


Lesenswert?

Hallo,


erstmal Danke für die Hilfe!
So wie es aussieht, hab ich die Spezifikation falsch gelesen :-(
Dann wird wohl mein Problem was anderes sein und ich muss
weitersuchen.

DANKE!!!!!!!

Gruss patt

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
Noch kein Account? Hier anmelden.