Show Posts
Pages: 1 2 [3] 4 5
31  Using Arduino / Networking, Protocols, and Devices / Re: Xbee API ethernet problem HTML on: June 12, 2012, 11:37:39 am
Sorry for my English, where we can put the watchdog on my code? after client.print?
32  Using Arduino / Networking, Protocols, and Devices / Re: Xbee API ethernet problem HTML on: June 12, 2012, 09:29:11 am
Ok thanks you I'm upgrading the IDE. I hope that it comes from this version

As regards the watch dog, it could find in the loop or after the client.print?
33  Using Arduino / Networking, Protocols, and Devices / Re: Xbee API ethernet problem HTML on: June 12, 2012, 08:39:43 am
I have connected on pin 7 the reset pin of arduino. I have the arduino1.0 with the data in .ino
34  Using Arduino / Networking, Protocols, and Devices / Re: Xbee API ethernet problem HTML on: June 12, 2012, 02:48:55 am
This my code :

Code:
#include <SPI.h>
#include <Ethernet.h>

byte mac[] = { 0x90, 0xA2, 0xDA, 0x0D, 0x14, 0x46 };
IPAddress ip(162,38,115, 28);


unsigned long delayMax = 0;

int packet[32];
int analogSamples[5];
int moduleID[1];
int RESET = 7;

float v[4];
float z[5];
float y[6];

EthernetServer server(80);

void setup()
{
  Ethernet.begin(mac, ip);
  digitalWrite(RESET, HIGH);
  pinMode(RESET, OUTPUT);
  server.begin();
  Serial.begin(9600);
  delay(1);
}

void loop()
{

  readpacket();
  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();
                   
                       
                        client.println(v[1]);
                        client.println(v[2]);
                        client.println(v[3]);
                        client.println(v[4]);
                        client.println();
                     
                       
                       client.println(z[1]);
                       client.println(z[2]);
                       client.println(z[3]);
                       client.println(z[4]);
                       client.println(z[5]);
                       client.println();
                     
                       
                       client.println(y[1]);
                       client.println(y[2]);
                       client.println(y[3]);
                       client.println(y[4]);
                       client.println(y[5]);
                       client.println();                                               
                  break;
                 }
             
             if (c == '\n')
               {
                 currentLineIsBlank = true;
               } 
               else if (c != '\r')
               {
                  currentLineIsBlank = false;
               }
             }
         
    }
    delay(500);
    // fermer la connection
    client.flush();
    client.stop();
    // faire un reset
    digitalWrite(RESET, LOW);
    }
 digitalWrite(RESET, LOW);
}

