Witam! Realizuję projekt w którym wykorzystuję moduły komunikacyjne nRF24L01 do budowy sieci sensorów. Sieć narazie składa się z jednego węzła, który odczytuje temperaturę. Dane z tego węzła trafiają do bramy, a brama ma przekazywać dane do bazy danych Firebase. Bramą ma być Arduino Nano 33 IoT, jednak natchnąłem się tu na problem, ponieważ nano wyświetla nie poprawnie odczyty temperatury. Bramę stworzyłem też na Arduino Mega i Uno, i te płytki odczytują poprawnie dane. Moje pytanie brzmi, czym może być spowodowane to, że Nano 33 IoT źle wyświetla dane? Jak można to naprawić? Poniżej załączam kod programu bramy i zdjęcia z odczytu temperatury na Nano 33 IoT(COM5) i Mega(COM9). Za wszelką pomoc z góry dziękuję!
PS. Temperatura zapisałem w typie całkowitym int, czyli np. odczyt 30.31 będzie w wyświetlony jako 3031.
#include <RF24Network.h>
#include <RF24.h>
#include <SPI.h>
RF24 radio(7,8);
RF24Network network(radio);
const uint16_t this_node = 00;
void setup() {
Serial.begin(9600);
SPI.begin();
radio.begin();
network.begin(90, this_node);
radio.setDataRate(RF24_2MBPS);
Serial.println("Start");
}
void loop() {
network.update();
// Receiving
while(network.available()){
RF24NetworkHeader header;
int incomingData;
network.read(header, &incomingData, sizeof(incomingData));
if(header.from_node == 01){
Serial.print("Temperatura: ");
Serial.print(incomingData);
Serial.println(" *C");
}
/*
if(header.from_node == 02){
Serial.print(incomingData);
Serial.println(" BPM");
}
*/
}
}