Merhabalar, bir proje üzerinde çalışıyorum ve LoRa 433T20D modülünü aracılığıyla Arduino Nano ile ESP8266 arasında haberleşmeyi sağlamam gerekiyor. Fakat şöyle bir sorunum var; ESP8266’ya gönderdiğim paket ulaşmıyor, dolayısıyla haberleşmeyi sağlayamıyorum. Aynı kodlar ve aynı sistem ile iki Arduino Nano arasında haberleşmeyi başarılı bir şekilde gerçekleştirebiliyorum. Kullandığım kodları ekliyorum (Arduino Nano gönderen, ESP8266 ise alan)
Vericinin kod yapısı (Arduino)
#include <LoRa_E32.h>
#include <SoftwareSerial.h>
static const uint32_t serialBaud = 115200;
SoftwareSerial comSerial(5, 6);
LoRa_E32 e32ttl(&comSerial);
struct Points {
bool status[1] = {true};
}points;
void setup() {
Serial.begin(serialBaud);
e32ttl.begin();
}
void loop() {
dataOut(points.free[0]);
delay(1000);
}
void dataOut(bool status) {
struct DataStruct {
uint8_t stat[1];
}DataPacket;
*(int *)DataPacket.stat = status;
ResponseStatus rs = e32ttl.sendFixedMessage(0, 10, 23, &DataPacket, sizeof(DataStruct));
}
Alıcının kod yapısı (ESP8266)
#include <Arduino.h>
#include “LoRa_E32.h”
#include <SoftwareSerial.h>
SoftwareSerial mySerial(5, 6);
LoRa_E32 e32ttl(&mySerial);
struct DataStruct {
uint8_t stat[1];
}DataPacket;
void setup() {
Serial.begin(115200);
e32ttl.begin();
delay(500);
}
void loop() {
while (e32ttl.available() > 1) {
ResponseStructContainer rsc = e32ttl.receiveMessage(sizeof(DataStruct));
struct DataStruct DataPacket = *(DataStruct*) rsc.data;
Serial.print(“Durum: “);
Serial.println(*(int*)(DataPacket.stat));
rsc.close();
}
}
hocam öncelikle sipariş kodunuzu ve devrenizi görebilir miyim birde parametre ayar ekranlarını