Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void lan(){
- // check for serial input
- EthernetClient client = server.available();
- if (client) {
- while (client.connected()) {
- if (client.available()) {
- char c = client.read();
- //read char by char HTTP request
- if (readString.length() < 100) {
- //store characters to string
- readString += c;
- //Serial.print(c);
- }
- //if HTTP request has ended
- if (c == '\n') {
- //now output HTML data header
- if(readString.indexOf('?') >=0) { //don't send new page
- client.println("HTTP/1.1 204 Zoomkat");
- client.println();
- client.println();
- }
- else {
- client.println("HTTP/1.1 200 OK"); //send new page
- client.println("Content-Type: text/html");
- client.println();
- client.println("<HTML>");
- client.println("<HEAD>");
- client.println("<TITLE>Arduino SmartTub</TITLE>");
- client.println("</HEAD>");
- client.println("<BODY>");
- client.println("<H1>Arduino SmartTub UI</H1>");
- client.println("<br />");
- client.println("<a href=\"/?reset\" target=\"inlineframe\">RESET</a>");
- client.println("<a href=\"/?run\" target=\"inlineframe\">RUN</a>");
- if(runtrigger == true)
- {
- client.println("<br>Water filling running</br>");
- }
- if(correctiontrigger == true)
- {
- client.println("<br>Correction running</br>");
- }
- if(runtrigger == true || correctiontrigger == true)
- {
- client.println("<meta http-equiv=\"refresh\" content=\"1\">");
- }
- if(runfinished == true)
- {
- client.println("<br>Water filling finished</br>");
- }
- if(correctionfinished == true)
- {
- client.println("<br>Correction finished</br>");
- }
- if(stopstate == true)
- {
- client.println("<br>OVERFLOW! Terminating</br>");
- }
- client.println("<FORM ACTION='/' method=get >"); //uses IP/port of web page
- client.println("Desired Temp: <INPUT TYPE=TEXT NAME='temp' VALUE='' SIZE='25' MAXLENGTH='50'><BR>");
- client.println("<INPUT TYPE=SUBMIT NAME='submit' VALUE='submit'>");
- client.println("</FORM>");
- client.println("<FORM ACTION='/' method=get >"); //uses IP/port of web page
- client.println("Desired Vol: <INPUT TYPE=TEXT NAME='vol' VALUE='' SIZE='25' MAXLENGTH='50'><BR>");
- client.println("<INPUT TYPE=SUBMIT NAME='submit' VALUE='submit'>");
- client.println("</FORM>");
- client.println("<br>Real water temp: ");
- client.println(realtemp());
- client.println("C</br>");
- client.println("Total water volume: ");
- client.println(totalvolume);
- client.println("l</br>");
- client.println("Desired water temp: ");
- client.println(settemp);
- client.println("C</br>");
- client.println("Desired water volume: ");
- client.println(setvol);
- client.println("l</br>");
- client.println("Calculated hot water volume: ");
- client.println(mhot);
- client.println("l</br>");
- client.println("Calculated cold water volume: ");
- client.println(mcold);
- client.println("l</br>");
- client.println("Water flow of hot water: ");
- client.println(hotQ);
- client.println("l/min</br>");
- client.println("Water flow of cold water: ");
- client.println(coldQ);
- client.println("l/min</br>");
- client.println("Volume of hot filled water: ");
- client.println(totalhotQ);
- client.println("l</br>");
- client.println("Volume of cold filled water: ");
- client.println(totalcoldQ);
- client.println("l</br>");
- client.println("Correction with hot water: ");
- client.println(hotcorrection);
- client.println("l</br>");
- client.println("Correction with cold water: ");
- client.println(coldcorrection);
- client.println("l</br>");
- //client.println("<IFRAME name=inlineframe src=\"res://D:/WINDOWS/dnserror.htm\" width=1 height=1\">");
- client.println("<IFRAME name=inlineframe style=\"display:none\" >");
- client.println("</IFRAME>");
- client.println("</BODY>");
- client.println("</HTML>");
- }
- delay(1);
- //stopping client
- client.stop();
- ///////////////////// control arduino pin
- if(readString.indexOf("temp") > 0)
- {
- lantemp = readString.substring({11},{15});
- settemp = lantemp.toFloat();
- }
- if(readString.indexOf("vol") > 0)
- {
- lanvol = readString.substring({10},{14});
- setvol = lanvol.toFloat();
- }
- if(readString.indexOf("reset") >0)//checks for on
- {
- client.println("<br>RESETING</br>");
- wdt_enable(WDTO_15MS);
- }
- if(readString.indexOf("run") >0)//checks for off
- {
- client.println("<br>RUNNING</br>");
- runtrigger = true;
- }
- //clearing string for next read
- readString="";
- }
- }
- }
- }
- }
- //////////////////////////
- void sendGET() //client function to send/receie GET request data.
- {
- if (client.connect(myserver, 80)) {
- client.println("GET /~shb/arduino.txt HTTP/1.0");
- client.println();
- }
- while(client.connected() && !client.available()) delay(1); //waits for data
- while (client.connected() || client.available()) { //connected or data available
- char c = client.read();
- }
- client.stop();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement