Çözüldü1.89K görüntülenmeLoraLora
0
#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.

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

Dışarıdan besleyerek tekrar deneyeceğim.

Gönderici kodları

#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ı kodları

#include “LoRa_E32.h”
#include <SoftwareSerial.h>

SoftwareSerial mySerial(9, 10);

/*
Pinler Arduino Nano Lora E32 433T20d
11 3
10 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();
}
}

Erhan Himmetoğlu Cevaplanan soru Mart 2, 2022
4 cevaptan 1'ini inceliyorsun, tüm cevapları görmek için buraya tıklayın.
Whatsapp'tan Yaz
1
Ürün Danışmanı Burada!
fixaj.com Ürün Danışmanı
Merhaba,

Ben sadece "Satın Alma" konularında destek vermekteyim.

Kodlama yardımı, haberleşme hataları, bağlantı şemaları vb. konularla ilgili "Soru&Cevap" https://fixaj.com/sorucevap/ sayfamızı ziyaret edebilirsiniz.