void readpacket()
  {
  if (Serial.available() > 0)
    {
    delayMax = millis()+50;
    int b = Serial.read();
    if (b == 0x7E)
      {
        packet[0] = b;                           
        packet[1] = readByte();
        packet[2] = readByte();
        int dataLength = (packet[1] << 8) | packet[2]; 
        for(int i=1;i<=dataLength;i++)
          {
            packet[2+i] = readByte();               
          }
        int apiID = packet[3];               
        if (apiID == 0x83)
            {

             
              moduleID[1] = (packet[4] << 8) | packet[5];
              if (moduleID[1]==0x01)
              {
                int SgnlPwr = packet[6];
                int SampleNumber = packet[8];                                                                                                                   
                                                                                                                                                                                                                                                                                                                                                     
                if (SampleNumber >= 1) 
                  {                                                                                                       
                    analogSamples[1] = (packet[11] << 8) | packet[12];
                    analogSamples[2] = (packet[13] << 8) | packet[14];
                    analogSamples[3] = (packet[15] << 8) | packet[16];
                    analogSamples[4] = (packet[17] << 8) | packet[18];
                   delay(1);
                   
                  }
                   int reading = analogSamples[1]; 
                   int reading_2 = analogSamples[2];
                   int reading_3 = analogSamples[3];
                   int reading_4 = analogSamples[4];
       
                   v[1] =((float) reading)*330/1024; 
                   v[2] =((float) reading_2)*330/1024;
                   v[3] =((float) reading_3)*330/1024;
                   v[4] =((float) reading_4)*330/1024;
                   
              }
              else if (moduleID[1]==0x02)
              {
               int SgnlPwr = packet[6];
                int SampleNumber = packet[8];                                                                                                                   
                int i;                                                                                                                                                                                                                                                                                                                                       
                if (SampleNumber >= 1) 
                  {                                                                                                       
                    analogSamples[1] = (packet[11] << 8) | packet[12];
                    analogSamples[2] = (packet[13] << 8) | packet[14];
                    analogSamples[3] = (packet[15] << 8) | packet[16];
                    analogSamples[4] = (packet[17] << 8) | packet[18];
                    analogSamples[5] = (packet[19] << 8) | packet[20];
                    delay(1);
                   
                  }
                   int reading_5 = analogSamples[1]; 
                   int reading_6 = analogSamples[2];
                   int reading_7 = analogSamples[3];
                   int reading_8 = analogSamples[4];
                   int reading_9 = analogSamples[5];
       
                   z[1] =((float) reading_5)*330/1024; 
                   z[2] =((float) reading_6)*330/1024;
                   z[3] =((float) reading_7)*330/1024;
                   z[4] =((float) reading_8)*330/1024;
                   z[5] =((float) reading_9)*330/1024;
                   
              }
              else if (moduleID[1]==0x03)
              {
               int SgnlPwr = packet[6];
                int SampleNumber = packet[8];                                                                                                                   
                int i;                                                                                                                                                                                                                                                                                                                                       
                if (SampleNumber >= 1) 
                  {                                                                                                       
                    analogSamples[1] = (packet[11] << 8) | packet[12];
                    analogSamples[2] = (packet[13] << 8) | packet[14];
                    analogSamples[3] = (packet[15] << 8) | packet[16];
                    analogSamples[4] = (packet[17] << 8) | packet[18];
                    analogSamples[5] = (packet[19] << 8) | packet[20];
                    delay(1);
                   
                  }
                   int reading_10 = analogSamples[1]; 
                   int reading_11 = analogSamples[2];
                   int reading_12 = analogSamples[3];
                   int reading_13 = analogSamples[4];
                   int reading_14 = analogSamples[5];
       
                   y[1] =((float) reading_10)*330/1024; 
                   y[2] =((float) reading_11)*330/1024;
                   y[3] =((float) reading_12)*330/1024;
                   y[4] =((float) reading_13)*330/1024;
                   y[5] =((float) reading_14)*330/1024;
                   
              }
            }
             
      }
    }
  }
 
 uint8_t readByte()
  {
    while (true)
      {
if(delayMax <= millis())
        {
            break;
        }
        if (Serial.available() > 0)
        {
          return Serial.read();
        }
      }
    return 0; 
  }
35  Using Arduino / Networking, Protocols, and Devices / Xbee API ethernet problem HTML on: June 12, 2012, 02:48:30 am
Hello everybody,
I'm french and I come to you because I deployed a network of xbee ( Api) with sensors of temperature LM35DZ. Indeed, I use the analogical input of xbees to get back the various temperatures. Every room contains a xbee, in receiver I have another xbee which gets back all the packages of transmitters. To see the temperatures, I use an arduino + ethernet shield to convert its packages in decimal values and send it on a HTML page. The acquisition matches a small moment then at the end of a few days the HTML page does not generate any more (it stays in perpetual research). This stop is never at the same moment. It is variable

I modified my code in order to put the reset as soon as the system doesn't respond but unfortunetly it is not sufficient... I don't know where is the problem now. Maybe the reset code is badly programmed?

It is probably in the Ethernet library. I don't know...


Thanks you for your replies
36  International / Français / Re: Xbee Api + Serveur Web on: June 09, 2012, 07:03:51 am
Je suis désolé de relancer le sujet mais j'ai encore un soucis de connexion entre le serveur web ethernet shield et la génération de la page HTML. Je me suis aperçu qu'en appuyant sur le reset de l'arduino le système repartait donc j'en ai déduis que ca venait de mon soft... Voici mon code :

