Skocz do zawartości

MrShadow

Użytkownicy
  • Zawartość

    21
  • Rejestracja

  • Ostatnio

Reputacja

0 Neutralna

O MrShadow

  • Ranga
    2/10

Informacje

  • Płeć
    Mężczyzna
  • Zainteresowania
    Muzyka,fotografia,gry
  1. Ogromne dzięki za odpowiedź. Jak najbardziej zgadzam się z takim podejściem do rozwiązania tego problemu. Oczywiście, ten przykład już przeanalizowałem - wykorzystuje on jednak bibliotekę, której raczej na Androidzie nie zaimplementuję. ( nie mam pojęcia w jaki sposób ). Tak, strona dostępna jest pod adresem http://adres.html. Udało mi się umieścić przycisk wykorzystujący metodę GET, o której napisałeś powyżej. Problemem nadal pozostaje jednak sposób przesłania odpowiednich danych do Arduino poprzez port szeregowy.
  2. Oczywiście już wszystko precyzuję. Moduł mam następujący : Moduł ESP8266. Podłączam go do Arduino tworząc Software Serial. Arduino będzie głównym sterownikiem. Komunikacja z modułem odbywa się przez port szeregowy przy wykorzystaniu komend AT. Strona internetowa (bardzo prosta) zapisana jest w zmiennej typu String i jest ona wysyłana do esp korzystając z komendy : AT+CIPSEND, czekając na znak > i następnie odbywa się wysłanie strony. W głównej pętli programu odbywa się obsługa dla kolejnych połączeń z serwerem. Do tej pory udało mi się umieścić na stronie wskazania termometru, przy odświeżaniu działa bez zarzutów, lecz moim celem głównym jest sterowanie wyjściami Arduino np. po kliknięciu buttona umieszczonego na stronie. Zastanawiam się, w jaki sposób mogę przesłać dane ze strony do Arduino - po rozwiązaniu tego, teoretycznie problem będzie z głowy. Wystarczyłoby nawet przesłanie adresu strony, na przykład, gdyby przycisk powodował jego zmianę, chociaż nie wiem, czy ten sposób jest właściwy. W linku który podesłałem wyżej pokazana jest przykładowa strona.
  3. Ok, czyli coś typu nie pozwoli mi na wyświetlenie przesyłanych przez formularz danych na ekranie monitora portu szeregowego, ani na jakiekolwiek ich przechwycenie do zmiennej tekstowej? Zasugerowałem się przykładem z poniższego linku i dlatego zrodziły się moje wątpliwości, co myślę jest uzasadnione :Link Zastanawia mnie jednak, w jaki sposób tam to działa? Oraz o jakim istniejącym sposobie napisałeś w poście wyżej?
  4. Dlaczego biblioteki są dla cieniasów? Nigdzie nic takiego nie napisałem. Nie napisałem również, że doskonale znam http, a wręcz przeciwnie. Zadałem pytanie, czy istnieje sposób na wyświetlenie w Serial monitorze danych ze strony.
  5. Oczywiście, przepraszam za nieścisłości. Ten wysłany kod absolutnie nie ma na calu wysłania jakiejkolwiek informacji o stanie wyjściowym Arduino. Zaprezentowałem tutaj jak wygląda implementowana metoda "get". Moje pytanie natomiast odnosi się do jej poprawności. W jaki sposób mogę bezpośrednio na Serial monitor wysłać jakikolwiek tekst ze strony napisanej w HTML? Z bibliotek oczywiście kiedyś skorzystam, ale teraz staram się wszystko pisać od podstaw - wydaje mi się to nieco trudniejsze i bardziej czasochłonnej, ale jednocześnie ciekawsze i dające więcej satysfakcji po zadziałaniu. Jednym słowem, mam trochę czasu na eksperymenty
  6. Ustaliłem, że wszystko jest w porządku AT+CWMODE działa, bo sprawdziłem. Problemem nadal jest uzyskanie odpowiedzi modułu w postaci tekstu. Niestety po wpisaniu dowolnej komendy monitor portu szeregowego pozostaje nadal "pusty". Próbowałem wypisywania przy pomocy metody println() oraz write(), jednak obie zawiodły i rezultat jest taki jak opisałem - pusty monitor portu szeregowego - brak odpowiedzi. Bardzo proszę o jakieś sugestie, gdyż moduł mogę kontrolować przy pomocy Arduino, lecz chciałbym mieć możliwość podglądu odpowiedzi w czasie rzeczywistym. Dziękuję za poprzednie odpowiedzi deshipu. [ Dodano: 06-02-2018, 16:53 ] Ktoś ma jakiś pomysł? Udało mi się również wgrać nowego firmware.
  7. Tak bym zrobił, jednak nadal nie otrzymałem odpowiedzi po wpisaniu komendy "AT". Może stoi za tym połączenie układu? Może nie podłączam jakiegoś pinu w tym module, chociaż postępuję zgodnie ze schematami dostępnymi w sieci. Czy firmware może mieć na to wpływ?
  8. Ok, utworzyłem software seriala, po włożeniu baterii do koszyka otrzymuję następujący ciąg znaków : "ó#àáP%Ð"°]ãF...". Odłączając piny RX TX i wkładając baterię takie znaki się nie pojawiają, więc oznacza to, że jakaś odpowiedź jest. Niestety nawet przy obu prędkościach ustawionych na 9600 baud otrzymuję takie znaczki. Masz pomysł jak to rozwiązać?
  9. Czyli muszę zmodyfikować kod korzystając z biblioteki Software Serial. Mógłbyś rzucić okiem na ten kod? Dałem zmienną znak, aby wypisać na Serial Monitorze na komputerze chociaż pierwszą literę z danych odbieranych, na 9600 baud zero reakcji, na wyższych wartościach czasem x, czasem jakiś inny znaczek, nie wiem jak poprawnie dobrać te prędkości. I jeszcze jedno pytanie , czy deklaracja SoftwareSerial modul(2,3); jest poprawna? To znaczy, czy nie powinno być 0,1 jeżeli to piny 0 oraz 1? Znalazłem taki schemat pinoutów i tam jest podpisane 2,3 , lecz nie wiem do końca jak to interpretować. Pinout #include <SoftwareSerial.h> SoftwareSerial modul(2,3); void setup() { pinMode(13,OUTPUT); pinMode(8,OUTPUT); Serial.begin(9600); modul.begin(115200); } void loop() { char znak; modul.print("AT"); if(modul.available() > 0) { znak = modul.read(); if(modul.find("OK")) { digitalWrite(13,HIGH); delay(3000); digitalWrite(13,LOW); } } else { digitalWrite(8,HIGH); delay(3000); digitalWrite(8,LOW); } Serial.print(znak); delay(3000); }
  10. Dobrze, ale napisałeś, że moduł można podłączyć odłączając RX i TX od komputera. Jak w takim razie będzie przebiegała komunikacja z komputerem? W powyższym filmie pokazany jest Serial Monitor, więc Arduino połączone jest również z komputerem
  11. Czyli podłączenie tego w taki sposób nie jest możliwe?
  12. Ok, więc w jaki sposób można ten moduł połączyć z Arduino?
  13. Ok, opiszę dokładniej połączenie Laptop - moduł wifi. Konwerter wpięty jest do Laptopa ( USB ), tam w monitorze portu szeregowego w programie Arduino IDE mogę obserwować wysyłane komendy. Druga strona konwertera GND, RX, TX wpięta jest do płytki do odpowiednich pinów ( GND, TX, TX ). Z płytki z pinów (fizycznie inne niż te do których jest podpięty konwerter ) 0 (TX) oraz 1 (RX) - wyprowadzone są kabelki na moduł - RX, TX modułu wifi.
  14. Próbowałem na Pro mini (klon). Płytka zasilana jest z USB za pomocą tego samego konwertera, którego użyłem do podłączania modułu do laptopa (5V) . Podłączałem następująco : TX->RX, RX->TX (na tej płytce to piny 0 - TX, 1-RX), GDN (płytki)-> GND (modułu) , GPIO15 -> GND (modułu). Zastanawiam się, bo możne spróbować zasilić płytkę bezpośrednio z 3.3V napięciem obniżonym przez stabilizator?
×
×
  • Utwórz nowe...