I2C Slave

Gast #341237
Hallo an die AVR Familie

Ich habe eine kleine Frage.
Ich möchte intelligente I2C-Slave Module bauen, die sich im Standard
I2C Bus befinden (wie z.b. PCF8574, 24C02, usw Umgebung).

Die Module sollen z.b. mehrere 10BIT Analogeingänge besitzen,
Phasenanschnittsteuerungen usw.
Die Soll- und Istwerte werden vom/zum Mastercontroller gesendet.

Nun meine eigentliche Frage.
Hat schon jemand die I2C Slave Funktion z.b. im tiny26 bzw Mega8
mit USI bzw. TWI verwendet?
Wenn ja ist es problemlos zu implementieren, oder muss man etwas
bestimmtes beaachten? Bzw. würdet Ihr von der Lösung abraten?


Mein Problem ist, dass ich so rasch als möglich das Layout entwickeln
muss, und erst später Zeit habe mich um die Software zu kümmern.

Für hilfreiche Kommentare wäre ich dankbar.
Gast #341238
Wenn der Master sich an den I2C-Standart hält, kein Problem.

D.h. der Master muß warten, wenn der Slave den SCL auf low hält, bis er
den Interrupt abgearbeitet hat.


Dumme I2C-Chips haben dagegen nur einen SCL-Eingang, da kann der Master
losrotzen so schnell er kann.


Peter
Gast #341242
Beim Mega8(TWI) hats problemlos funktioniert, beim Tiny2313 (USI) bin
ich grandios gescheitert, habe auch im Netz nicht wirklich was zu
dieser Problematik gefunden, hier kam auch nichts.
Lösung: nur die Start-condition per Interrupt ausgewertet, den Rest per
Software gemacht. War, wie immer, unter Zeitdruck, läuft aber so
problemlos.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 20 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.