problemas con comunicacion RF433MHZ
Publicado por oscar gerardo figueroa (1 intervención) el 27/10/2018 19:28:03
Estimados amigos tengo graves inconvenientes para lograr la comunicacion a traves de los modulos RF433Mhz con dos arduinos uno. el caso es que ya no se por donde probar, he intentado con todos los codigos que dan vuelta por la red usando la libreria virtualwire.
por ejemplo, este programa no me funciona.
emisor
receptor
por ejemplo, este programa no me funciona.
emisor
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <VirtualWire.h>
void setup()
{
Serial.begin(9600);
Serial.println("Emisor Iniciado");
vw_setup(2000);
}
void loop()
{
send("Encender");
delay(1000);
send("Apagar");
delay(1000);
}
void send (char *message)
{
vw_send((uint8_t *)message, strlen(message));
vw_wait_tx();
Serial.println(message);
}
receptor
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#include <VirtualWire.h>
byte message[VW_MAX_MESSAGE_LEN];
byte messageLength = VW_MAX_MESSAGE_LEN;
void setup()
{
pinMode(13, OUTPUT);
Serial.begin(9600);
vw_setup(2000);
vw_rx_start();
Serial.println("Receptor iniciado");
}
void loop()
{
if (vw_get_message(message, &messageLength))
{
if(comparar("Encender") == 0){
digitalWrite(13, HIGH);
Serial.println("LED Encendido");
}
else if(comparar("Apagar") == 0)
{
digitalWrite(13,LOW);
Serial.println("LED Apagado");
}
}
}
char comparar(char* cadena) {
for(int i = 0; i<messageLength; i++)
{
if(message[i] != cadena[i])
{
return 1;
}
}
return 0;
}
Valora esta pregunta


0