Mostrar valor sensor desde html en sd

Hola!
Tengo un Arduino Mega con un shield ethernet y un sensor de temperatura. En la SD del shield ethernet tengo un html con una página web.
Estoy intentando mostrar desde ese html las variables del sensor de temperatura y no lo logro. Es decir, cómo muestro variables de Arduino desde el html?, las tengo que pasar por GET y obtener el dato desde Javascript o algo así?.

Con lo de Javascript no tendría problema. Pero desde Arduino como le mando los datos al html?.

El código que tengo para abrir el html es este:

client.println("HTTP/1.1 200 OK");
                    client.println("Content-Type: text/html");
                    client.println("Connection: close");
                    client.println();
                    // send web page
                    webFile = SD.open("index.htm");        // open web page file
                    if (webFile) {
                        while(webFile.available()) {
                            client.write(webFile.read()); // send web page to client
                        }
                        webFile.close();
                    }
                    break;

Gracias,
Saludos

Hola shade09,

Te recomiendo que utilices el ejemplo Webserver que viene con la IDE
File->Examples->Ethernet->WebServer

Este ejemplo te muestra un html con el valor actual A0.

Saludos,

-p

Hola! Muchas gracias por tu respuesta.

El problema es que en ese ejemplo el código html se muestra con client.println y el mio se muestra desde el archivo html que está en la sd.

Con client.println me funciona perfecto, el problema es con el otro html =(

Entiendo,

Aqui te dejo el ejmplo para SD escrito por los mismos autores (Mellis e Igoe) y modificado por Smith. Lo he usado y funciona.

/*--------------------------------------------------------------
  Program:      eth_websrv_SD

  Description:  Arduino web server that serves up a basic web
                page. The web page is stored on the SD card.
  
  Hardware:     Arduino Uno and official Arduino Ethernet
                shield. Should work with other Arduinos and
                compatible Ethernet shields.
                2Gb micro SD card formatted FAT16
                
  Software:     Developed using Arduino 1.0.3 software
                Should be compatible with Arduino 1.0 +
                SD card contains web page called index.htm
  
  References:   - WebServer example by David A. Mellis and 
                  modified by Tom Igoe
                - SD card examples by David A. Mellis and
                  Tom Igoe
                - Ethernet library documentation:
                  http://arduino.cc/en/Reference/Ethernet
                - SD Card library documentation:
                  http://arduino.cc/en/Reference/SD

  Date:         10 January 2013
 
  Author:       W.A. Smith, http://startingelectronics.org
--------------------------------------------------------------*/

#include <SPI.h>
#include <Ethernet.h>
#include <SD.h>

// MAC address from Ethernet shield sticker under board
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress ip(10, 0, 0, 20); // IP address, may need to change depending on network
EthernetServer server(80);  // create a server at port 80

File webFile;

void setup()
{
    Ethernet.begin(mac, ip);  // initialize Ethernet device
    server.begin();           // start to listen for clients
    Serial.begin(9600);       // for debugging
    
    // initialize SD card
    Serial.println("Initializing SD card...");
    if (!SD.begin(4)) {
        Serial.println("ERROR - SD card initialization failed!");
        return;    // init failed
    }
    Serial.println("SUCCESS - SD card initialized.");
    // check for index.htm file
    if (!SD.exists("index.htm")) {
        Serial.println("ERROR - Can't find index.htm file!");
        return;  // can't find index file
    }
    Serial.println("SUCCESS - Found index.htm file.");
}

void loop()
{
    EthernetClient client = server.available();  // try to get client

    if (client) {  // got client?
        boolean currentLineIsBlank = true;
        while (client.connected()) {
            if (client.available()) {   // client data available to read
                char c = client.read(); // read 1 byte (character) from client
                // last line of client request is blank and ends with \n
                // respond to client only after last line received
                if (c == '\n' && currentLineIsBlank) {
                    // send a standard http response header
                    client.println("HTTP/1.1 200 OK");
                    client.println("Content-Type: text/html");
                    client.println("Connection: close");
                    client.println();
                    // send web page
                    webFile = SD.open("index.htm");        // open web page file
                    if (webFile) {
                        while(webFile.available()) {
                            client.write(webFile.read()); // send web page to client
                        }
                        webFile.close();
                    }
                    break;
                }
                // every line of text received from the client ends with \r\n
                if (c == '\n') {
                    // last character on line of received text
                    // starting new line with next character read
                    currentLineIsBlank = true;
                } 
                else if (c != '\r') {
                    // a text character was received from client
                    currentLineIsBlank = false;
                }
            } // end if (client.available())
        } // end while (client.connected())
        delay(1);      // give the web browser time to receive the data
        client.stop(); // close the connection
    } // end if (client)
}

-p

Yo también uso ese ejemplo para imprimir el html de la sd. Pero en ese ejemplo no muestra como mostrar el dato de una variable de Arduino desde el html y es lo que necesito =(

shade09,

Aqui te dejo un enlace en espanol con un ejemplo que muestra numerica y graficamente un valor analogico del archivo index.htm en la SD card. Si deseas, puedes eliminar la seccion grafica editando el archivo index. Espero que te sirva.

Display Analogico con JavaScript

Saludos,

-p

Muchas gracias Palliser! Ya lo estoy intentando adaptar.

Saludos