Çözüldü2.31K görüntülenmeLora#analogsensor E22900T22D Lora
0

veri alıcı lora<br />#include "LoRa_E22.h"<br />#include <SoftwareSerial.h><br />  SoftwareSerial mySerial(10, 11);<br />  /*<br />   Pinler     Arduino Nano    Lora E22 900T22d<br />                  11                3<br />                  A0                4<br />*/<br />  LoRa_E22 e22ttl(&mySerial);<br />  struct Signal {<br />  char type[15] = "Fixaj.com";<br />  byte bar[4];<br />} data;<br />    void setup() {<br />  Serial.begin(9600);<br />  e22ttl.begin();<br />  delay(500);<br />}<br />  void loop() {<br />    ResponseStatus rs = e22ttl.sendFixedMessage(0, 27, 48, &data, sizeof(Signal));<br />  Serial.println(rs.getResponseDescription());<br />    delay(1000);<br />    while (e22ttl.available()  ) {<br />    ResponseStructContainer rsc = e22ttl.receiveMessage(sizeof(Signal));<br />    struct Signal data = *(Signal*) rsc.data;<br />    Serial.print("Yer: Kuyu  ");<br />    Serial.print("Su Basıncı : ");<br />    Serial.println(*(float*)(data.bar));<br />    rsc.close();<br />  }<br />}<br />veri gönderen lora <br />#include "LoRa_E22.h"<br />#include <SoftwareSerial.h><br />SoftwareSerial mySerial(A0,11); // Arduino RX <-- e22 TX, Arduino TX --> e22 RX<br />LoRa_E22 e22ttl(&mySerial);<br />   struct Signal {<br />  byte bar[4];<br />};<br />const float  OffSet = 0.483 ;<br /> float bar1;<br />    void setup() {<br />  Serial.begin(9600);<br />  e22ttl.begin();<br />  delay(500);<br />}<br />  void loop() {<br />   //Connect sensor to Analog 0<br />  bar1 = ((analogRead(0))-0,5)*2.5; <br />  while (e22ttl.available()  > 1); {<br />      // Gelen mesaj okunuyor<br />    ResponseStructContainer rsc = e22ttl.receiveMessage(sizeof(Signal));<br />  Serial.println ("Pressure");<br />    //Gönderilecek paket veri hazırlanıyor<br />    struct Signal  {<br />             float bar;<br />    } data2;<br />          (data2.bar)=(bar1);<br />    ResponseStatus rs = e22ttl.sendFixedMessage(0, 29, 48, &data2, sizeof(Signal));<br />    Serial.println(rs.getResponseDescription() );<br /> }<br />  }

bu iki koddaki hatalar düzeltmeme yardımcı olur musunuz ?

elimde 2 arduıno nano ile 2 e22 900 t22d var bunların birbiri ile iletişim halinde olmasını ve arduıno a0 analog girişine bağladığım basınç sensorünün diğer loraya ulaşmaını istiyorum ve karıştırdım. donanımsal kurulum konusunda bir sorun yaşamıyorum ama yazılım konusunda yardıma ihtiyacım var bu kod düzenlenir ise sadece sensör pn adresi değiştirilerek herkes bu koddan faydalanabilir?

Soru yeni cevaplara kapalıdır.
Recep Topaktaş En iyi cevap olarak seçildi Eylül 2, 2022
0

VERİ GÖNDEREN LORA

#include “LoRa_E22.h”
#include <SoftwareSerial.h>
SoftwareSerial mySerial(A0,11); // Arduino RX <– e22 TX, Arduino TX –> e22 RX
LoRa_E22 e22ttl(&mySerial);

struct Signal {
byte bar[4];
};
const float OffSet = 0.483 ;

float bar1;

void setup() {
Serial.begin(9600);
e22ttl.begin();
delay(500);
}

void loop() {

//Connect sensor to Analog 0
bar1 = ((analogRead(0))-0,5)*2.5;
while (e22ttl.available() > 1); {

// Gelen mesaj okunuyor
ResponseStructContainer rsc = e22ttl.receiveMessage(sizeof(Signal));

Serial.println (“Pressure”);
//Gönderilecek paket veri hazırlanıyor
struct Signal {

float bar;
} data2;

(data2.bar)=(bar1);
ResponseStatus rs = e22ttl.sendFixedMessage(0, 29, 48, &data2, sizeof(Signal));
Serial.println(rs.getResponseDescription() );
}

}

Recep Topaktaş En iyi cevap olarak seçildi Eylül 2, 2022
3 cevaptan 1'ini inceliyorsun, tüm cevapları görmek için buraya tıklayın.