wtorek, 4 marca 2014

Arduino nadajnik-odbiornik 433MHz RF

Wstęp:
Tytułem wstępu. Schemat łączenia zaczerpnąłem od Pana Elektro Maras z Youtuba a stronę stworzyłem aby nie zapomnieć jak to podłączyć i mieć to zawsze pod ręką. Polecam zajrzeć też na Youtuba.
http://www.youtube.com/watch?v=3rRlp79qHIs
Na uwagę zasługuje także projekt ze skrzynką pocztową wykorzystujący połaczenie RF
http://majsterkowo.pl/prosty-system-powiadamiania-o-nowych-listach-znajdujacych-sie-w-skrzynce-pocztowej/

Zasada działania:
1. Nadajnik wysyła sygnał z arduino sygnalizując wysyłanie miganiem diody L (sprzężonej z pinem 13).
2. Odbiornik z drugiego arduino odbiera sygnał potwierdzając odbiór miganiem diody L, oraz wyświetla pobierany sygnał na monitorze połączenia.
3. W celu prawidłowego działania systemu należy pobrać ze strony arduino bibliotekę VirtualWire.

Kod programu dla nadajnika:
#include <VirtualWire.h>

void setup()
{
    Serial.begin(9600);
    Serial.println("setup");

    vw_set_ptt_inverted(true);
    vw_setup(2000);
}

void loop()
{
    const char *msg = "hello";

    digitalWrite(13, true);
    vw_send((uint8_t *)msg, strlen(msg));
    vw_wait_tx();
    digitalWrite(13, false);
    delay(200);

}

Kod programu dla odbiornika:
#include <VirtualWire.h>

void setup()
{
    Serial.begin(9600);
    Serial.println("setup");

    vw_set_ptt_inverted(true);
    vw_setup(2000);

    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;

        digitalWrite(13, true);
Serial.print("Got: ");

for (i = 0; i < buflen; i++)
{
   Serial.print(buf[i], HEX);
   Serial.print(" ");
}
Serial.println("");
        digitalWrite(13, false);
    }

}

Brak komentarzy:

Prześlij komentarz