in diesen Blogbeiträgen zeigen wir die Ansteuerung unserer I2C-Baugruppen mit Phyton 3 und TkInter
Beispielprogramme
- Digitale Eingangskarte (I2HE)
- Digitale Ausgangskarte (I2HA)
- Analoge Eingangskarte (I2HAE)
- Analoge Ausgangskarte (I2HAA)
- Analoge Eingangskarte mit MCP3424 (I2AE18)
Testumgebung
Als Testumgebung verwenden wir einen Raspberry Pi 2 B mit einem Touch-Display und unserem I2C-Schulungsrack.
I2C-Repeater für Raspberry-PI
Auf der Rückseite sieht man den I2C-Repeater aufgesteckt.
Hallo Herr Horter,
ich habe zwei ihrer analogen Eingabe- und eine Ausgabekarte mit dem Raspberry in Betrieb. Zwei Probleme tun sich dabei auf:
1. i2c detect gibt jedes mal ein andres Ergebnis aus. Manchmal sind die Karten dabei, manchmal nicht und manchmal erscheinen Adressen, die gar nicht belegt sind.
2. wahrscheinlich aus erstens resultierend: Ihr Beispielprogramm mit Python in Tkinter liefert beim Schreibbefehl einen “ioerror errno 5 input/output error” ab. Verständlich, wenn die Karte nicht gefunden wird.
Woran kann das liegen?
Die Karten sind ohne Repeater direkt mit dem I2C-Bus des Raspberry verbunden, Versorgung läuft getrennt. An der Ausgangskarte leigen 24V als Hilfsspannung an und einen Verkabelungsfehler habe ich (eigentlich) ausgeschlossen.
Vielen Dank soweit schon einmal
S. Ehrismann
Hallo Herr Ehrismann,
die Frage haben Sie mit dem Satz “Die Karten sind ohne Repeater direkt mit dem I2C-Bus des Raspberry verbunden” schon beantwortet.
Die 3,3V Pagel der Raspberry GPIO-Pins sind für den 5V I2C-Bus zu klein. Damit kommt es bei manchen Slaves zu solchen Erscheinungen.
Verwenden Sie unseren Repeater und die Probleme sind weg.
Beste Grüße