T-Bad
Hectopat
Daha fazla
- Cinsiyet
- Erkek
- Meslek
- Mühendis
NRF24L01 modüllerini kullanarak LED yakma devresi yapıyordum. İlk başta her şey düzgün şekilde çalıştı. Sonrasında menzil testi yaptım. Menzil testinden sonra LED'de bir tutukluk oldu. Yani sanki veri bir geliyor bir gelmiyor art arda iki sefer geliyor gibiydi. Sonra birden çalışmamaya başladı. Sorunun ne olduğunu bulamadım. Yaptığım menzil testinde de her türlü önlemi almıştım. Aşağıdaki kodları en baştan beri kullanıyorum. Yani çalışmamaya başladığında bir değişiklik yapmadım. Sizce sorun kurduğum devrede mi yoksa kodumda mı bir sorun var. İlk başta çalışmış olması biraz beni çelişkilendirdi. Alıcı- verici ve adaptörde bir sorun olabilir diye değiştirmeyi denedim ama sonuç aynı. Kodları aşağıda paylaşıyorum. Ayrıca bir adet log dosyası oluşmuş onu da paylaşacağım.
Bu alıcının kodu
Bu da vericinin kodu
Bu da oluşan log dosyası.
Bu alıcının kodu
//alıcı.
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
int mesaj[1];
RF24 alici(9,10);
const uint64_t kanal = 0xE8E8F0F0E1LL;
int led = 2;
void setup(void){
Serial.begin(9600);
alici.begin();
alici.openReadingPipe(1,kanal);
alici.startListening();
pinMode(led, OUTPUT);
}
void loop(void){
if (alici.available())
{
alici.read ( mesaj , sizeof( mesaj ) );
if (mesaj[0] == 123)
{
delay(10);
digitalWrite(led, HIGH);
}
else {
digitalWrite(led, LOW);
}
delay(10);
}}
Bu da vericinin kodu
//verici.
#include <SPI.h>
#include <nRF24L01.h>
#include <RF24.h>
int mesaj[1];
RF24 verici(9,10);
const uint64_t kanal = 0xE8E8F0F0E1LL;
void setup(void)
{
verici.begin();
verici.openWritingPipe(kanal);
}
void loop(void)
{
mesaj[0] = 123;
verici.write(mesaj, sizeof(mesaj));
}
Bu da oluşan log dosyası.
Son düzenleyen: Moderatör: