mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik I2C Bus-Probleme


Autor: I2C_user (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

habe folgendes Problem: bei der Kommunikation zwischen ATmega128 - 
eDIP240 und AD-Wandler ( AS1536 ) kommt es ab und zu zu Abbrüchen, so 
das sich der Bus völlig aufhängt. Das tritt undefiniert auf - meist aber 
wenn viel über den Bus geht - z.B Abfrage des AD's. Habe mit den Ossi 
mal mitgeschnitten was auf dem Bus passiert. Dabei ist fraglich woher 
die unsauberen Pegelzustände kommen können. Zeihe ich den AD ab, so ist 
die Verunreinigung geringer aber noch gut sichtbar. Als Pull-Up 
wiederstände habe ich 2.1K gewählt. Hat jemand ne Idee woran das liegen 
kann ?

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ I2C_user (Gast)

>habe folgendes Problem: bei der Kommunikation zwischen ATmega128 -
>eDIP240 und AD-Wandler ( AS1536 ) kommt es ab und zu zu Abbrüchen, so

Ich hoffe deine Ansteuerung per ATmega ist korrekt und arbeitet als Open 
Drain und NICHT als PushPull Ausgang. Denn du hast da komische Treppen 
im Signal, als ob einer nach HIGH pullt aber ein anderer nach LOW. Das 
kann bei I2C nicht auftreten. Soft-I2C greift nur auf die DDRx Register 
zu (und PINx). PORTx bleibt einmal eingestellt unangetastet. Oder nutzt 
du das TWI?

>mal mitgeschnitten was auf dem Bus passiert. Dabei ist fraglich woher

Was ist SCL und SDA?

MFg
Falk

Autor: I2C_user (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
die Treppen sind nicht immer - meist sieht der Bus gut aus.

Clock ist unten, Daten ( SDA ) oben.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ I2C_user (Gast)

>die Treppen sind nicht immer - meist sieht der Bus gut aus.

Es reicht wenn an einigen Stellen ein Programmierfehler drin ist . . .

MFG
Falk

Autor: I2C_user (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es wird die I2C-Library von Peter Fleury verwendet welche das TWI 
benutzt..
Also alles Open-Drain. Da arbeiten doch keine Ausgänge gegeneinander?!?

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn die Ansteuerung per Hardware-I2C erfolgt und die Software ein als 
funktionsfähig geltendes Modul ist, bleibt als Ursache nur die Hardware 
selber.

Weshalb jede Diskussion ohne genauere Kenntnis derselben etwas fruchtlos 
ist.

Autor: chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo, gewisse SW Implementationen, sollte sich der Bus aufhängen,
clocken einfach den Bus 9x zusätzlich, um aus dem Stall herauszukommen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.