Réalisation d'un site web interactif
        à partir d'une carte Arduino
    
    Ce site est destiné à vous présenter une bibliothèque de fonctions permettant
    de réaliser un site web dynamique avec une carte Arduino.
    
    Parmi les modules que l'on peut connecter sur une carte Arduino, il existe
    un module Ethernet, lui même équipé d'un lecteur de cartes micro SD. Avec
    ce module, on peut à la fois communiquer en réseau via le protocole HTTP et
    mémoriser des pages HTML.
    
    Ces deux possibilités suffisent pour créer un site web statique (site dans
    lequel l'utilisateur reçoit des pages web identiques à celles préparées par
    le webmaster).
    
    Toutefois, comme la carte Arduino est programmable, on peut aussi créer des
    sites web dynamiques. Dans ces sites, une partie du contenu des pages peut
    varier en fonction d'éléments extérieurs. Le contenu exact de la page est
    généré par le serveur web au moment où la page est demandée.
    
    La méthode la plus simple pour créer un site web dynamique est d'utiliser
    un interpréteur PHP (ou d'un langage similaire). Toutefois, la quantité
    de mémoire disponible sur une carte Arduino est très faible par rapport
    à celle des ordinateurs actuels et ne permet pas d'introduire un vrai
    interpréteur PHP.
    
    J'ai donc développé une bibliothèque de fonctions qui permet de réaliser
    sur une carte Arduino complétée d'une carte éthernet et d'une carte micro
    SD des sites web dynamiques qui fonctionnent selon le même principe que
    ceux que je développe en PHP.
    
    Mes sites web utilisent des squelettes de pages HTML, c'est à dire des
    fichiers qui contiennent la structure générale d'une page (ou d'un
    morceau de page) du site, mais avec des chaines de caractères spéciales
    qui indiquent :
    
        - l'endroit où on va afficher la valeur d'une variable,
- la ligne à partir de laquelle on va rajouter du code HTML qui
            est généré par le programme,
- éventuellement, des zones de code HTML optionnelles.
    Pour celà, dans mes sites web, je dispose de quelques fonctions écrites
    en PHP destinées à envoyer sur la page web générée une version modifiée
    d'un fichier HTML
    
        - en replaçant une chaine de caractère particulière de ce fichier
            HTML par un autre contenu,
- ou en s'arrêtant sur une ligne particulière du fichier HTML pour
            générer quelque-chose, avant de continuer à partir de la ligne
            suivante de ce fichier,
- ou éventuellement en sautant des lignes optionnelles du fichier
            HTML.
    J'ai développé une bibliothèques de fonctions similaires pour faire la
    même chose avec une carte Arduino. Le but de ce site web est de vous
    présenter ses possibilités.
    
    Le langage PHP permet aussi de récupérer facilement des données saisies
    par l'utilisateur dans un formulaire (2 méthodes de transmission appelées
    GET et POST sont disponibles).
    Il permet également de mémoriser des informations dans des cookies qui
    seront relus dans des pages ultérieures.
    
    Toutes ces possibilités sont disponibles dans la bibliothèques de fonctions
    pour carte Arduino.
    
    Cette bibliothèque de fonctions est contituée de 2 fichiers :
    
        - trthtml.cpp la bibliothèque de fonctions écrite en langage C
            (programmation procédurale) en utilisant quelques possibilités du
            langage C++
        - trthtml.h les prototypes des fonctions présentes dans
            trthtml.cpp.
    Certaines des fonctions présentes dans 
trthtml.cpp sont des fonctions
    internes à la bibliothèque et il est peu utiles pour l'utilisateur d'y accéder
    directement.
    Leur prototype est indiqué en commentaire dans le fichier 
trthtml.h
    L'utilisateur est libre de décommenter certaines de ces fonctions pour les
    utiliser, mais leur utilisation n'est pas documentée sur ce site.
    
    Pour utiliser cette bibliothèque de fonctions avec un programme Arduino, il
    faut mettre 3 fichiers dans le même répertoire :
    
        - le programme Arduino (de suffixe .ino)
- trthtml.cpp
- trthtml.h
    et au début du programme Arduino, il y aura la ligne :
    
#include "trthtml.h"
    
    Les autres pages de ce site donnent des exemples de programmes Arduino pour
    utiliser les différentes possibilités de la bibliothèque de fonctions.