I2C Scanner an MC

OP #3812844
Lesenswert?
• ▲
▼
Hallo Zusammen,
ich möchte gerne einen I²C Bus Scanner programmieren. Der Scanner sollte 
eine Vielzahl von ICs und Adressmöglichkeiten abdecken. Über eine PC 
Software sollen dann die angeschlossenen Geräte dargestellt werden.
Unter anderem wären das:
-  PCF8574(A)
-  PCF8591
-  PCF8583
-  DS1307
-  MCP23008
-  MCP23017
-  Speicher 2408
-  MAX518
Meine Gedanken wären dass ich das Bauteil über die Adresse anspreche und 
das ACK abwarte. Was mein Ihr geht das einfacher?

Grüße
Ingo
#3812956
Lesenswert?
• ▲
▼
Ingo Schick schrieb:

> Meine Gedanken wären dass ich das Bauteil über die Adresse anspreche und
> das ACK abwarte. Was mein Ihr geht das einfacher?

Noch einfacher?
Was ist denn daran schwierig?
Jede I2C-Lib hat eine Funktion, mit der man die Kommunikation auf einer 
Adresse startet. Da es nur 127 unterschiedliche Adressen gibt (ich 
ignoriere mal die 10-Bit Erweiterung) bedeutet das in einer Schleife 
diese 127 Adresse durchprobieren. Entweder ein IC antwortet mit 'ACK' 
oder niemand antwortet auf dieser Adresse. Hast du fertige I2C 
Funktionen, dann ist dieser Teil in 5 Minuten programmiert.

Dein Hauptproblem ist viel mehr, dass es keine standardisierte 
Möglichkeit gibt festzustellen, WER denn da eigentlich geantwortet hat. 
Du verwechselst da I2C mit USB.
Gast #3827774
Lesenswert?
• ▲
▼
Karl Heinz schrieb:
> Noch einfacher?
> Was ist denn daran schwierig?
Nix.
Für Ardino-only-user hier der fertige Code: 
http://playground.arduino.cc/Main/I2cScanner

> Dein Hauptproblem ist viel mehr, dass es keine standardisierte
> Möglichkeit gibt festzustellen, WER denn da eigentlich geantwortet hat.
Ich guck mir da standardisiert den Schaltplan an ;-)
Aber im Prinzip hast Du recht.

VG, Holger

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.