Rispondi a: Problema comunicazione NRF24L01+

Home Forum FORUM ELETTRONICA MICROCONTROLLORI E CODICI Problema comunicazione NRF24L01+ Rispondi a: Problema comunicazione NRF24L01+

#4384
Led_ON
Partecipante

Allora grandi notizie!

Sembra funzionare! In realtà non ho usato il tuo codice, ma proprio quello che avevo postato all’inizio. L’unica cosa che ho fatto è stata sostituire i due NRF24L01+ con due nuovi ed adesso va tutto!

Secondo me li ho bruciati, perchè alimentavo il PIC a 5V ed i modulini a 3.3V. Però pensavo che fossero tolleranti ai 5V. Boh.

Tuttavia non va ancora come dovrebbe: Ho implementato un programma dove il master conta da 0 a 255 aumentando di un’unità ogni 1secondo e manda il nuovo numero al ricevitore. Tuttavia il ricevitore non “segue bene” il conteggio.

Ovvero, i numeri che manda il TX, il ricevitore li mostra, ma non tutti. Alle volte il TX avanza il conteggio anche di 3-4 unità e lui rimane indietro. Poi improvvisamente si “risveglia” e mostra l’ultimo numero ricevuto. Non so se mi sono spiegato…

Ti mando i while(1) dei due programmi:

TRASMETTITORE:


x = 1;                                           //inizializzo x ad 1
while(1){                                        //ciclo infinito
  send_data(1, &x);                              //invio 1byte e il byte è la variabile x
  PORTC = x;                                     //visualizzo il dato inviato sul trasmettitore
  delay_ms(1000);
  x++;
 }

RICEVITORE:

 while(1){                          //ciclo infinito
  if(get_Status_Reg() == 0x40)      //controllo nello status register se il bit di segnalazione di dato ricevuto è alto
  {
    receive_data(1, &x);            //se si vado a leggere il dato
    PORTC = x;                       //e in questo caso lo visualizzo sulle portB
  }