www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik twi mehrere Adressen empfangen


Autor: Sebastian Böhm (sebastian_)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

ich habe nen i2c Master der an verschiedene i2c Adressen Messages 
schickt.

Gibt es ne Möglichkeit das ein einzelner atmega alle Messages empfangen 
kann, egal an welche Zieladresse sie gehen?

Grüsse
Sebastian

Autor: Olaf Dreyer (Firma: O.D.I.S.) (dreyero)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Sebastian,

ja, der ATmega169 hat ein Register in dem Du einstellen kannst, welche 
Bits der Adresse als relevant empfangen werden sollen.

Gruß

Olaf

Autor: Sebastian Böhm (sebastian_)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

sieht so aus als wäre es mit USI-Geräten kein Problem, da da die Adresse 
in Software geprüft wird  und nicht von Chip selber.
Da der Atmega169 auch USI benutzt, würde mich mal interessieren welches 
Register du meinst ?

Weis jemand wo man ne TWI-USI Implementierung herbekommen kann die auf 
AVR-GCC läuft ? AVR312 compiliert auf avrgcc nicht.

Grüsse
Sebastian

Autor: Sebastian Böhm (sebastian_)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

hab rausgefunden das es mit dem TWAMR Register geht auf den nicht-USI 
chips.

Grüsse

Autor: Olaf Dreyer (Firma: O.D.I.S.) (dreyero)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Genau das TWAMR Register meinte ich. Ich meinte aber den ATmega168. 
Sorry.


Gruß

Olaf

Autor: Sebastian Böhm (sebastian_)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok, das klappt schonmal.

jetzt hab ich nur noch folgendes Problem: wie erkenne ich für welche 
Adresse die Daten gedacht waren ?
Ich hol die Daten aus TWDR, aber wo steht die Adresse ? Ich bekomm ja 
Daten für mehrere Adressen.

Grüsse
Sebastian

Autor: sebastian_ (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
habs rausgefunden:

die zieladresse steht in TWDR in phase wo man nen interrupt bekommt mit 
SR_SLA_ACK in TWSR. die muss man sich dann einfach merken, wenn dann der 
interrupt mit SR_PREV_ACK kommt mit den daten, weis man für wen die 
waren.

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.