14-11-2015, 22:49
Witam ponownie...
Niestety na moje zapytanie w poprzednim poście muszę sobie odpowiedzieć sam
Po długich bojach w końcu opanowałem transmisję na nRF2401.
Poniżej chciałbym przedstawić najprostsze rozwiązanie jakie udało mi się napisać do obsługi
w jednym kierunku czyli nadajnik --> odbiornik.
Mam nadzieję, że komuś może się to przyda do szybkiego sprawdzenia modułów nRF2401.
Kod wgrywany do Arduino, który będzie nadajnikiem:
Kod wgrywany do Arduino, który będzie odbiornikiem:
Oczywiście aby sprawdzić czy jest transmisja musimy uruchomić monitor szeregowy na porcie odbiornika.
Wówczas powinna w nim pojawiać się co chwilę wartość: 123
Pozdrawiam i powodzenia.
ANT
Niestety na moje zapytanie w poprzednim poście muszę sobie odpowiedzieć sam
Po długich bojach w końcu opanowałem transmisję na nRF2401.
Poniżej chciałbym przedstawić najprostsze rozwiązanie jakie udało mi się napisać do obsługi
w jednym kierunku czyli nadajnik --> odbiornik.
Mam nadzieję, że komuś może się to przyda do szybkiego sprawdzenia modułów nRF2401.
Kod wgrywany do Arduino, który będzie nadajnikiem:
Kod:
//Nadajnik nRF2401.
#include <SPI.h>
#include "nRF24L01.h"
#include "RF24.h"
int msg[1];
RF24 radio(9,10);
const uint64_t pipe = 0xE8E8F0F0E1LL;
void setup(void)
{
radio.begin();
radio.openWritingPipe(pipe);
}
void loop ()
{
msg[0] = 123;
radio.write(msg, 1);
delay(500);
}
Kod wgrywany do Arduino, który będzie odbiornikiem:
Kod:
//Odbiornik nRF2401.
#include <SPI.h>
#include "nRF24L01.h"
#include "RF24.h"
int msg[1];
RF24 radio(9,10);
const uint64_t pipe = 0xE8E8F0F0E1LL;
void setup(void)
{
Serial.begin(9600);
radio.begin();
radio.openReadingPipe(1,pipe);
radio.startListening();
}
void loop(void)
{
if (radio.available())
{
radio.read(msg, 1);
Serial.println(msg[0]);
delay(100);
}
}
Oczywiście aby sprawdzić czy jest transmisja musimy uruchomić monitor szeregowy na porcie odbiornika.
Wówczas powinna w nim pojawiać się co chwilę wartość: 123
Pozdrawiam i powodzenia.
ANT
Jeżeli pomogłem, to poproszę o punkt reputacji