Geçtiğimiz gün, aynı devre ile E32 433T20D modülleri haberleştirmeye çalıştım fakat başarılı olamadım. Devreyi hiç değiştirmden E32 868T20D modülleri taktığımda ise haberleşme sağlandı. Bugün tekrar devreyi kurdum ve 433Mhz modülleri taktım ve yine haberleşemedim. Kodlar ve devre ekte yer almaktadır. Kod ” https://fixaj.com/bastan-sona-lora-modulu-ile-kablosuz-haberlesme-uygulamasi/ ” linkinde yer alan koddur. Adres ve kanalları kontrol ettim. Hatta loranın üzerine yazdım. 5 cm ve 50 cm mesafelerde denedim. (Hata aldığım için devre ve ayar fotoğraflarını yükleyemedim)
#include "LoRa_E32.h"<br />#include <SoftwareSerial.h><br /> SoftwareSerial mySerial(10, 11); <br /> /*<br /> * Pinler Arduino Nano Lora E32 433T20d<br /> * 11 3<br /> * 10 4<br /> */<br /> LoRa_E32 e32ttl(&mySerial);<br /> typedef struct {<br /> byte throttle;<br /> byte pitch;<br /> byte roll;<br /> byte yaw;<br />} Signal;<br /> Signal data;<br /> void ResetData()<br />{<br /> data.throttle = 127; // Motor Stop (254/2=127)| Motor Kapalı (Signal lost position | sinyal kesildiğindeki pozisyon)<br /> data.pitch = 127; // Center | Merkez (Signal lost position | sinyal kesildiğindeki pozisyon)<br /> data.roll = 127; // Center | merkez (Signal lost position | sinyal kesildiğindeki pozisyon)<br /> data.yaw = 127; // Center | merkez (Signal lost position | sinyal kesildiğindeki pozisyon)<br />}<br /> void setup(){<br /> Serial.begin(9600);<br /> ResetData();<br /> e32ttl.begin();<br /> delay(500); <br />}<br /> void loop(){ <br /> data.throttle = map(analogRead(A1), 0, 1023, 0, 255);<br /> data.roll = map(analogRead(A0), 0, 1023, 0, 255);<br /> ResponseStatus rs = e32ttl.sendFixedMessage(0, 3, 7, &data, sizeof(Signal));<br /> Serial.println(rs.getResponseDescription());<br /> Serial.print(" data.throttle): " );<br /> Serial.print( data.throttle );<br /> Serial.print("\t");<br /> Serial.print(" data.roll): " );<br /> Serial.println( data.roll);<br /> delay(1000);<br /> }<br /> --------------------------------------------------------------------------------------------------------------------------------------------------<br />#include "LoRa_E32.h"<br />#include <SoftwareSerial.h><br />SoftwareSerial mySerial(10, 11); // Arduino RX <-- e32 TX, Arduino TX --> e32 RX<br />LoRa_E32 e32ttl(&mySerial);<br /> typedef struct {<br /> byte throttle;<br /> byte pitch;<br /> byte roll;<br /> byte yaw;<br />} Signal;<br /> Signal data;<br /> void ResetData()<br />{<br /> data.throttle = 127; // Motor Stop (254/2=127)| Motor Kapalı (Signal lost position | sinyal kesildiğindeki pozisyon)<br /> data.pitch = 127; // Center | Merkez (Signal lost position | sinyal kesildiğindeki pozisyon)<br /> data.roll = 127; // Center | merkez (Signal lost position | sinyal kesildiğindeki pozisyon)<br /> data.yaw = 127; // Center | merkez (Signal lost position | sinyal kesildiğindeki pozisyon)<br />}<br /> void setup() {<br /> Serial.begin(9600);<br /> ResetData();<br /> e32ttl.begin();<br /> delay(500);<br /> Serial.println("Gaz \t Roll");<br /> }<br /> void loop() {<br /> while (e32ttl.available() > 1) {<br /> ResponseStructContainer rsc = e32ttl.receiveMessage(sizeof(Signal));<br /> data = *(Signal*) rsc.data;<br /> rsc.close();<br /> Serial.print(F("gaz: "));<br /> Serial.print(data.throttle);<br /> Serial.print(F("\t roll: "));<br /> Serial.println(data.roll); <br /> }<br /> }
Soru yeni cevaplara kapalıdır.
Anonim Yeni yorum gönderildi Temmuz 4, 2024
Detaylı bir makale olmuş. Baştan sona okudum ve karşılaşmış olduğum için de mutluyum. Teşekkür ederim.
Teşekkürler Mehmet Bey,
Aynı devre ile 868Mhz modülleri haberleştirebilirken 433Mhz haberleştiremiyordum. RX pinini direkt bağlayınca sorun çözüldü. Sanırım gerilimle ilgili bir sorun yaşadım.