• 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
mostek wifi z esp32 zamiast przewodu uart-usb
#11
(17-05-2024, 13:48)medzie napisał(a): Wybacz, jest to płyta główna od maszyny przemysłowej. wychodzą z niej piny(6), do których był podłączony ten przewód (https://www.tme.eu/Document/d35506873b14...CABLES.pdf) - 11 strona. Po zmierzeniu pinów tylko na rx i tx było 3.3v a reszta 0. esp cały czas jest połączone. zrobiłam test - zamiast pinów od esp do płyty dałam z przejsciowką przewód uart-usb i połączenie było:
Kod:
05/17/24 12:58:46 - COM10 (INFO): VSP opened, transport=UDP(TDI), routing=client, remote=192.168.222.62:8888, connect=on data, OTF=disabled
05/17/24 12:59:05 - COM10 (INFO): Established UDP connection with 192.168.222.62:8888
ale nadal nie przesyłało lub nie odpowiada.

Wygląda, że ten kabelek łączy nie tylko TX/RX ale też handshake/flow-control. I dodatkowo po tym serialu puszcza IP (UDP) - slip/ppp?
Te komunikaty to z PC? Czy program na PC ma jakiś plik konfiguracyjny? Może po prostu podłączyć do urządzenia jakiś większy niż arduino komp, np. malinkę, na niej połączyć się siecią i niech robi za router IP. Wtedy cały internet do dyspozycji...
 
Odpowiedź
#12
Znalazłem skąd są te komunikaty o błędzie timed out. One są z monitora Tibbo, ale u mnie też takie są, a mimo to działa.
Jednak mój przykład jest tak napisany, że wyśle linię tekstu dopiero jak zobaczy znak końca linii, może ta płyta tego nie wysyła. Jak podłączę się Putty pod płytkę to nie wysyła komunikatów, Putty u mnie nie wysyła znaku końca linii najwyraźniej, przynajmniej takiego, którego szuka ten program w ESP. 
Możesz to sobie przerobić tak samo jak od strony terminala, jak jest jakiś znak to go wyślij, nie czekaj na całą linię.
Poza tym trzeba wysłać jakiś znak do ESP, by wiedziało gdzie odpisać.
Możesz też wgrać gotowiec do serial portu.
Jeszcze sprawdziłem, że można zamieć nl na cr, putty woli jednak CR (czyli w programie czekasz na znak '\r'). Ale będzie odpowiadał dopiero gdy dostanie jakąś linię tekstu ze strony UDP.
Kod:
void serialEvent() {
  while (Serial.available() > 0) {
    char aChar = Serial.read();
    static byte index = 0;
    if (aChar == '\r') {
      serial_input[index] = 0;
      index = 0;
      stringComplete = true;
    } else {
      serial_input[index] = aChar;
      if (index < (buffsize - 1)) index++;
      serial_input[index] = '\0';
    }
  }
}
Miło być decenianym https://buycoffee.to/kaczakat
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości