15-10-2015, 19:36
Witam,
Proszę o pomoc w rozwiązaniu problemu związanego z transmisją 433MHz opartą na bibliotece VirtualWire.
W odbiorniku opartym na Arduino UNO powinienem uzyskać świecenie diody L (pin 13 arduino), kiedy odbierze dane z nadajnika.
Mam ciszę... dioda cały czas wygaszona...
Nadajnik i odbiornik 433MHz działaja jak widać na poniższym filmie, brak reakcji modułu Arduino UNO...
Arduino UNO jest sprawne, na nim programowałem nadajnik...
https://www.youtube.com/watch?v=LcUTz5GL6gk
Poniżej zamieszczam kody nadajnika i odbiornika.
Proszę o pomoc w rozwiązaniu problemu...
Kod nadajnika:
Kod odbiornika:
Proszę o pomoc w rozwiązaniu problemu związanego z transmisją 433MHz opartą na bibliotece VirtualWire.
W odbiorniku opartym na Arduino UNO powinienem uzyskać świecenie diody L (pin 13 arduino), kiedy odbierze dane z nadajnika.
Mam ciszę... dioda cały czas wygaszona...
Nadajnik i odbiornik 433MHz działaja jak widać na poniższym filmie, brak reakcji modułu Arduino UNO...
Arduino UNO jest sprawne, na nim programowałem nadajnik...
https://www.youtube.com/watch?v=LcUTz5GL6gk
Poniżej zamieszczam kody nadajnika i odbiornika.
Proszę o pomoc w rozwiązaniu problemu...
Kod nadajnika:
Kod:
// Transmiter
//
// Simple example of how to use VirtualWire to transmit messages
// Implements a simplex (one-way) transmitter with an TX-C1 module
//
// See VirtualWire.h for detailed API docs
// Author: Mike McCauley (mikem@airspayce.com)
// Copyright (C) 2008 Mike McCauley
// $Id: transmitter.pde,v 1.3 2009/03/30 00:07:24 mikem Exp $
#include <VirtualWire.h>
void setup()
{
Serial.begin(9600); // Debugging only
Serial.println("setup");
pinMode(13, OUTPUT); // Inicjacja pinu 13 jako wyjścia.
// Initialise the IO and ISR
vw_set_ptt_inverted(true); // Required for DR3100
vw_setup(2000); // Bits per sec
}
void loop()
{
const char *msg = "hello";
digitalWrite(13, true); // Flash a light to show transmitting
vw_send((uint8_t *)msg, strlen(msg));
vw_wait_tx(); // Wait until the whole message is gone
digitalWrite(13, false);
delay(200);
}
Kod odbiornika:
Kod:
// Receiver
//
// Simple example of how to use VirtualWire to receive messages
// Implements a simplex (one-way) receiver with an Rx-B1 module
//
// See VirtualWire.h for detailed API docs
// Author: Mike McCauley (mikem@airspayce.com)
// Copyright (C) 2008 Mike McCauley
// $Id: receiver.pde,v 1.3 2009/03/30 00:07:24 mikem Exp $
#include <VirtualWire.h>
void setup()
{
Serial.begin(9600); // Debugging only
Serial.println("setup");
pinMode(13, OUTPUT); // Inicjacja pinu 13 jako wyjścia.
// Initialise the IO and ISR
vw_set_ptt_inverted(true); // Required for DR3100
vw_setup(2000); // Bits per sec
vw_rx_start(); // Start the receiver PLL running
}
void loop()
{
uint8_t buf[VW_MAX_MESSAGE_LEN];
uint8_t buflen = VW_MAX_MESSAGE_LEN;
if (vw_get_message(buf, &buflen)) // Non-blocking
{
int i;
digitalWrite(13, true); // Flash a light to show received good message
// Message with a good checksum received, dump it.
Serial.print("Got: ");
for (i = 0; i < buflen; i++)
{
Serial.print(buf[i], HEX);
Serial.print(" ");
}
Serial.println("");
digitalWrite(13, false);
}
}