• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
LoRa 433
#11
Ja ten kod rozumiem w ten sposób, że nadajnik wyświetla zmienną tekstową w monitorze portu szeregowego, czyli UART, oraz "wypuszcza" tą zmienną na port LoRa. Natomiast odbiornik odczytuje tą zmienną i wyświetla ją w monitorze portu szeregowego drugiego Arduino UNO. Przy czym pętla if w nadajniku uruchamia się wtedy, gdy wpiszemy jakiś tekst do UART, czyli jeśli Arduino odbierze dane z portu szeregowego, a pętla if w odbiorniku działa, jeżeli zostaną wykryte dane z portu loraSerial, czyli podłączone RX i TX nadajnika/odbiornika LoRa. Czy ja to źle pojmuje?

Wydaje mi się że powinno to działać w ten sposób logicznie. Zamówiłem kolejny moduł LoRa, ale uświadczyło mnie to tylko w przekonaniu że niestety problem jest w kodzie.
 
Odpowiedź
#12
No bo jest w kodzie bład, dopóki nie zrozumiesz komunikacji uart to nic nie zrobisz, a wątpię by ktoś ci napisał program komunikacyjny pod twoje założenia których nawet brak.. Nie pojmujesz tego że jak wysyłasz binarnie "1" lub "0" to musisz to odczytywać do własnego bufora w odbiorniku i określać początek lub koniec to co cie interesuje..

Jeżeli wysyłasz dane funkcją print, to musisz określić koniec. Moza używać println który ma już koniec.. Jak masz określony koniec to przy odbiorze musisz odczytywać do tego końca i wtedy to są twoje dane które cię interesują...

na pewno nie znajdziesz taich funkcji że wysyłasz jakąś zmienną i odczytasz zmienną. Zemina to dane zapisane w postaci binarnej i tak zostaje wysłana, i tak zostanie odebrana..
Arduino zostało wymyślone po to, by robić dobrze jedną prostą rzecz – migać diodą. 
 
Odpowiedź
#13
To jest logiczne, ale dlaczego w takim wypadku większość poradników internetowych do LoRy, w tym najbardziej podstawowym działaniu wrzuca taki kod, jaki podałem w linkach? To nie jest jedyny taki poradnik, znalazłem takie cztery albo pięć i wszystkie są bliźniacze. Liczyłem na to że łatwiej będzie załapać tą komunikację.
 
Odpowiedź
#14
A czy ty byś udostępnił kody źródłowe swojej pracy nad która pracowałeś powiedzmy 3 miesiące tak za free?? To są tylko przykłady podane, podstawa tylko....
Arduino zostało wymyślone po to, by robić dobrze jedną prostą rzecz – migać diodą. 
 
Odpowiedź
#15
[EDIT 04.12.2020]

Udało mi się wykorzystać LoRa do prawidłowego przesłania danych.

Przypomnę, że posiadam dwa moduły Lora E32 EBYTE, na których pracuje. Wykorzystuje do tego bibliotekę "EBYTE", której autorem jest Kris Kasprzak. Zacząłem od najprostszego przesyłania danych, wykorzystując gotowe pliki examples od autora biblioteki, pracując na dwóch Arduino UNO. Potem poszedłem krok dalej i bawiłem się w przesyłanie danych z czujników. Wszystko działało w końcu bez większego problemu.
Chciałem teraz spróbować zrobić to samo, ale z wykorzystaniem ESP32. Kontaktowałem się z autorem biblioteki, który twierdzi że powinna ona działać bez zarzutu, również na tym MCU. Coś jednak jest nie tak, ponieważ ciągle nie udaje mi się wykonać prawidłowej komunikacji. Czy mógłby rzucić ktoś okiem na mój kod, kto ma jakieś doświadczenie w tej sprawie? W linkach załączam kod, który jest tylko odrobinę przerobionym kodem ze zwykłego example. Chciałem ponownie zacząć od podstaw i wykonać najprostszą komunikację właśnie z wykorzystaniem tych mikroprocesorów.

https://pastebin.com/g7LE5D0a - nadajnik
https://pastebin.com/Y7hGvwm4 - odbiornik
https://ibb.co/XjCXk3s - wynik z komendy:
Transceiver.PrintParameters();
 
Odpowiedź
  


Skocz do:


Przeglądający: 2 gości