Hallo ihr.
Ich hab ein Problem.
Ich hab mir jetzt das Ethernet Shield fürn Arduino geholt.
Bis gestern ging noch alles.
Jetzt hab ich den Code leicht abgeändert und plötzlich krieg ich es nicht mehr hin, damit er die Daten vom Webserver richtig erfasst.
Ich hänge mal den HTML-Teil vom Arduino mit an:
Spoiler anzeigen
Den Code hab ich einfach nur um einen weiteren Pin erweitert.
So hat das dann 3-4 Tage funktioniert.
Jetzt bekomm ich sobald ich einen Button drücke einfach nur viele "G" zurück.
Ich lass das mir über den SerialPort anzeigen.
Hier mal der Teil inner loop-void:
Spoiler anzeigen
So hier bei Serial.println bekomm ich ständig diesen sch... Buchstaben. zurück.
Normal müsste ja zb "8=einschalten" ankommen.
Wäre dankbar über jede Hilfe.
Ich hab ein Problem.
Ich hab mir jetzt das Ethernet Shield fürn Arduino geholt.
Bis gestern ging noch alles.
Jetzt hab ich den Code leicht abgeändert und plötzlich krieg ich es nicht mehr hin, damit er die Daten vom Webserver richtig erfasst.
Ich hänge mal den HTML-Teil vom Arduino mit an:
HTML-Quellcode
- client.println("HTTP/1.1 200 OK");
- client.println("Content-Type: text/html");
- client.println();
- client.print("<html><head>");
- client.print("<title>Arduino Webserver</title>");
- client.println("</head>");
- client.print("<center> <body bgcolor='#444444'>");
- //---Überschrift---
- client.println("<br><hr />");
- client.println("<h1><div align='center'><font color='#2076CD'>Arduino Webserver by n1nja</font color></div></h1>");
- client.println("<hr /><br>");
- //---Überschrift---
- //---Ausgänge schalten---
- client.println("<div align='center'><font face='Verdana' color='#FFFFFF'>Ausgänge schalten:</font></div>");
- client.println("<br>");
- client.println("<table border='1' width='500' cellpadding='5'>");
- client.println("<tr bgColor='#222222'>");
- client.println("<td bgcolor='#222222'><font face='Verdana' color='#CFCFCF' size='2'>Bass (Pin8)<br></font></td>");
- client.println("<td align='center' bgcolor='#222222'><form method=get><input type=submit name=8 value='einschalten'></form></td>");
- client.println("<td align='center' bgcolor='#222222'><form method=get><input type=submit name=8 value='ausschalten'></form></td>");
- if (Pin8ON)
- client.println("<td align='center'><font color='green' size='5'>ON");
- else
- client.println("<td align='center'><font color='#CFCFCF' size='5'>OFF");
- client.println("</tr>");
- client.println("<tr bgColor='#222222'>");
- client.println("<td bgcolor='#222222'><font face='Verdana' color='#CFCFCF' size='2'>Heizung (Pin7)<br></font></td>");
- client.println("<td align='center' bgcolor='#222222'><form method=get><input type=submit name=7 value='einschalten'></form></td>");
- client.println("<td align='center' bgcolor='#222222'><form method=get><input type=submit name=7 value='ausschalten'></form></td>");
- if (Pin7ON)
- client.println("<td align='center'><font color='green' size='5'>ON");
- else
- client.println("<td align='center'><font color='#CFCFCF' size='5'>OFF");
- client.println("</tr>");
- client.println("</tr>");
- client.println("</table>");
- client.println("<br>");
- client.println("<form method=get><input type=submit name=all value='Alles aus'></form>");
- client.println("</center></body></html>");
Den Code hab ich einfach nur um einen weiteren Pin erweitert.
So hat das dann 3-4 Tage funktioniert.
Jetzt bekomm ich sobald ich einen Button drücke einfach nur viele "G" zurück.
Ich lass das mir über den SerialPort anzeigen.
Hier mal der Teil inner loop-void:
Quellcode
- EthernetClient client = server.available();
- if (client) {
- while (client.connected()) {
- if (client.available()) {
- char c = client.read();
- if (readString.length() < 100) {
- readString = readString + c; }
- Serial.println(c);
- if (c == '\n') {
- if(readString.indexOf("8=einschalten") > -1) {
- digitalWrite(Pin8, HIGH);
- Serial.println("Pin 8 eingeschaltet!");
- Pin8ON = true;
- }
- if(readString.indexOf("8=ausschalten") > -1){
- digitalWrite(Pin8, LOW);
- Serial.println("Pin 8 ausgeschaltet!");
- Pin8ON = false;
- }
- if(readString.indexOf("7=einschalten") > -1) {
- digitalWrite(Pin7, HIGH);
- Serial.println("Pin 7 eingeschaltet!");
- Pin7ON = true;
- }
- if(readString.indexOf("7=ausschalten") > -1) {
- digitalWrite(Pin7, LOW);
- Serial.println("Pin 7 ausgeschaltet");
- Pin7ON = false;}
- }
So hier bei Serial.println bekomm ich ständig diesen sch... Buchstaben. zurück.
Normal müsste ja zb "8=einschalten" ankommen.
Wäre dankbar über jede Hilfe.