INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Wire.write und Client Socket
11.01.2019, 12:41 (Dieser Beitrag wurde zuletzt bearbeitet: 11.01.2019 12:43 von LiVe.)
Beitrag #1
Wire.write und Client Socket
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
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.01.2019, 13:02
Beitrag #2
RE: Wire.write und Client Socket
"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

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.01.2019, 13:10
Beitrag #3
RE: Wire.write und Client Socket
Hey Tommy,


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

Vielen danke dafür ;-)



LG
Sven
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
11.01.2019, 13:51
Beitrag #4
RE: Wire.write und Client Socket
Schön, dass es funktioniert und danke für die Rückmeldung.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  virtual wire empfänger-sender peterfried 30 1.269 17.04.2019 07:21
Letzter Beitrag: Tommy56
  Client.read() Zwischenspeicher erstellen!? Gura 11 4.941 16.04.2019 11:05
Letzter Beitrag: Blende8
  Wire.requestFrom Blende8 7 421 27.03.2019 15:54
Letzter Beitrag: Blende8
  Problem mit Wire.available() abfrage avoid 1 899 11.01.2018 13:40
Letzter Beitrag: Tommy56
Brick Welcher FTP Client um mehrere Dateien auf den Server zu schieben. derAllgaeuer 26 5.159 19.08.2017 21:27
Letzter Beitrag: Bitklopfer
  Serial.write fraju 5 1.753 23.07.2017 21:57
Letzter Beitrag: Mathias
  [gelöst] wire.h blockiert analogRead Rupert 6 3.166 08.12.2016 18:03
Letzter Beitrag: hotsystems
  If-Bedingung funktioniert nicht bei Serial1.write Datatom 6 1.658 16.09.2016 20:36
Letzter Beitrag: Datatom
Question Webserver, Client, Loop Marc2014 6 2.390 29.07.2016 21:04
Letzter Beitrag: Marc2014
  Serial.write Mathias 6 2.466 29.07.2016 17:06
Letzter Beitrag: Mathias

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste