Go Down

Topic: Esp 8266 Webserver (Read 8678 times) previous topic - next topic

juergen01

Hallo Zusammen

Hallo ElEspanol


Ich sende zum client sResponse mit einer laenge von 3040 Byte
er empfaengt aber nur 3030 Byte

der rest wird dann abgeschnitten

der Webserver laeuft mit dem Client sonst sehr gut
trotz String klasse


bye juergen

Serenifly

Geht auch einfach so:
Code: [Select]

client.print("....");
client.print("....");
client.print("....");


Es gibt keinen Grund weshalb das in einem String stehen muss


ElEspanol

Aud dem uC juckt die String Klasse nicht viel. Ist ein anders Kaliber als ein 328

juergen01

Hallo Zusammen

Hallo ElEspanol

Hallo Serenifly

Ich weis das Ich client.print("....");
nehmen kann

Ich wollte nur wissen ob da bei strings eine Grenze gibt

Habe einen zaehler im loob eingebaut nach 5Sec war er
auf ueber 515000 Durchlaeufen mit dem 3000 Byte String
der alle 5 Sec zum Client sendet


bye juergen
 

ElEspanol

klar, der loopt schnell, wenn er sonst nichts machen muss.

Sende mal die Daten in jedem loop und stoppe die Zeit für einen loop

juergen01

Hallo Zusammen

Hallo ElEspanol


Fuer den String senden zum Client
braucht er ca.   3342 miros
fuer den Loop 4-5 micros

bye juergen



juergen01

Hallo Zusammen


Ich habe da eine Fehlermeldung



// Send the response to the client
  client.print(sHeader);
  client.print(sResponse);



Wenn Ich unter  client.print(sResponse);



// Send the response to the client
  client.print(sHeader);
  client.print(sResponse);
client.print  "<html><head><meta content='text/html; charset=ISO-8859-1' http-equiv='content-type'><title>tabelle1</title></head></body>";
type'>";


Bekomme Ich folgende Fehlermeldung

Webserver_5.ino: In function 'void loop()':
Webserver_5:656: error: expected ';' before string constant
Webserver_5:656: error: statement cannot resolve address of overloaded function
expected ';' before string constant



Ich weis nicht warm


bye juergen









Serenifly

Klammern magst du plötzlich nicht mehr?

juergen01

Hallo Zusammen

Hallo Serenifly

Bo nee son bloeder Fehler

Bei Strings brauchte man das nicht habe noch nicht umgedacht

Ich danke Dir

bye juergen

Serenifly

Du hast hier in erster Linie einen Funktionsaufruf. Und Funktionen ruft man mit Klammern auf.


Eine andere relevante Sache bei sowas:
Wenn man String Literale über mehrere Zeilen schreiben will (was bei HTML praktisch sein kann) muss man etwas aufpassen. Entweder so:

Code: [Select]

String s =
"<HTML>"
"<HEAD>"
"    <TITLE>this is my title</TITLE>"
"</HEAD>"
"<BODY>"
"    <P>This is a paragraph</P>"
"</BODY>"
"</HTML>";


Oder so (mit einem Backslash nach jeder Zeile):
Code: [Select]

String s =
"<HTML>\
<HEAD>\
    <TITLE>this is my title</TITLE>\
</HEAD>\
<BODY>\
    <P>This is a paragraph</P>\
</BODY>\
</HTML>";


Oder C++11 aktivieren und "raw string literals" verwenden

juergen01

Hallo Zusammen

Hallo Serenifly

Ich Dir fuer deine Tips Ich werde sie mir mal anschauen

bye juergen

Go Up