Kütüphanesiz LoRa Kullanımı

Arkadaşlardan çokça soru gelen kütüphanesiz lora modülü kullanımı ile ilgili örnekleri bu sayfada toparlıyorum.

1 İnt Tipinde Büyük Sayıları Yollama ve Alma

Gönderici Kodu:

#include <SoftwareSerial.h>
SoftwareSerial FixSerial(10, 11);

#define M0 7
#define M1 6

void setup() {
  Serial.begin(115200);

  pinMode(M0, OUTPUT);
  pinMode(M1, OUTPUT);
  digitalWrite(M0, LOW);
  digitalWrite(M1, LOW);

  FixSerial.begin(9600);
}

void loop() {
  FixSerial.write((byte)0x00); //Alıcı Adresi HIGH
  FixSerial.write(3);       //Alıcı Adresi LOW
  FixSerial.write(18);       //Alıcı Kanalı =0x17=23    (410M+23=433 MHz)

  intGonder(12345); // Bu Sayıyı Göndereceğiz ->
  delay(1000);
}

void intGonder(int sayi) {
  FixSerial.write(highByte (sayi));
  FixSerial.write(lowByte (sayi));
}

//GÖNDERİCİ LORA

Alıcı Taraf

#include <SoftwareSerial.h>
SoftwareSerial FixSerial(10, 11);

#define M0 6
#define M1 7
byte upperByte, lowerByte;
int newInt=0;

void setup() {
  Serial.begin(115200);
  
  pinMode(M0, OUTPUT);
  pinMode(M1, OUTPUT);
  digitalWrite(M0, LOW);
  digitalWrite(M1, LOW);
  
  FixSerial.begin(9600);
}

void loop() {
  if (FixSerial.available() > 1) {
    upperByte = FixSerial.read();
    lowerByte = FixSerial.read();

    newInt = (upperByte << 8) + lowerByte;
    Serial.print("Sayi= ");
    Serial.println(newInt);
  }
}

//ALICI LORA

2 String Yollama

Gönderici

#include <SoftwareSerial.h>
SoftwareSerial FixSerial(10, 11);
byte i = 0;
#define M0 7
#define M1 6
void setup() {
  Serial.begin(115200);
  pinMode(M0, OUTPUT);
  pinMode(M1, OUTPUT);
  digitalWrite(M0, LOW);
  digitalWrite(M1, LOW);
  FixSerial.begin(9600);
}
void loop() {
  FixSerial.write((byte)0x00); //Alıcı Adresi HIGH
  FixSerial.write(3);       //Alıcı Adresi LOW
  FixSerial.write(18);       //Alıcı Kanalı =0x17=23    (410M+23=433 MHz)
  
  FixSerial.println("Selam");
  delay(500);
}

Alıcı

#include <SoftwareSerial.h>

SoftwareSerial FixSerial(10, 11);
char rc;

#define M0 6
#define M1 7


void setup() {
  Serial.begin(115200);
  pinMode(M0, OUTPUT);
  pinMode(M1, OUTPUT);
  digitalWrite(M0, LOW);
  digitalWrite(M1, LOW);
  FixSerial.begin(9600);
}

void loop() {
  while (FixSerial.available()) {
    rc = FixSerial.read();
    Serial.print(rc);    
  }
}

3 Video

Youtube fixaj kanalımız üzerinden de kütüphanesiz lora kullanım videosunu izlemenizi tavsiye ederim.