ArduinoForum.de - Das deutschsprachige Forum rund um den Arduino
Wire.write und Client Socket - Druckversion

+- ArduinoForum.de - Das deutschsprachige Forum rund um den Arduino (https://www.arduinoforum.de)
+-- Forum: Arduino-Allgemein (/arduino-Forum-Arduino-Allgemein)
+--- Forum: Programmierung (/arduino-Forum-Programmierung)
+--- Thema: Wire.write und Client Socket (/arduino-Thread-Wire-write-und-Client-Socket)



Wire.write und Client Socket - LiVe - 11.01.2019 12:41

Moin Moin ihr,


Also ich bin der neue hier ;-)


Hab grade mit C angefangen und einem ESP32 soweit konnte ich mich auch schon durch wurschteln aber jetzt stehe ich von meiner Seite aus vor einem unlösbaren Problem.




Ich sende via Clientsocket eine Nachricht an denn ESP z.b. „FF“ oder „7F“ zum schalten von Ausgängen mit einem MCP23017. Die Serielle Ausgabe stimmt auch so weit. Leider werden offenbar die falschen Daten mit „Wire.write“ gesendet.

Sende ich aber im Quellcode direkt via Wire.write(FF); oder Wire.write(7F); funktioniert alles wie es soll.

Anbei einmal mein Quellcode evtl. könnt ihr mir ja weiterhelfen ;-)


Code:
String daten_mcp;


          case 'm':
            daten_mcp = "";
            do {
              in = client.read();
              if (in != '\n') daten_mcp += in;
            } while (in != '\n');
            Wire.beginTransmission(0x20);
            Wire.write(0x14); // address PORT A
            Wire.write(daten_mcp.c_str());
            Wire.endTransmission();
            Serial.println(daten_mcp.c_str());
            break;


LG
Sven


RE: Wire.write und Client Socket - Tommy56 - 11.01.2019 13:02

"FF" sind 3 Zeichen (incl. Abschluss '\0'), 0xFF ist ein Byte.
Du musst Deinen String in eine Zahl umwandeln, z.B. mit (ungetestet)
Code:
byte b = (byte) strtol (daten_mcp.c_str(),NULL,16);

Gruß Tommy


RE: Wire.write und Client Socket - LiVe - 11.01.2019 13:10

Hey Tommy,


So etwas in der Art habe ich mir auch schon gedacht, es funktioniert hervorragend.

Vielen danke dafür ;-)



LG
Sven


RE: Wire.write und Client Socket - Tommy56 - 11.01.2019 13:51

Schön, dass es funktioniert und danke für die Rückmeldung.

Gruß Tommy