I²C Adressen
Verfasst: 25.12.2017 23:18:40
Hallo liebe Leute,
also vorweg möchte ich feststellen, dass ich kein Problem habe und es so direkt auch nichts mit Debian zu tun hat, deshalb stelle ich die Frage in Smalltalk.
Jedenfalls bin ich mir sicher, dass ihr mir helfen könntet das hier zu verstehen. Ich habe eine Platine mit einer I²C Porterweiterung (PCF8574P) an der in weiterer Folge ein einfaches LCD hängt. Das schreibe ich aber nur damit ihr wisst worum es ungefähr geht, mit meiner Verwirrung hat das schon gar nichts mehr zu tun.
Die kommt nämlich von einer Tabelle, die auf der Platine neben einer Reihe mit drei Jumpern aufgedruckt ist:
Jetzt einmal ganz abgesehen davon, dass ich bei der Umrechnung von Dezimal- in Hexadezimalwerte in einer Zeile auf eine andere Zahl komme (74 = 0x4a ≠ 0x4b) interpretiere ich diese Tabelle so, dass ich Pin Nummer 2 von JP1 bis JP3 jeweils mit einem Jumper mit +5 V (Pin 1) oder mit Masse (Pin 3) verbinde und so die Adresse am I²C-Bus festlege, mit der ich das Gerät ansprechen kann.
Ich habe nun alle Pins mit der Nummer 2 mit 3 gebrückt, also meiner Auffassung nach (und auch der meines Multimeters) die entscheidenden Pins mit Masse verbunden und sollte das Ding mit 0x40 ansprechen können. Mit den i2c-tools erhalte ich jedoch
und ich muss dementsprechende beo lcdproc auch »Port=0x20« in die Konfigurationsdatei eintragen.
Ist das nur ein weiterer Fehler auf dem Aufdruck der Platine oder habe ich hier irgendetwas falsch verstanden?
lg smutbert
also vorweg möchte ich feststellen, dass ich kein Problem habe und es so direkt auch nichts mit Debian zu tun hat, deshalb stelle ich die Frage in Smalltalk.
Jedenfalls bin ich mir sicher, dass ihr mir helfen könntet das hier zu verstehen. Ich habe eine Platine mit einer I²C Porterweiterung (PCF8574P) an der in weiterer Folge ein einfaches LCD hängt. Das schreibe ich aber nur damit ihr wisst worum es ungefähr geht, mit meiner Verwirrung hat das schon gar nichts mehr zu tun.
Die kommt nämlich von einer Tabelle, die auf der Platine neben einer Reihe mit drei Jumpern aufgedruckt ist:
Code: Alles auswählen
┌───┬───┬───┬───┬───┐
│JP1│JP2│JP3│DEC│HEX│
├───┼───┼───┼───┼───┤
│ L │ L │ L │ 64│ 40│
│ L │ L │ H │ 66│ 42│
│ L │ H │ L │ 68│ 44│
│ L │ H │ H │ 70│ 46│
│ H │ L │ L │ 72│ 48│
│ H │ L │ H │ 74│ 4B│
│ H │ H │ L │ 76│ 4C│
│ H │ H │ H │ 78│ 4E│
└───┴───┴───┴───┴───┘
┌────────┐
│JP 1/2/3│
├────────┤
│1 = + 5V│
│2 = ADR.│
│3 = GND │
└────────┘
Ich habe nun alle Pins mit der Nummer 2 mit 3 gebrückt, also meiner Auffassung nach (und auch der meines Multimeters) die entscheidenden Pins mit Masse verbunden und sollte das Ding mit 0x40 ansprechen können. Mit den i2c-tools erhalte ich jedoch
Code: Alles auswählen
# i2cdetect -y 1
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: 20 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
Ist das nur ein weiterer Fehler auf dem Aufdruck der Platine oder habe ich hier irgendetwas falsch verstanden?
lg smutbert