Code:
void setup()
{
  // start the Ethernet connection and the server:
  Ethernet.begin(mac, ip);
  digitalWrite(RESET, HIGH);
  pinMode(RESET, OUTPUT);
  server.begin();
  Serial.begin(9600);
  delay(1);
  //Serial.print("Starting..........");
  //Serial.println();
}
void loop()
{

  readpacket();
  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();
                   
                       
                        client.println(v[1]);
                        client.println(v[2]);
                        client.println(v[3]);
                        client.println(v[4]);
                        client.println();
                     
                       
                       client.println(z[1]);
                       client.println(z[2]);
                       client.println(z[3]);
                       client.println(z[4]);
                       client.println(z[5]);
                       client.println();
                     
                       
                       client.println(y[1]);
                       client.println(y[2]);
                       client.println(y[3]);
                       client.println(y[4]);
                       client.println(y[5]);
                       client.println();                                               
                  break;
                 }
             
             if (c == '\n')
               {
                 currentLineIsBlank = true;
               } 
               else if (c != '\r')
               {
                  // you've gotten a character on the current line
                  currentLineIsBlank = false;
               }
             }
         
    }
    // give the web browser time to receive the data
    delay(1);
    // close the connection:
    client.stop();
    //Serial.flush();
    digitalWrite(RESET, LOW);
   
    }
 digitalWrite(RESET, LOW);
}

Je ne sais plus ou me diriger...surtout que les coupures de connexion sont variables...
Merci d'avance
37  International / Français / Re: Xbee Api + Serveur Web on: May 29, 2012, 02:08:21 pm
Cela peut aussi venir de ma sous fonction "readbyte"
38  International / Français / Re: Xbee Api + Serveur Web on: May 29, 2012, 01:56:27 pm
Oui ms le watchdog ne dure pas au max 8s?? on ne peut pas plus je crois !

Oui je vais mettre une led oui...ca m'aidera peut être...
39  International / Français / Re: Xbee Api + Serveur Web on: May 29, 2012, 08:20:02 am
Dans ce programme, j'aimerai faire un reset logiciel c'est à dire mettre à l'état haut le reset quand ça serial.available est ok donc il récupère tous les paquets et les convertits s'il ne reçoit pas de trames je me le reset à l'état bas pour faire un reset du soft. Quand pensez vous?

en gros le code :

Code:
void setup()
{
  Ethernet.begin(mac, ip);
  pinMode(RESET,OUTPUT);
  server.begin();
  Serial.begin(9600);
  delay(1);
}

void loop()
{
........
}

