Hola ¿que tal?
Estoy utilizando ethernet con mi arduino para enviar datos de unos sensores a labview por protocolo tcp, logro la comunicación y todo muy bien. Mi programa en labview lo realicé robusto a modo que si se desconecta el cable se reconecte, el problema ocurre cuando esto sucede más de tres veces a la cuarta vez, y no puede reconectarse el sistema, ¿alguien sabe por que sucede? Este es el código que utilizo
#include "cactus_io_AM2315.h"
#include <Adafruit_Sensor.h>
#include <Wire.h>
#include <SPI.h>
#include <Ethernet.h>
AM2315 am2315;
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
// The IP address for the shield:
IPAddress ip(192,168,0,100);
EthernetServer server (80);
void setup()
{
Ethernet.begin(mac, ip);
server.begin();
Serial.begin(9600);
if (!am2315.begin())
{
Serial.println("Sensor AM2315 no encontrado, checar cableado y pullups!");
while (1);
}
}
void loop() {
am2315.readSensor();
Serial.print(am2315.getTemperature_C()); Serial.println(" C\t\t");
Serial.print(am2315.getHumidity()); Serial.println(" %\t\t");
EthernetClient client = server.available();
if (client)
{while(client.connected())
{if (client.available())
{ am2315.readSensor();
server.print(am2315.getTemperature_C());
server.print(am2315.getHumidity());
//server.println(am2315.getHumidity());
Serial.println("Enviado");
delay(100);
}
}
}
client.stop();
delay (500);
}