ich kann mit dem Baustein MCP23017 keine Ausgänge schalten.
In FUP habe ich im Baustein den Eingang IO_A auf Null gesetzt, so dass das Byte A als Ausgang arbeitet.
Wenn ich jetzt auf dem Raspi mit I2Cdump die Konfiguration ansehe, ist das Byte A immer noch als Eingang parametriert.
Wenn ich mit I2Cset den Parameter 0x00 von FF nach 00 umstelle funktioniert alles
Im Baustein MCP23017 ist die Variable IO_A vorbelegt mit 16#FF. Hier könnte der Fehler liegen. Die Vorbelegung würde ich gerne auf 16#00 ändern. Aber dies gelingt mir nicht. Wie es scheint ist der Baustein schreibgeschützt.
Hat jemand eine Idee?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Ich verwende den MCP23S17 am SPI.
Dort gibt es bei den Parametern im Gerät die Möglichkeit, das einzustellen.
Ich weiß nicht, ob das beim MCP23017 am I2C genauso ist...
Aber normal solltest du doch die Daten über den Eingang ändern können.
Das sollte auch keinen Schreibschutz haben.
Woher hast du den Baustein?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
ich habe das gleiche Problem wie Bastler2000.
Die eingestellten Werte werden vom Baustein entweder nicht übernommen oder nicht an den Baustein übertragen, setze ich die entsprechenden Werte über I2CSET werden die Werte übernommen, nach einem Reset der Steuerung muss man das Spiel allerdings wiederholen.
Die Eingänge werden sauber eingelesen.
Mein Setup:
Rasperry Pi 3 b+
Neueste Codesys - Entwicklungsumgebung
Der Raspi läuft mit CODESYS Control for Raspberry Pi MC SL (aber auch mit Pi SL gehts net)
Device XML und Lib hier aus dem Forum mit dem Testprogramm.
Portexpander mit 2 MCP23017
Entwicklungsumgebung läuft auf Laptop mit Win 10 32bit
Momentan noch keine Lizenz, da noch Testphase (sollte aber ja nicht daran liegen?)
Hat jemand noch einen Tipp woran das liegen könnte? Ich habe mittlerweile alle Beiträge die ich finden konnte überprüft, aber nix hat geholfen.
Wenn benötigt, liefere ich gerne Screenshots, das Projekt oder was auch immer hilft nach =)
Vielen Dank soweit.
Nils
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
ich habe zwar keine Lösung für das Grundproblem gefunden, aber ich habe ein für mich akzeptables "Workaround" gefunden.
Ich habe ein kleines Programm geschrieben, das einmalig in einer FirstCycle - Schleife ausgeführt wird und die Register direkt anspricht, z. B. MCP23017.write8(16#00, Variable oder direkt 16#00 für Ausgang), so verfahre ich mit allen Registern und MCP23017-Chips.
Vllt hilft es ja jemanden der unerklärlicherweise das gleiche Problem hat.
Gruß Nils
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hello
I have a Raspberry pi 3 Codesys v3.5.sp12.3. There are 8 pieces of MCP 23017 i2c modules. When I log in with download mode, the raspberry codesys runtime stops. I need to restart raspberry.
login with online change mode is successful, the program will not stop. If I disconnect the i2c modules, it works in login with download mode.
When I set up this system there was no problem connecting. What could be the problem?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hallo,
ich kann mit dem Baustein MCP23017 keine Ausgänge schalten.
In FUP habe ich im Baustein den Eingang IO_A auf Null gesetzt, so dass das Byte A als Ausgang arbeitet.
Wenn ich jetzt auf dem Raspi mit I2Cdump die Konfiguration ansehe, ist das Byte A immer noch als Eingang parametriert.
Wenn ich mit I2Cset den Parameter 0x00 von FF nach 00 umstelle funktioniert alles
Im Baustein MCP23017 ist die Variable IO_A vorbelegt mit 16#FF. Hier könnte der Fehler liegen. Die Vorbelegung würde ich gerne auf 16#00 ändern. Aber dies gelingt mir nicht. Wie es scheint ist der Baustein schreibgeschützt.
Hat jemand eine Idee?
Hi.
Ich verwende den MCP23S17 am SPI.
Dort gibt es bei den Parametern im Gerät die Möglichkeit, das einzustellen.
Ich weiß nicht, ob das beim MCP23017 am I2C genauso ist...
Aber normal solltest du doch die Daten über den Eingang ändern können.
Das sollte auch keinen Schreibschutz haben.
Woher hast du den Baustein?
Hallo Zusammen,
ich habe das gleiche Problem wie Bastler2000.
Die eingestellten Werte werden vom Baustein entweder nicht übernommen oder nicht an den Baustein übertragen, setze ich die entsprechenden Werte über I2CSET werden die Werte übernommen, nach einem Reset der Steuerung muss man das Spiel allerdings wiederholen.
Die Eingänge werden sauber eingelesen.
Mein Setup:
Rasperry Pi 3 b+
Neueste Codesys - Entwicklungsumgebung
Der Raspi läuft mit CODESYS Control for Raspberry Pi MC SL (aber auch mit Pi SL gehts net)
Device XML und Lib hier aus dem Forum mit dem Testprogramm.
Portexpander mit 2 MCP23017
Entwicklungsumgebung läuft auf Laptop mit Win 10 32bit
Momentan noch keine Lizenz, da noch Testphase (sollte aber ja nicht daran liegen?)
Hat jemand noch einen Tipp woran das liegen könnte? Ich habe mittlerweile alle Beiträge die ich finden konnte überprüft, aber nix hat geholfen.
Wenn benötigt, liefere ich gerne Screenshots, das Projekt oder was auch immer hilft nach =)
Vielen Dank soweit.
Nils
Hello I write this code:
MCP23017_1.IO_A := 16#FF; //Input
MCP23017_1.IO_B := 16#00; //Output
Button_1 := MCP23017_1.IN_A.0;
Button_2 := MCP23017_1.IN_A.1;
Button_3 := MCP23017_1.IN_A.2;
Button_4 := MCP23017_1.IN_A.3;
Button_5 := MCP23017_1.IN_A.4;
Button_6 := MCP23017_1.IN_A.5;
Button_7 := MCP23017_1.IN_A.6;
Button_8 := MCP23017_1.IN_A.7;
MCP23017_1.OUT_B.0 := Rele_1;
MCP23017_1.OUT_B.1 := Rele_2;
MCP23017_1.OUT_B.2 := Rele_3;
MCP23017_1.OUT_B.3 := Rele_4;
MCP23017_1.OUT_B.4 := Rele_5;
MCP23017_1.OUT_B.5 := Rele_6;
MCP23017_1.OUT_B.6 := Rele_7;
MCP23017_1.OUT_B.7 := Rele_8;
No other configuration needed. This is working.
I hope this can help you.
elconfa
Moin Zusammen,
ich habe zwar keine Lösung für das Grundproblem gefunden, aber ich habe ein für mich akzeptables "Workaround" gefunden.
Ich habe ein kleines Programm geschrieben, das einmalig in einer FirstCycle - Schleife ausgeführt wird und die Register direkt anspricht, z. B. MCP23017.write8(16#00, Variable oder direkt 16#00 für Ausgang), so verfahre ich mit allen Registern und MCP23017-Chips.
Vllt hilft es ja jemanden der unerklärlicherweise das gleiche Problem hat.
Gruß Nils
Hallo Raspitan,
auch ich "kämpfe" immer noch mit dem MCP23017. Könntest Du Dein "kleines Programm" hier zur Verfügung stellen?
Viele Grüße
JJoe
Hallo JJoe,
mit welchen Problemen kämpft du denn gerade. Ein Beispielprogramm hab ich auf die Schnelle nicht parat.
Vllt kann ich dir ja so schon einen Tipp geben
Gruß Nils
I'm really sorry but I can't understand your English
Hello
I have a Raspberry pi 3 Codesys v3.5.sp12.3. There are 8 pieces of MCP 23017 i2c modules. When I log in with download mode, the raspberry codesys runtime stops. I need to restart raspberry.
login with online change mode is successful, the program will not stop. If I disconnect the i2c modules, it works in login with download mode.
When I set up this system there was no problem connecting. What could be the problem?
You can find my solution on this issue here: https://forge.codesys.com/forge/talk/Runtime/thread/3d46e97553/#5be1
Man kann meine Lösung zu dem Problem hier finden: https://forge.codesys.com/forge/talk/Deutsch/thread/8a6a09a000/#2d58