Sunteți pe pagina 1din 3

Comunicacin entre Arduinos por

radiofrecuencia
36 respuestas

Hola, el otro da compre en ebay este modulo de radiofrecuencia para Arduino:

FS1000A

Este mdulo se compone de un receptor y un emisor que funcionan en la frecuencia 315Mhz, las
conexiones con Arduino son muy sencillas:
En el caso del emisor (XY-FST):

ATAD (Data) > Pin digital 3 (Se puede cambiar por otro en el cdigo del programa).
VCC > +5V
GND > GND

Para el receptor (XY-RF-5V):

GND > GND


DATA > Pin digital 3 (Se puede cambiar por otro en el cdigo del programa).
DATA > Este pin lo dejaremos sin conectar, solo usaremos un pin de datos (Podemos usar
cualquiera de los dos).
VCC > +5V

Antes de cargar el cdigo es necesario descargar e instalar la librera VirtualWire, el enlace de descarga
directa es el siguiente:
http://www.open.com.au/mikem/arduino/VirtualWire/VirtualWire-1.14.zip
El siguiente cdigo permite enviar y recibir un mensaje entre dos placas Arduino:
Cdigo para el emisor:

Data hosted with by Pastebin.com - Download Raw - See Original


1.

//Prueba y transmision de texto con el modulo RF para Arduino http://zygzax.com

2.

//TRANSMISOR

3.

#include <VirtualWire.h>

4.

void setup()

5.

6.

vw_set_ptt_inverted(true);

7.

vw_setup(2000);

8.

vw_set_tx_pin(3);

9.

// Requerido por el modulo RF


// Velocidad de conexion bps
// Pin en el que conectamos la patilla data del transmisor

10.
11. void loop()
12. {
13.

//Mensaje a enviar:

14.

const char *msg = "HOLA MUNDO";

15.

vw_send((uint8_t *)msg, strlen(msg));

16.

vw_wait_tx();

17.

delay(200);

// Esperamos a que termine de enviar el mensaje


// Esperamos para enviar el siguiente mensaje

18. }

Cdigo para el receptor:


Data hosted with by Pastebin.com - Download Raw - See Original
1.

//Prueba y transmision de texto con el modulo RF para Arduino http://zygzax.com

2.

//RECEPTOR

3.

#include <VirtualWire.h>

4.
5.

void setup()

6.

7.

Serial.begin(9600);

8.

vw_set_ptt_inverted(true);

// Configuramos la conexion serie con el ordenador

9.

vw_setup(2000);

10.

vw_set_rx_pin(3);

11.

vw_rx_start();

// Requerido por el modulo RF


// Velocidad de conexion bps
// Pin en el que conectamos la patilla data del receptor

// Arrancamos el receptor

12. }
13.
14. void loop()
15. {
16.

uint8_t buf[VW_MAX_MESSAGE_LEN];

17.

uint8_t buflen = VW_MAX_MESSAGE_LEN;

18.

if (vw_get_message(buf, &buflen))

19.

20.

int i;

21.

// Mensaje con un chequeo correcto.

22.

for (i = 0; i < buflen; i++)

23.

24.

Serial.write(buf[i]);

25.

// Comprobamos si hemos recibido datos

// Los datos recibidos son guardados en el buffer


// y enviados por el puerto serie al ordenador

26.

27.

Serial.println();

28.

29. }

Una vez cargados los programas y en ejecucin, conectando el monitor serie de la aplicacin Arduino con
la placa receptora a 9600, deberamos ver el mensaje que estamos emitiendo desde la placa emisora.

S-ar putea să vă placă și