collapse

* Links de Robótica

* Posts Recentes

Feira de electricidade e eletrónica por artur36
[Ontem às 23:07]


Power_OK Enermax por almamater
[Ontem às 12:10]


Recomendação de um opamp para um DAC r2r por jm_araujo
[23 de Novembro de 2017, 10:48]


RN42 e TP-Link MR3020 por doiga
[22 de Novembro de 2017, 19:22]


Ajuda Projecto IR / RF por senso
[22 de Novembro de 2017, 13:15]


Ideias para construir um quadrúpede simples por dropes
[21 de Novembro de 2017, 22:43]


Ajuda com TRIAC por senso
[17 de Novembro de 2017, 18:00]


TV LG White Screen por almamater
[15 de Novembro de 2017, 08:37]


Pergunta sobre prototipagem ( Pesquisa ) por luisjustin
[14 de Novembro de 2017, 23:22]


Medir Agua que está no Poço por Njay
[14 de Novembro de 2017, 13:28]

Autor Tópico: Módulos RF+Arduinos problemas!  (Lida 908 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline Constantino

  • Mini Robot
  • *
  • Mensagens: 77
    • Brasil DIY
Módulos RF+Arduinos problemas!
« em: 22 de Junho de 2011, 03:47 »
Oi gente, vou direto ao ponto. Tenho um par de módulos de RF, e dois arduinos. Essa semana fiz os dois se comunicarem e usando char tudo ocorreu bem, enviei uma mensagem e consegui receber sem problemas. Mas o problema é o seguinte não consigo comparar os valores que recebo para ligar um led por exemplo.!

código do meu transmissor!





#include <VirtualWire.h>
#undef int
#undef abs
#undef double
#undef float
#undef round


int poten1=4;
int ptvalor1;
int poten2=5;
int ptvalor2;

int pt1,pt2=0;


char buff[6];
char buf[6];
void setup()
{
     // Initialise the IO and ISR
    vw_set_ptt_inverted(true);
    vw_setup(2000);               
    vw_set_tx_pin(13);             
 
  pinMode(poten1, INPUT);
  pinMode(poten2, INPUT);
}



void loop()
{
  ptvalor1=analogRead(poten1);
  ptvalor2=analogRead(poten2);
 
 
  int msgk = ptvalor1;       // numero de teste
 
  int msd=ptvalor2;



itoa(msgk, buff, 10);

 itoa(msd, buf, 10);
 
 const char *msg = buff ;       // this is your message to send
 const char *ms=buf;
 
   vw_send((uint8_t *)msg, strlen(msg));
   vw_wait_tx();                       // Wait for message to finish
   vw_send((uint8_t *)ms, strlen(ms));
   vw_wait_tx();
   delay(50);
}


Como vocês podem ver, eu pego os valores de dois potenciômetros, transformo em char e envio.



CODIGO DO RECEPTOR




#include <VirtualWire.h> 
#undef int
#undef abs
#undef double
#undef float
#undef round
void setup()
{
    Serial.begin(9600);   

// Initialise the IO and ISR
   // vw_set_ptt_inverted(true);   
    vw_setup(2000);               
    vw_set_rx_pin(11  );             
    vw_rx_start();               
}

void loop()
{
    uint8_t buf[VW_MAX_MESSAGE_LEN];
    uint8_t buflen = VW_MAX_MESSAGE_LEN;

    if (vw_get_message(buf, &buflen))
    {
    int i;
   
       
    for (i = 0; i < buflen; i++)
    {
        Serial.print(buf); 
        }
    Serial.println("");
     }
}



Minha pergunta é: como comparar os valores que recebo com alguma coisa ?

tipo:

if(valorrecebido=="t"){
digitalWrite(led,HIGH);
}

Muito obrigado pelas respostas.




Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.402
  • Helpdesk do sitio
Re: Módulos RF+Arduinos problemas!
« Responder #1 em: 22 de Junho de 2011, 03:53 »
Mete o teu código com as tags [ code] [ /code] sem os espaços, para ficar mais bonito.

Uma coisa, isto:
Código: [Seleccione]
#undef int
#undef abs
#undef double
#undef float
#undef round

Não te vai dar problemas?

Sim, para comparar é basicamente assim, agora é meteres na variavel valorrecebido os dados que recbes e ir fazendo a comparação.
Avr fanboy

Offline Constantino

  • Mini Robot
  • *
  • Mensagens: 77
    • Brasil DIY
Re: Módulos RF+Arduinos problemas!
« Responder #2 em: 22 de Junho de 2011, 04:00 »
Opa muito obrigado pela resposta :D

Sinceramente eu não sei o que significa :
Código: [Seleccione]
#undef int
#undef abs
#undef double
#undef float
#undef round

Se puderes me explicar fico muito agradecido.

E não posso colocar na variável valorrecebido por que sempre dá erro !

Offline senso

  • Global Moderator
  • Mini Robot
  • *****
  • Mensagens: 9.402
  • Helpdesk do sitio
Re: Módulos RF+Arduinos problemas!
« Responder #3 em: 22 de Junho de 2011, 04:20 »
Provavelmente porque não a estás a declarar nem a preencher em lado nenhum.
Avr fanboy