#include "LoRa_E32.h"<br />#include <SoftwareSerial.h><br /> SoftwareSerial mySerial(9, 10);<br /> /*<br /> Pinler Arduino Nano Lora E32 433T20d<br /> 10 3<br /> 9 4<br />*/<br /> LoRa_E32 e32ttl(&mySerial);<br /> struct Signal {<br /> char type[15] = "Fixaj.com";<br /> byte temp[4];<br />} data;<br /> void setup() {<br /> Serial.begin(9600);<br /> e32ttl.begin();<br /> delay(500);<br />}<br /> void loop() {<br /> ResponseStatus rs = e32ttl.sendFixedMessage(0, 44, 6, &data, sizeof(Signal));<br /> Serial.println(rs.getResponseDescription());<br /> delay(2000);<br /> while (e32ttl.available() > 1) {<br /> ResponseStructContainer rsc = e32ttl.receiveMessage(sizeof(Signal));<br /> struct Signal data = *(Signal*) rsc.data;<br /> Serial.print("Yer: ");<br /> Serial.println(data.type);<br /> Serial.print("Ortam Sıcaklığı: ");<br /> Serial.println(*(float*)(data.temp));<br /> rsc.close();<br /> }<br />}
#include "LoRa_E32.h"<br />#include <SoftwareSerial.h><br />SoftwareSerial mySerial(9, 10); // Arduino RX <-- e32 TX, Arduino TX --> e32 RX<br />LoRa_E32 e32ttl(&mySerial);<br /> struct Signal {<br /> char type[15];<br /> byte temp[4];<br />} data;<br /> void setup() {<br /> Serial.begin(9600);<br /> e32ttl.begin();<br /> delay(500);<br />}<br /> void loop() {<br /> while (e32ttl.available() > 1) {<br /> // Gelen mesaj okunuyor<br /> ResponseStructContainer rsc = e32ttl.receiveMessage(sizeof(Signal));<br /> struct Signal data = *(Signal*) rsc.data;<br /> Serial.print("Gelen Messaj: ");<br /> Serial.println(data.type);<br /> rsc.close();<br /> //Gönderilecek paket veri hazırlanıyor<br /> struct Signal {<br /> char type[15] = "Bebek Odası";<br /> byte temp[4];<br /> } data2;<br /> *(float*)(data2.temp) = 19.2;<br /> ResponseStatus rs = e32ttl.sendFixedMessage(0, 63, 6, &data2, sizeof(Signal));<br /> Serial.println(rs.getResponseDescription());<br /> }<br /> }
Alıcı modulün Parametre ayarları aşağıdaki gibi yapılmıştır. Verici modülde ise sadece Address kısmı “63” olarak değiştirilmiştir.
Alıcıda Arduino Nano ve E32900T30D
Vericide Arduino Uno ve E32900T30D kullanıldı.
Hem alıcıda hem de vericide benzer bağlantılar var. Bağlantılar şu şekilde;
M0 – Gnd
M1 – Gnd
Rx – 10
Tx – 9
Aux – Boş
Vcc – 5V
Gnd – Gnd
Verici seri port ekranı açıldığında her hangi bir mesaj görüntülenmiyor.
Alıcı seri port ekranı açıldığında ise aralıklarla “Sucsess” şeklinde yazı görüntüleniyor.
Zaman ayırıp değerli bilgilerinizle bana ve lise öğrencilerine ışık tuttuğunuz için şimdiden teşekkür ederim.
Dışarıdan besleyerek tekrar deneyeceğim.
verici kısmı kodu
#include “LoRa_E32.h”
#include <SoftwareSerial.h>
SoftwareSerial mySerial(9, 10); // Arduino RX <– e32 TX, Arduino TX –> e32 RX
LoRa_E32 e32ttl(&mySerial);
struct Signal {
char type[15];
byte temp[4];
} data;
void setup() {
Serial.begin(9600);
e32ttl.begin();
delay(500);
}
void loop() {
while (e32ttl.available() > 1) {
// Gelen mesaj okunuyor
ResponseStructContainer rsc = e32ttl.receiveMessage(sizeof(Signal));
struct Signal data = *(Signal*) rsc.data;
Serial.print(“Gelen Messaj: “);
Serial.println(data.type);
rsc.close();
//Gönderilecek paket veri hazırlanıyor
struct Signal {
char type[15] = “Bebek Odası”;
byte temp[4];
} data2;
*(float*)(data2.temp) = 19.2;
ResponseStatus rs = e32ttl.sendFixedMessage(0, 63, 6, &data2, sizeof(Signal));
Serial.println(rs.getResponseDescription());
}
}
alıcı kısmı kodu
#include “LoRa_E32.h”
#include <SoftwareSerial.h>
SoftwareSerial mySerial(9, 10);
/*
Pinler Arduino Nano Lora E32 433T20d
10 3
9 4
*/
LoRa_E32 e32ttl(&mySerial);
struct Signal {
char type[15] = “Fixaj.com”;
byte temp[4];
} data;
void setup() {
Serial.begin(9600);
e32ttl.begin();
delay(500);
}
void loop() {
ResponseStatus rs = e32ttl.sendFixedMessage(0, 44, 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(“Ortam Sıcaklığı: “);
Serial.println(*(float*)(data.temp));
rsc.close();
}
}