Documento
#include
#include
#include
dht11 DHT11;
#define nSensores 3
int puertos[nSensores];
float fHumedades[nSensores];
float fTemperaturas[nSensores];
intnFilas=0;
int nFiles=0;
File file;
int iNVisitas=0; //guardaremos el número de visitas a modo de contador
// Ponemos la direccion MAC y la direccion IP que asignaremos a nuestra placa
byte mac[] ={ 0xDE, 0xAD, 0xBE, 0xEF, 0xEE, 0xEE };
byte ip[] = { 192,168,1, 177 };
// Initializamos la librería Ethernet
// con la ip y el puerto elegido 666
// (puerto 80 por defecto para HTTP):EthernetServer server(666); // En arduino 1.0 es EthernetServer, en las versiones anteriores sólo Server
void setup()
{
Ethernet.begin(mac, ip); // Arrancamos el ethernet
server.begin(); //Arrancamos elservidor
Serial.begin(115200); //Arrancamos el serial para depuracion
puertos={2,3,4}; // Puertos en los que están conectados los sensores
pinMode(10, OUTPUT);
if (!SD.begin(4))
{Serial.println("Error inicializando SD");
nFiles=-1;
}
else
{
nFiles=0;
Serial.println("SD initializada.");
}
}
void getdata(int iIndice)
{
int chk = DHT11.read(puertos[iIndice]);fHumedades[iIndice]=-1;
fTemperaturas[iIndice]=-1;
Serial.print("Sensor ");
Serial.print(iIndice);
Serial.print(" ");
switch (chk)
{
case 0:fHumedades[iIndice]=(float)DHT11.humidity;
Serial.print(fHumedades[iIndice], 2);
Serial.print(" % ");
fTemperaturas[iIndice]=(float)DHT11.temperature;
Serial.print(fTemperaturas[iIndice], 2);Serial.println(" o C");
break;
case -1: Serial.println(" Error en el chequeo"); break;
case -2: Serial.println(" Error de espera"); break;
default: Serial.println(" Error desconocido"); break;}
}
void loop()
{
// escuchamos a clientes
EthernetClient client = server.available(); // Antes de arduino 1.0 era Client
if (client) {
// las peticiones terminan con la una línea en...
Regístrate para leer el documento completo.