21-10-2017, 23:20
Cześć wszystkim
Takie oto nadajnik i odbiornik posiadam link tu
Mam takie pytanie, czy możliwe jest nadawanie i odbieranie na jednym arduino? Chcę przetestować nadajnik i odbiornik czy wgl działają, ogarnąć komunikacje. Mam taki kod :
KOD NADAJNIKA:
KOD ODBIORNIKA:
Połączyłem to tak:
Połączenie kabli: (@edit na tym sie wzorowałem)
link
Nadajnik podpinam pod 3.3v bo działa z takim napięciem według strony na której kupiłem.
Mam ewentualnie jeszcze do dyspozycji Raspberry Pi Zero, żeby sprawdzić tylko nie mogę nigdzie znaleźć kodu odbiornika w pythonie Ostatecznie chce wysyłać dane z czujników arduino i przetwarzać na raspberry . Pozdrawiam.
Takie oto nadajnik i odbiornik posiadam link tu
Mam takie pytanie, czy możliwe jest nadawanie i odbieranie na jednym arduino? Chcę przetestować nadajnik i odbiornik czy wgl działają, ogarnąć komunikacje. Mam taki kod :
KOD NADAJNIKA:
Kod:
#include <VirtualWire.h>
// definiujemy piny
#define transmit_pin 10
void setup()
{
// przygotowujemy potrzebne informacje dla biblioteki
vw_set_tx_pin(transmit_pin);
vw_setup(2000);
}
void loop()
{
String toSend = ("hello world"); // tekst wiadomości
char msg[23]; // tworzymy tablicę typu char
toSend.toCharArray(msg, toSend.length() + 1); // konwertujemy nasz tekst do tablicy char'ów
vw_send((uint8_t *)msg, strlen(msg));// wysyłamy
vw_wait_tx();
delay(1000); // czekamy 1 sekundę
}
KOD ODBIORNIKA:
Kod:
#include <VirtualWire.h>
#define receive_pin 11
void setup()
{
Serial.begin(9600);
Serial.println("setup");
// przygotowujemy potrzebne informacje dla biblioteki
vw_set_rx_pin(receive_pin);
vw_setup(2000);
vw_rx_start(); // startujemy odbieranie danych (uruchamiamy)
}
void loop()
{
// częśc wymagana do poprawnego działania biblioteki
uint8_t buf[VW_MAX_MESSAGE_LEN];
uint8_t buflen = VW_MAX_MESSAGE_LEN;
if (vw_get_message(buf, &buflen)) // jeśli odbierzemy dane
{
int i;
Serial.println("Got: "); // piszemy Got:
for (i = 0; i < buflen; i++) // w pętli zczytujemy dane z odbiornika
{
Serial.print(buf[i], HEX); // i wypisujemy dane na Serial'u
Serial.print(' ');
}
Serial.println();
}
}
Połączyłem to tak:
Kod:
#include <VirtualWire.h>
// definiujemy piny
#define transmit_pin 10
#define receive_pin 11
void setup()
{
// przygotowujemy potrzebne informacje dla biblioteki
vw_set_tx_pin(transmit_pin);
vw_setup(2000);
Serial.begin(9600);
Serial.println("setup");
// przygotowujemy potrzebne informacje dla biblioteki
vw_set_rx_pin(receive_pin);
vw_setup(2000);
vw_rx_start(); // startujemy odbieranie danych (uruchamiamy
}
void loop()
{
TRANSMITER();
RECRIVER();
}
void TRANSMITER(){
String toSend = ("hello world"); // tekst wiadomości
char msg[23]; // tworzymy tablicę typu char
toSend.toCharArray(msg, toSend.length() + 1); // konwertujemy nasz tekst do tablicy char'ów
vw_send((uint8_t *)msg, strlen(msg));// wysyłamy
vw_wait_tx();
delay(1000); // czekamy 1 sekundę
}
void RECRIVER(){
// częśc wymagana do poprawnego działania biblioteki
uint8_t buf[VW_MAX_MESSAGE_LEN];
uint8_t buflen = VW_MAX_MESSAGE_LEN;
if (vw_get_message(buf, &buflen)) // jeśli odbierzemy dane
{
int i;
Serial.println("Got: "); // piszemy Got:
for (i = 0; i < buflen; i++) // w pętli zczytujemy dane z odbiornika
{
Serial.print(buf[i], HEX); // i wypisujemy dane na Serial'u
Serial.print(' ');
}
Serial.println();
}
}
Połączenie kabli: (@edit na tym sie wzorowałem)
link
Nadajnik podpinam pod 3.3v bo działa z takim napięciem według strony na której kupiłem.
Mam ewentualnie jeszcze do dyspozycji Raspberry Pi Zero, żeby sprawdzić tylko nie mogę nigdzie znaleźć kodu odbiornika w pythonie Ostatecznie chce wysyłać dane z czujników arduino i przetwarzać na raspberry . Pozdrawiam.