void readpacket()
  {
  if (Serial.available() > 0)
    {
        digitalWrite(RESET, HIGH);
        .............
.......................
...............
...................
    }
else
{
digitalWrite(RESET, LOW);
}

Qu'en pensez vous?
40  International / Français / Re: Xbee Api + Serveur Web on: May 29, 2012, 03:54:05 am
En faisant un reset automatique du ethernet shield ! ça pourrait le faire !

Je regarde comment je pourrais faire çà !
41  International / Français / Re: Xbee Api + Serveur Web on: May 27, 2012, 12:38:51 pm
Oui parce que ce sont les deux paquets qui m'intéressent, le premier paquet c'est tout le temps 0 et l'autre octet c'est le nombre de xbee déployé pour le réseau.

La j'ai modifié et pareil même constat au bout de deux jours cette fois cela s'est coupé à 14h30.

Je n'arrive pas à comprendre ou trouver cette erreur. Je ne sais pas si ca vient de mon soft ou bien du serveur extérieur !
42  International / Français / Re: Xbee Api + Serveur Web on: May 25, 2012, 02:19:19 am
Salut Barbudor,

Le problème, c'est que j'ai déployé le réseau donc pour faire tout ses tests c'est délicat, je pense que si le système récupère des octets qui changent peu donc une température constante, il n'y a pas de soucis. Par contre dès que les températures commencent à grimper, j'ai l'impression que mon receveur a du mal à emmagasiner les infos du coup la page HTML ne se génère plus.

Dans mon code "void readpacket()", j'ai delayMax=millis()+50;
J'ai enlevé tous les delay(1) après mes analogSamples et à la fin de la fonction j'ai rajouté :

timerId = timer.setTimeout(1000, readpacket);

43  International / Français / Xbee Api + Serveur Web on: May 24, 2012, 02:58:33 am
Bonjour à tous,
Je viens à vous car j'ai déployé un réseau de xbee (Api) avec des capteurs de température LM35DZ. En effet, j'utilise les entrées analogiques des xbees afin de récupérer les différentes températures. Chaque pièce comporte un xbee, en receveur j'ai un autre xbee qui récupère tous les paquets des transmetteurs.Afin d'afficher les températures, j'utilise un arduino + ethernet shield afin de convertir ses paquets en valeurs décimales et l'envoyer sur une page HTML. L'acquisition se fait pendant un petit moment puis au bout de quelques jours la page HTML ne se génère plus (elle reste en perpétuelle recherche).

Est ce que cela pourrait venir de la mémoire du serveur qui serait saturée au bout d'un certain temps? Dois-je vider mon buffer?

Voici mon code :
Code:
#include <SPI.h>
#include <Ethernet.h>

byte mac[] = { 0x90, 0xA2, 0xDA, 0x0D, 0x14, 0x46 };
IPAddress ip(162,38,115, 28);


unsigned long delayMax = 0;
int packet[32];
int analogSamples[5];
int moduleID[1];
float v[4];
float z[5];
float y[6];
EthernetServer server(80);

void setup()
{
  Ethernet.begin(mac, ip);
  server.begin();
  Serial.begin(9600);
  delay(1);
}

void loop()
{

  readpacket();
  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();
                   
                       
                        client.println(v[1]);
                        client.println(v[2]);
                        client.println(v[3]);
                        client.println(v[4]);
                        client.println();
                     
                       
                       client.println(z[1]);
                       client.println(z[2]);
                       client.println(z[3]);
                       client.println(z[4]);
                       client.println(z[5]);
                       client.println();
                     
                       
                       client.println(y[1]);
                       client.println(y[2]);
                       client.println(y[3]);
                       client.println(y[4]);
                       client.println(y[5]);
                       client.println();                                               
                  break;
                 }
             
             if (c == '\n')
               {
                 currentLineIsBlank = true;
               } 
               else if (c != '\r')
               {
                 currentLineIsBlank = false;
               }
         }
    }
    delay(1000);
    client.stop();
    }   
}
void readpacket()
  {
  if (Serial.available() > 0)
    {
    delayMax = millis()+50;
    int b = Serial.read();
    if (b == 0x7E)
      {
        packet[0] = b;                           
        packet[1] = readByte();
        packet[2] = readByte();
        int dataLength = (packet[1] << 8) | packet[2]; 
        for(int i=1;i<=dataLength;i++)
          {
            packet[2+i] = readByte();               
          }
        int apiID = packet[3];               
        if (apiID == 0x83)
            {

             
              moduleID[1] = (packet[4] << 8) | packet[5];
              if (moduleID[1]==0x01)
              {
                int SgnlPwr = packet[6];
                int SampleNumber = packet[8];                                                                                                                   
                int i;                                                                                                                                                                                                                                                                                                                                       
                if (SampleNumber >= 1) 
                  {                                                                                                       
                    analogSamples[1] = (packet[11] << 8) | packet[12];
                    analogSamples[2] = (packet[13] << 8) | packet[14];
                    analogSamples[3] = (packet[15] << 8) | packet[16];
                    analogSamples[4] = (packet[17] << 8) | packet[18];
                    delay(1);
                  }
                   int reading = analogSamples[1]; 
                   int reading_2 = analogSamples[2];
                   int reading_3 = analogSamples[3];
                   int reading_4 = analogSamples[4];
        // On converti la valeur lue  en millivolts
                   v[1] =((float) reading)*330/1024; 
                   v[2] =((float) reading_2)*330/1024;
                   v[3] =((float) reading_3)*330/1024;
                   v[4] =((float) reading_4)*330/1024;
                   delay(1);
              }
              else if (moduleID[1]==0x02)
              {
               int SgnlPwr = packet[6];
                int SampleNumber = packet[8];                                                                                                                   
                int i;                                                                                                                                                                                                                                                                                                                                       
                if (SampleNumber >= 1) 
                  {                                                                                                       
                    analogSamples[1] = (packet[11] << 8) | packet[12];
                    analogSamples[2] = (packet[13] << 8) | packet[14];
                    analogSamples[3] = (packet[15] << 8) | packet[16];
                    analogSamples[4] = (packet[17] << 8) | packet[18];
                    analogSamples[5] = (packet[19] << 8) | packet[20];
                    delay(1);
                   
                  }
                   int reading_5 = analogSamples[1]; 
                   int reading_6 = analogSamples[2];
                   int reading_7 = analogSamples[3];
                   int reading_8 = analogSamples[4];
                   int reading_9 = analogSamples[5];
        // On converti la valeur lue  en millivolts
                   z[1] =((float) reading_5)*330/1024; 
                   z[2] =((float) reading_6)*330/1024;
                   z[3] =((float) reading_7)*330/1024;
                   z[4] =((float) reading_8)*330/1024;
                   z[5] =((float) reading_9)*330/1024;
                   delay(1);
              }
              else if (moduleID[1]==0x03)
              {
               int SgnlPwr = packet[6];
                int SampleNumber = packet[8];                                                                                                                   
                int i;                                                                                                                                                                                                                                                                                                                                       
                if (SampleNumber >= 1) 
                  {                                                                                                       
                    analogSamples[1] = (packet[11] << 8) | packet[12];
                    analogSamples[2] = (packet[13] << 8) | packet[14];
                    analogSamples[3] = (packet[15] << 8) | packet[16];
                    analogSamples[4] = (packet[17] << 8) | packet[18];
                    analogSamples[5] = (packet[19] << 8) | packet[20];
                    delay(1);
                   
                  }
                   int reading_10 = analogSamples[1]; 
                   int reading_11 = analogSamples[2];
                   int reading_12 = analogSamples[3];
                   int reading_13 = analogSamples[4];
                   int reading_14 = analogSamples[5];
        // On converti la valeur lue  en millivolts
                   y[1] =((float) reading_10)*330/1024; 
                   y[2] =((float) reading_11)*330/1024;
                   y[3] =((float) reading_12)*330/1024;
                   y[4] =((float) reading_13)*330/1024;
                   y[5] =((float) reading_14)*330/1024;
                   delay(1);
              }
            }
             
      }
    }
  }
 uint8_t readByte()
  {
    while (true)
      {
if(delayMax <= millis())
        {
            break;
        }
        if (Serial.available() > 0)
        {
          return Serial.read();
        }
      }
    return 0; 
  }

