exemple utilisation

Dependents:   0-wifisp1-drivers

wifiesp8266.h

Committer:
schnf30
Date:
23 months ago
Revision:
1:2cbeb8cedf2f
Parent:
0:58ef0c4fba67

File content as of revision 1:2cbeb8cedf2f:

#ifndef _WifiEsp8266_
#define _WifiEsp8266_
// taille maximum d'une phrase recue
#define maxdata 100
#define Baud 921600
class WifiEsp8266 : public RawSerial
{
public:
    WifiEsp8266(PinName Txd, PinName Rxd,float _TimeOut=NULL);      // _TimeOute pour chien de garde en s
    void receive();  //recoit les data gps et les stocks puis produit les donnees en cas de reception
    bool dataready(void);
    char * read(void);
private:
// reception phrase Serial
    char _DataTmp[maxdata + 1]; // tableau de donnees pour stocker pendant reception
    char _Data[maxdata + 1]; // tableau de donnees lorsque toutes les donnees sont recues
    int _DataPtr = 0; // position de stockage de la prochaine donnee a recevoir
    bool _Canal1Ok = false;
    bool _Canal2Ok = false;
    Ticker TGarde;
    bool _DataReady = false;
    float _TimeOut;
    void Tevent(void);
};
#endif
/* exemple utuilisation
#include "mbed.h"
#include "wifiesp8266.h"
// poyr faire cela il faut soit le systeme sp3 soit un module wifi pour sp3 relié a un pc et teraterm
// la carte relie au module wifi esp32 est relie au  pc et on utilise le site mbed et teraterm
// Systeme SP3 avec module wifi d'origine <---> module Wifi esp32 realise <---> carte f411RE <--> usb pc avec mbed et teraterm //
WifiEsp8266 Wifi(PA_11,PA_12); // WifiEsp8266(PinName Txd, PinName Rxd); // on cre un bojet de classe WifiEsp8266 :
//il n'y a pas de difference avec ESP32 vu de l'xterieur, c'est ce qsui etait demande
// ESP 32 est cable sur Tx : PA_11 et Rx : PA_12;
// Esp32 se connecte automatiquement a l'esp 32 qui est en point dacces
// le driver WifiEsp8266 detecte automatiquement les phrases de type $'code'....\r\n en provenance du Wifi
char WifiPhrase[maxdata];      // on cre tableau de caractere qui sera util lorsque l'on recevra de donnee du wifi au format ci-dessus
// sa taille maxdate est defini dans le driver de l'esp8266 (wifiesp8266.h)
// on cre les variables a acquerir
float VitesseAir = 0; //initialisation de la VitesseAir
int Temperature = 0;
int Humidite = 0;
int main()
{
    Serial PC(USBTX,USBRX);
    PC.baud(Baud);  // on fait echo
// pour envoyer une phrase c'est plutot simple
    Wifi.printf("$Z,%0.0f,%0i,%0i\r\n",VitesseAir,Temperature,Humidite); //permet d'envoyer VitesseAir, Temperature et Humidite
    // il a fallu acquerir les 3 parametre avant.

    while (true) {
// pour lire les donnees en provenance du wifi
        if (Wifi.dataready()) {   // le wifi a til recu une phrase 
            strcpy(WifiPhrase,Wifi.read()); // si oui on lit la phrase et on la copie dans WifiPhrase
            PC.printf("%s\r\n",WifiPhrase); // pour phase de test  on envoi au pc ca permet de voir quon a bien recu
            switch (WifiPhrase[1]) {
                case 'Y' :
                case 'y' :

                    break;
                case 'F':

                    break;
                case 'G' :

                    break;
                default :
                    ;
            }
        }
    }
}
*/