Passare una variabile per pagina html su SD

Scommetto che la domanda è banale, ma "googleando" non sono riuscito a trovarla: ho una scheda SD su cui c'è il file index.htm che visualizza la pagina web. Come faccio a "passare" una variabile al file? Cioè, come devo indicarla nel codice html ?

Grazie!

PS: Arduino MEGA con ethernet shield usando la libreria Ethernet

Non capisco cosa vuoi fare.
Vuoi mostrare un valore sulla pagina HTML quando viene visualizzata sul browser o
vuoi passare un valore dal Browser al Arduino?
Ciao Uwe

io ho salvato la pagina html nella scheda SD, vorrei visualizzare (sulla pagina html) il valore di una variabile nello sketch.
cosa devo scrivere nella pagina html per richiamare quella variabile?

Se dovessi farlo all'interno dello sketch sarebbe:

client.print("Il valore della variabile è: ");
client.print(variabile);

ma salvando l'html nel file, io vado a leggere il file e in un ciclo invio al browser il codice già in formato html.

while (htmlFile.available())
client.write(htmlFile.read());

Ho visto nella libreria webduino che esiste un sistema per farlo anteponendo una particolare sequenza di caratteri, ma volevo sapere se era possibile farlo anche senza una ulteriore libreria.

Posta lo sketch e la pagina htmo che vediamo se e' fattibile.

Codice:

#include <SPI.h>
#include <Ethernet.h>
#include <SD.h>
 
byte mac[] = {0x90, 0xa2, 0xda, 0x0d, 0xb1, 0x05 };
byte ip[] = { 192,168,1, 177 };
byte gateway[] = { 192,168,1, 1};
byte subnet[] = { 255, 255, 255, 0 };

File htmlFile;

EthernetServer server(80);
 
void setup()
{
  Ethernet.begin(mac, ip, gateway, subnet);
  server.begin();
  if (!SD.begin(4)) { return; }
}
 
void loop()
{
  EthernetClient client = server.available();
  if (client) {
    boolean currentLineIsBlank = true;
    while (client.connected()) {
      if (client.available()) {
        char c = client.read();
        if (c == '\n' && currentLineIsBlank) {
          client.println("HTTP/1.1 200 OK");
          client.println("Content-Type: text/html");
          client.println();
 
          htmlFile = SD.open("index.htm");
          if (htmlFile) {
            while (htmlFile.available()) {
                client.write(htmlFile.read());
            }
            // close the file:
            htmlFile.close();
          }
          break;
        }
        if (c == '\n') {
          currentLineIsBlank = true;
        }
        else if (c != '\r') {
          currentLineIsBlank = false;
        }
      }
    }
    delay(1);
    client.stop();
  }
}

Pagina html:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><link rel="stylesheet" type="text/css" href="http://html.it/guide/stilenuovo.css"/>
<title>Prova di Maury</title></head>
<body><div class="colonna500">

<p> VALORE <p>


</div></body></html>

questa è la semplice base che ho usato per fare un esempio...

Per iscrizione topic
Saluti,
Gianni