Merci d'avance,
44  International / Français / Re: Problème Xbee API + Arduino +ethernet shield on: April 12, 2012, 11:32:44 am
Bonjour,

J'ai enfin réussi a faire afficher sur une page web soit le module 1 soit le module 2 mais à des fréquences aléatoires ce n'est pas l'un après l'autres...Par ctre quand mes capteurs de températures au début étaient à proximité du xbee...la j'ai tiré des câbles de longueurs différentes pour le connecter aux xbee (câbles téléphonique). Même processus, je connecte deux xbee dans deux salles différentes et j'essaye de récolter les trames a travers un xbee receveur. je reçois les trames ms des valeurs aléatoires sont affichées...voila mon problème.

Merci en tout cas pour ton aide !!
45  International / Français / Re: Problème Xbee API + Arduino +ethernet shield on: April 06, 2012, 02:56:04 am
Ok trés bien ! Pour un seul xbee ton delay Max me fait fonctionner l'affichage Web !! Un très bon point !! Maintenant, il reste à faire afficher 2 xbees en réseau  !
Voici mon code pour deux xbee en réseau avec un receveur, il voit un seul xbee mais pas le deuxième...
Merci en tout cas pour ton aide !

Code:
#include <SPI.h>
#include <Ethernet.h>
//#define NB_CAPTEUR 3
//#define NB_SAMPLE 3
// Enter a MAC address and IP address for your controller below.
// The IP address will be dependent on your local network:
byte mac[] = { 0x90, 0xA2, 0xDA, 0x00, 0x64, 0x0F };
IPAddress ip(192,168,1, 110);


unsigned long delayMax = 0;
int packet[32];
int analogSamples[3];
int dataLength[10];
float v[5];
float z[1];
//int temp[NB_CAPTEUR];
EthernetServer server(80);

void setup()
{
  // start the Ethernet connection and the server:
  Ethernet.begin(mac, ip);
  server.begin();
  Serial.begin(9600);
  delay(1);
  //Serial.print("Starting..........");
  //Serial.println();
}

