Çözüldü1.86K 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

hocam kodlardan yanlış anlamadıysam siz verici loranın adresini 63 yapmışsınız, göndereceği kodda adresi de 63 yapmışsınız. mantık hatası var. eğer böyle ise göndereceği adresi kodda alıcının adresi neyse onu yazın.

Mehmet En iyi cevap olarak seçildi Mart 27, 2022
0

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();
}
}

Erhan Himmetoğlu Cevaplanan soru Mart 2, 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
0

Hocam kod tam goruntulenmiyor size zahmet tekrar sadece kodlari cevap gibi ekler misiniz. 30d modeli 650ma ihtiyacini sistem kaldirmiyor olabilir. Ayrica temassizlikta olabilir. Simdi aux pinine 220r direnc ve bir led takin, succes yazdiginda ledin yanip sonmesi lazim. Kirpisma hic olmuyorsa demekki temassizlik var.

Mehmet Cevaplanan soru Mart 2, 2022
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.