www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR TWI / 1 Master->mehrere Slaves


Autor: Hellsing (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mahlzeit...
Ich sitze hier seit zwei Tagen vor einem ungewöhnlichem Problem.

Ich möchte eine TWI Kommunikation mit einem Master zu mehreren Slaves 
aufbauen. Als Master dient ein ATMega328P als Slaves zurzeit 3 ATMega168 
und ein ATMega644P. Nun zu meinem Problem. Wenn ich alle 4 Slaves im 
Einsatz habe hängt sich der TWI Bus auf. Das Problem konnte ich genauer 
einkreisen. Und zwar, ich schicke ein Datenbyte zu den Slaves ob per 
General Call oder einzel Adressierung , wenn das Datenbyte einen Wert 
von >127 hat, also das MSB high ist, geht alles Problemlos. Jedoch 
darunter (<=127) hängt sich der Bus auf. Jetzt kommt das kuriose wenn 
ich den ATMega644P alleine benutze gehts ,ebenso wenn ich die 3!! 
ATMega168 benutze läuft es stundenlang perfekt wie es sein soll. Nur im 
Zusammenspiel aller 4 Slaves tritt dieses Problem auf. Alle Slaves haben 
eine Identische Software, die sich nur von der Adresse 
unterscheidet(1-4).

Als TWI Library benutze ich die originale von Atmel und der Master hängt 
bei der WHILE-Schleife der "TWI_Start_Transceiver_With_Data" Funktion.

Ist so ein Problem bekannt oder ein Einzelfall ?

MFG Hellsing

Autor: Hellsing (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Problem gefunden dank Analyzer. Die TWI Frequenz war wohl einfach zu 
schnell. Der Standard Wert beim ATMEL TWI ist ein Teiler von 12 was bei 
einem Takt von 8MHz eine TWI Frequenz von 200kHz und bei 20MHz eine 
Frequenz von 500kHz entspricht. Habe es nun auf eine TWI Frequenz von 
100kHz eingestellt und es läuft prima.

BB Hellsing

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.