Nrf24l01 hata

Katılım
14 Ara 2020
Mesajlar
22
Puanları
1
void value not ignored as it ought to be
arkadaşlar nrf modülümün alıcı bölümünde böyle bir hata çıkıyor yardımcı olabilirmisiniz?
kodun tamamı bu;
Kod:
#include <SPI.h>
#include "nRF24L01.h"
#include "RF24.h"
#include "Servo.h"

Servo motor;
int veri[1];
RF24 radio(9,10);
const uint64_t eslesme = 0xE8E8F0F0E1LL;
void setup() {
  motor.attach(6);
  Serial.begin(9600);
radio.begin();
radio.openReadingPipe(1, eslesme);
radio.startListening();
}

void loop() {
if (radio.available()){
  bool done=false;
  while (!done){
    done=radio.read(veri, 1); bu bölümde hata gösteriyor
    Serial.println(veri[0]);
    delay(10);
    motor.write(veri[0]);
    }
  }
  else{Serial.println("Sinyal Bulunamadı...");}
}
 
Moderatör tarafında düzenlendi:
bu kütüphane zaten var diyor
 
done=radio.read(veri,1)

radio.read() fonksiyonunun bool olduğuna emin misin? Alet bu void fonksiyon olduğu için gözardı edilmesi gerekir ama edilmiyor diyor. Bir veri döndürmediği için de done hiçbir zaman true olamıyordur.
 
int veri tipinin uzunluğu 1 değil.
C++:
done = radio.read( veri, 1) );
yerine
C++:
done = radio.read( &veri[0], sizeof(int) );
şeklinde deneyin.
 
Olmayan ne?
Derleme hatası mı, yoksa derleniyor da istediğin gibi mi çalışmıyor.
 
Eski kutuphanede void döndürüyor, yeni kütüphane bool. Eskiyi kaldır yeniyi yükle. Ya da eski örnekleri kullan
 

Forum istatistikleri

Konular
129,867
Mesajlar
930,872
Kullanıcılar
452,732
Son üye
erencok

Yeni konular

Geri
Üst