Çözüldü2.27K görüntülenmeLoraarduino-nano esp32 Lora E32
0

Merhabalar,

Geçtiğimiz günlerde mağazanızdan iki adet lora modül, 2 adet anten, 2 adet esp32 pcb aldım.

Amacım arduino nano ve esp8266 kullanarak lora uygulaması yapmak. PCB’ler uyumsuz olduğu için jumperlar yardımıyla resimdeki gibi devre kurdum. 3.3V, gnd, tx, rx, m0 ve m1 pinlerini resimdeki gibi bağladım. Kodları da youtube kanalınızdaki şekilde yazıp, kartları programladım. Fakat seri kanal ekranında herhangi bi gönderme alma işlemi göremedim. Yardımcı olabilir misiniz? Teşekkürler.

Soru yeni cevaplara kapalıdır.
Mehmet En iyi cevap olarak seçildi Haziran 5, 2022
0

// ESP8266

#include “LoRa_E32.h”
LoRa_E32 e32ttl(&Serial1);

struct Signal {

char type[15] = “ESP32 Selam”;
byte temp[4];

} data;

#define M0 6
#define M1 5

void setup() {
pinMode(M0, OUTPUT);
pinMode(M1, OUTPUT);
digitalWrite(M0, LOW);
digitalWrite(M1, 0);

Serial.begin(9600);
e32ttl.begin();
delay(500);

}

void loop() {

ResponseStatus rs = e32ttl.sendFixedMessage(0, 2, 6, &data, sizeof(Signal));
Serial.println(rs.getResponseDescription());

delay(2000);

while (e32ttl.available() > 1) {
ResponseStructContainer rsc = e32ttl.receiveMessage(sizeof(Signal));
struct Signal data = *(Signal*) rsc.data;
Serial.print(“Yer: “);
Serial.println(data.type);
Serial.print(“İrtifa: “);
Serial.println(*(float*)(data.temp));
rsc.close();
}
}

// NANO

#include “LoRa_E32.h”
#include <SoftwareSerial.h>
SoftwareSerial mySerial(10,11);
LoRa_E32 e32ttl(&mySerial);

struct Signal {
char type[15];
byte temp[4];
} data;

#define M0 7
#define M1 8

void setup() {
pinMode(M0, OUTPUT);
pinMode(M1, OUTPUT);
digitalWrite(M0, LOW);
digitalWrite(M1, 0);

Serial.begin(9600);
e32ttl.begin();
delay(500);
}

void loop() {
while (e32ttl.available() > 1) {
ResponseStructContainer rsc = e32ttl.receiveMessage(sizeof(Signal));
struct Signal data = *(Signal*) rsc.data;
Serial.print(“Yer: “);
Serial.println(data.type);
rsc.close();

char* source = “NANO Selam”;
strcpy(data.type, source);

*(float*)(data.temp) = 19.2;

ResponseStatus rs = e32ttl.sendFixedMessage(0,1,6,&data,sizeof(Signal));
Serial.println(rs.getResponseDescription());
}
}

Bit Celik Cevaplanan soru Mayıs 29, 2022
3 cevaptan 1'ini inceliyorsun, tüm cevapları görmek için buraya tıklayın.