void loop()
{

  readpacket();
  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();
                    if (dataLength[1]==0x1A)
                     {
                    
                        client.println(v[1]); //on ne fais qu'affiché les valeurs stockées lors de la denière lecture.
                        client.println(v[2]);
                        client.println(v[3]);
                        client.println();
                     }
                     else if (dataLength[1]==0x0A)
                     {
                        client.print(z[1]); // ajout d'un petit espace ou '\n ' pour un passage à la ligne ?
                     }                
                  break;
                 }
            
             if (c == '\n')
               {
                 currentLineIsBlank = true;
               }  
               else if (c != '\r')
               {
                  // you've gotten a character on the current line
                  currentLineIsBlank = false;
               }
         }
    }
    // give the web browser time to receive the data
    delay(500);
    // close the connection:
    client.stop();
    }  
}
void readpacket()
  {
  if (Serial.available() > 0)
    {
    delayMax = millis()+50;
    int b = Serial.read();
    if (b == 0x7E)
      {
        packet[0] = b;                          
        packet[1] = readByte();
        packet[2] = readByte();
        dataLength[1] = (packet[1] << 8) | packet[2];  
      if (dataLength[1]==0x1A)
       {    
        for(int i=1;i<=dataLength[1];i++)
          {
            packet[2+i] = readByte();              
          }
        int apiID = packet[3];                
        int moduleID;                                  
        if (apiID == 0x83)
            {                                                                                                                
              moduleID = (packet[4] << 8) | packet[5];
              int SgnlPwr = packet[6];
              int SampleNumber = packet[8];                                                                                                                    
              int i;                                                                                                                                                                                                                                                                                                                                      
              if (SampleNumber >= 3)  
                {                                                                                                        
                  analogSamples[1] = (packet[11] << 8) | packet[12];
                  analogSamples[2] = (packet[13] << 8) | packet[14];
                  analogSamples[3] = (packet[15] << 8) | packet[16];
                }
                 int reading = analogSamples[1];  // On lit la valeur de la broche  19
                 int reading_2 = analogSamples[2];
                 int reading_3 = analogSamples[3];
      // On converti la valeur lue  en millivolts
                 v[1] =((float) reading)*335/1024;  //la valeur renvoyée ( 2 bits)  dans le paquet représente une valeur entiere sur une échelle de 0 à 1023 (0x0 - 0x3FF)
                 v[2] =((float) reading_2)*335/1024;
                 v[3] =((float) reading_3)*335/1024;      
              //for(i=1; i<=NB_CAPTEUR; i++)
                  //{                                                  
                  //temp[i]=((float)analogSamples[i])*330/1024;                
                  //}                                                                                
                  int l=dataLength[1]+4;
                  for(int i=0;i < l;i++)
                    {
                      if (packet[i] < 0xF)
                        {
                          Serial.print(packet[i], HEX);
                        }
                    }
            }
            else if (dataLength[1]==0x0A)
            {
              for(int i=1;i<=dataLength[1];i++)
                {
                  packet[2+i] = readByte();              
                }
             int apiID = packet[3];                
             int moduleID;
             if (apiID == 0x83)
               {
                 moduleID = (packet[4] << 8) | packet[5];
                 int SgnlPwr = packet[6];
                 int SampleNumber = packet[8];
                 if (SampleNumber >= 1)  
                   {
                    analogSamples[1] = (packet[11] << 8) | packet[12];
                    //analogSamples[2] = (packet[13] << 8) | packet[14];
                    //analogSamples[3] = (packet[15] << 8) | packet[16];
                   }
         int reading_4 = analogSamples[1];
                z[1] =((float) reading_4)*310/1024;
               }
            }
       }
      }
    }
  }
  
 
  
 uint8_t readByte()
  {
    while (true)
      {
if(delayMax <= millis())
        {
            break;
        }
        if (Serial.available() > 0)
        {
          return Serial.read();
        }
      }
    return 0;  
  }
//int readByte()
//  {         // prog pour lire les données sur le port série. il renvoie la valeur serial.read
//    while (true)
//      { // si le port série est dispo et a une information
//        if (Serial.available() > 0)
//          {
//            return Serial.read();
//          }
//      }
//  }
Pages: 1 2 [3] 4 5