Pages: 1 2 3 [4]   Go Down
Author Topic: Arduino y php consulta (SOLUCIONADO)  (Read 9041 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Edison Member
*
Karma: 17
Posts: 1414
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

pon el código que no te funciona.

repito...entero.
Logged

* Si preguntas, pon el código de tu programa, hace mucho mas fácil ayudarte. Y me ahorro un mensaje pidiendo que lo hagas.
* Si consigues solucionar tu problema, dedica unos minutos a explicar en tu post como lo conseguiste para beneficio de todos.
* Cambia el 'Subject' de tu hilo y añade 'SOLUCIONADO' cuando hayas llegado a una solución al problema que planteaste.
* Utiliza un 'Subject' para tu hilo que explique de que va el hilo.
Si estas empezando:
* Comienza a usar Arduino
* Guías de iniciación a Arduino
* Ejemplos
* Referencia del Lenguaje
* Conceptos básicos
Guia de usuario de arduino
Tutoriales en Ingles
Si necesitas que alguien te escriba el código: http://www.freelancer.com/  o esta  http://www.guru.com/

Offline Offline
Newbie
*
Karma: 0
Posts: 24
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bueno serg no te me enojes je  smiley-kiss, no he leido bien perdon ahi va todo el codigo:

Code:
#include <SPI.h>
#include <Ethernet.h>
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
byte ip[] = { 192, 168, 1, 88 };
byte server[] = {192, 168, 1,33  };
Client client(server, 80);
int g=0;
int posicion=0;
int prend;
int foco;
long tiempofuncion1 = 1000; // cada segundo
long tiempofuncion2 = 10000; // cada 3 segundos
long TiempoInicial1;
long TiempoInicial2;
int data = 0;
int tempPin = 1;

void setup()
{
Serial.begin(9600);         
Ethernet.begin(mac, ip);       
TiempoInicial1=millis(); // inicia la variable al momento actual para temporizador 1
TiempoInicial2=millis(); // inicia la variable al momento actual para temporizador 2
}
void loop()
{
 if (millis() >= (TiempoInicial1+tiempofuncion1)) {
      recibirdatos();
      TiempoInicial1=millis();    // reset de inicio
   }
 
   if (millis() >= (TiempoInicial2+tiempofuncion2)) {
      senddata();
      TiempoInicial2=millis();    // reset de inicio
   }       
 
while (client.available()) {
    if (g<15){
    char dato_recibido = client.read();
   if (dato_recibido=='B' && posicion==0){
      posicion=1;
      Serial.println("POSICION 1");
      Serial.println(dato_recibido);
    }
    if (((dato_recibido=='H')) && posicion==1){
      posicion=2;
      Serial.println("POSICION 2");
      Serial.println(dato_recibido);
    }
    if (((dato_recibido=='1')||(dato_recibido=='2')||(dato_recibido=='3')||(dato_recibido=='4')||(dato_recibido=='5')) && posicion==2){
      posicion=3;
      if (dato_recibido=='1')  foco=13;
      if (dato_recibido=='2')  foco=28;
      if (dato_recibido=='3')  foco=30;
      Serial.println("POSICION 3");
      Serial.println(dato_recibido);
    }
    if (((dato_recibido=='A')||(dato_recibido=='Y')) && posicion==3){
      posicion=4;
      if (dato_recibido=='A')  prend=1;
      if (dato_recibido=='Y')  prend=0;
      Serial.println("POSICION 4");
      Serial.println(dato_recibido);
      Serial.println(prend);
    }
    if (dato_recibido=='F' && posicion==4){
      posicion=0;
      pinMode(foco, OUTPUT);
      digitalWrite(foco,prend);
      Serial.println("POSICION 5");
      Serial.println(dato_recibido);
      //Serial.println(prend);
      //Serial.println(foco);
    }
    g=g+1;
    }
    else{
    //Serial.flush();
    char d = client.read();
    Serial.print("");}
}
}

void recibirdatos()
{
 g=0;
//Serial.println("Dentro de la funcion");
delay(100);                 

if (client.connect()) {
Serial.println("Connected");
client.println("GET /prueba2.php?led=1&led1=2&led2=3");
client.println();
}
else
{
Serial.println("");
}
  if (!client.connected()) {                     
    Serial.println();
    Serial.println("disconnecting.");
    client.stop();
}
}

void senddata()
{
data = analogRead(tempPin);      //leemos la temperatura
//Serial.println(data);
Serial.println();
Serial.println("Next");
delay(100);

if (client.connect()) {
Serial.println("Connected");
client.print("GET /prueba1.php?");
client.print("data");
Serial.print("data");
client.print("=");
Serial.print("=");
client.print(data);
Serial.print(data);
client.println(" HTTP/1.1");
client.println("Host: localhost");
client.println();
Serial.println();    
}
else
{
Serial.println("Connection unsuccesfull");
}
//}
 //stop client
 client.stop();
 while(client.status() != 0)
{
  delay(5);
}
}

Saludos.
Logged

0
Offline Offline
Edison Member
*
Karma: 17
Posts: 1414
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

no se si tendra algo que ver pero en una funcion lo haces asi

Code:
  if (!client.connected()) {                     
    Serial.println();
    Serial.println("disconnecting.");
    client.stop();
}

y enla otra no compruebas y haces el stop forzado
Code:
//stop client
 client.stop();
 while(client.status() != 0)
{
  delay(5);
}

tampoco se para que haces lo del client.status
Logged

* Si preguntas, pon el código de tu programa, hace mucho mas fácil ayudarte. Y me ahorro un mensaje pidiendo que lo hagas.
* Si consigues solucionar tu problema, dedica unos minutos a explicar en tu post como lo conseguiste para beneficio de todos.
* Cambia el 'Subject' de tu hilo y añade 'SOLUCIONADO' cuando hayas llegado a una solución al problema que planteaste.
* Utiliza un 'Subject' para tu hilo que explique de que va el hilo.
Si estas empezando:
* Comienza a usar Arduino
* Guías de iniciación a Arduino
* Ejemplos
* Referencia del Lenguaje
* Conceptos básicos
Guia de usuario de arduino
Tutoriales en Ingles
Si necesitas que alguien te escriba el código: http://www.freelancer.com/  o esta  http://www.guru.com/

Pages: 1 2 3 [4]   Go Up
Jump to: