RF 315/433 MHz sändar modul och Arduino (3 / 5 steg)
Steg 3: Arduino virtuell tråd bibliotek
VirtualWire är en Arduino bibliotek som tillhandahåller funktioner för att skicka korta meddelanden, utan att ta upp, vidaresända eller bekräftelse, lite som UDP över trådlöst, med ASK (amplitud shift keying). Stöder ett antal billiga radiosändare och mottagare.
Detta bibliotek kan du skicka och ta emot data "byte" och sträng lätt,
Först ladda ner biblioteket från här.
efter att extrahera mappen, och flytta den till "Bibliotek" på arduino mapp
Detta är en enkel kod, det kommer att skicka tecken '1' och efter 2 sek skickar karaktär '0' och så vidare.
denna kod för sändaren:
enkla Tx på stift D12
Skriven av: Björn Rawashdeh
3:00 pm, 13/6/2013
http://www.genotronex.com/
//..................................
#include < VirtualWire.h >
char * kontroller;
void setup() {
pinMode(13,OUTPUT);
vw_set_ptt_inverted(true); //
vw_set_tx_pin(12);
vw_setup(4000); / / hastighet av data överför Kbps
}void loop() {
Controller = "1";
vw_send ((uint8_t *) controller, strlen(controller));
vw_wait_tx(); Vänta tills hela meddelandet är borta
digitalWrite(13,1);
Delay(2000);
Controller = "0";
vw_send ((uint8_t *) controller, strlen(controller));
vw_wait_tx(); Vänta tills hela meddelandet är borta
digitalWrite(13,0);
Delay(2000);}
och detta är koden för mottagaren:
Den D13 LED på arduino styrelsen måste vara påslagen när tecknet '1' och Svarvade av när fått karaktär '0'
enkla Tx på stift D12
Skriven av: Björn Rawashdeh
3:00 pm, 13/6/2013
http://www.genotronex.com/
//..................................
#include < VirtualWire.h >
void setup()
{
vw_set_ptt_inverted(true); Krävs för DR3100
vw_set_rx_pin(12);
vw_setup(4000); Bitar per sekund
pinMode (13, OUTPUT);
vw_rx_start(); Starta mottagaren PLL driften
}
void loop()
{
uint8_t buf [VW_MAX_MESSAGE_LEN];
uint8_t buflen = VW_MAX_MESSAGE_LEN;
om (vw_get_message (buf, och buflen)) / / icke-blockerande
{
IF(BUF[0]=='1') {
digitalWrite(13,1);
}
IF(BUF[0]=='0') {
digitalWrite(13,0);
}
}
}