#include
String LoRaData = "";
void setup() { Serial.begin(9600); while (!Serial); Serial.println("LoRa Receiver");
if (!LoRa.begin(433E6)) { Serial.println("Starting LoRa failed!"); while (1); } }
void loop() { int packetSize = LoRa.parsePacket(); if (packetSize) { while (LoRa.available()) { LoRaData += (char)LoRa.read(); } Serial.println(LoRaData); LoRaData = ""; } delay(10); }
运行这个代码可能会发现无法从节点接收数据。所以,对于节点你需要输入以下代码
#include
String LoRaData = "hello world";
void setup() { Serial.begin(9600); while (!Serial); Serial.println("LoRa Sender");
if (!LoRa.begin(433E6)) { Serial.println("Starting LoRa failed!"); while (1); } }
void loop() { LoRa.beginPacket(); LoRa.print(LoRaData); LoRa.endPacket(); delay(1000); }
这将在每隔1秒钟发送一个“Hello World”消息。确保两个板子都使用相同的频率。这两个代码片段都使用433 MHz频率。 这些步骤应该能够解决Arduino UNO LoRa SX1278的数据传输问题。