Arduino I2C Wire.h - Adressproblem / Scanner

OP #7329725
Lesenswert?
• ▲
▼

Hallo zusammen,

ich arbeite gerade an einem Projekt, bei dem der Kunde am fertigen Gerät weitere Module einzeln hinzufügen können soll. Die Module werden standardmäßig mit der i2c Adresse 0x00 ausgeliefert und einzeln hinzugefügt. Der Master erkennt beim Hinzufügen einen Teilnehmer auf factory Adresse 0x00 und weißt ihm automatisch die nächst freie Adresse zu. Der Slave speichert seine neue Adresse im EEPROM und startet neu.

Soweit so gut und es funktioniert auch einwandfrei. Abgesehen von der Adresse 0x01. (Meine erste Adresse im Zuweisungssystem) Soll auch gerne so bleiben, da es aus programmier- und übersichtlichkeitsgründen so am einfachsten ist.

Sobald ein Teilnehmer mit der Adresse 0x01 auf dem BUS vorhanden ist, verlangsamt sich der i2c Scanner im Master auf 1 s pro gescannter Adresse und findet keine Teilnehmer mehr. Alle weiteren Adressen (0x02, 0x03 usw.) kann ich problemlos belegen, ohne dass es zu einem Problem führt.

BUS läuft sauber, ist Oszilliert und SDA/SCL per pull-up-poti eingereglt. Es ist auch keine Adressendopplung vorhanden.

Jemand eine Idee, was es hiermit auf sich haben könnte?

Antwort schreiben

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.

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.