I2C Scanner an MC

OP #3812844
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
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
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

Eine eigene Frage? Dieser Thread ist über 12 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.