modülü daha önce kullanan varmı internette 1000 ile 1500 mt transfer yaptığı yazıyo hiç kullanmadım modül ile 3 adet servo 1 adet dc motor kullanıcağım kodlar
VERİCİ KODLARI
#include <SPI.h>
#include <LoRa.h>
const int buttonPins[] = {2, 3, 4, 5, 6, 7}; // Buton pinleri
byte buttonState = 0;
void setup() {
LoRa.begin(433E6); // 433 MHz bandında çalıştır
for (int i = 0; i < 6; i++) {
pinMode(buttonPins, INPUT_PULLUP); // Butonlar için pin modları
}
}
void loop() {
buttonState = 0;
for (int i = 0; i < 6; i++) {
if (digitalRead(buttonPins) == LOW) {
buttonState |= (1 << i); // Buton durumlarını bit olarak kaydet
}
}
LoRa.beginPacket();
LoRa.write(buttonState); // Buton durumunu gönder
LoRa.endPacket();
delay(100); // Paket gönderme sıklığı
}
ALICI KODLARI
#include <SPI.h>
#include <LoRa.h>
#include <Servo.h>
Servo servo1;
Servo servo2;
Servo servo3;
const int ledPins[] = {7, 8}; // 1. ve 2. butonların kontrol edeceği LED pinleri
const int servoPins[] = {9, 10, 11}; // 3., 5., ve 6. butonların kontrol edeceği servo motor pinleri
void setup() {
LoRa.begin(433E6); // 433 MHz bandında çalıştır
for (int i = 0; i < 2; i++) {
pinMode(ledPins, OUTPUT);
}
servo1.attach(9);
servo2.attach(10);
servo3.attach(11);
}
void loop() {
int packetSize = LoRa.parsePacket();
if (packetSize) {
byte buttonState = LoRa.read();
// 1. Buton kontrolü (7. pin)
digitalWrite(7, (buttonState & (1 << 0)) ? HIGH : LOW);
// 2. Buton kontrolü (8. pin)
digitalWrite(8, (buttonState & (1 << 1)) ? HIGH : LOW);
// 3. Buton kontrolü (Servo 45 derece sol, 9. pin)
if (buttonState & (1 << 2)) {
servo1.write(45);
} else {
servo1.write(0);
}
// 4. Buton kontrolü (Servo 45 derece sol, 9. pin)
if (buttonState & (1 << 3)) {
servo1.write(45);
} else {
servo1.write(0);
}
// 5. Buton kontrolü (Servo 180 derece sol, 10. pin)
if (buttonState & (1 << 4)) {
servo2.write(180);
} else {
servo2.write(0);
}
// 6. Buton kontrolü (Servo 180 derece sol, 11. pin)
if (buttonState & (1 << 5)) {
servo3.write(180);
} else {
servo3.write(0);
}
}
}