ESP8266 – część 2 (Komendy AT)

ESP8266 – część 2 (Komendy AT)
Razem głosów: 23 co stanowi: 97.39% całości.

ESP8266_Wi-Fi_module_4_1200_tech-blog

 

Ten tani moduł WIFI robi furorę wśród konstruktorów, na jego korzyść przemawia niska cena i  łatwość sterowania za pomocą komend AT to spory plus … cześć ich przedstawiłem w poprzedniej części , ale teraz  znalazłem lepszą dokumentację i czas przedstawić je szerzej …

1. AT Command TABLE:

W tym dokumencie PDF znajdziemy podstawowe komendy AT wraz z drobnym opisem:

Niemniej parę z nich spróbuję jakoś wyjaśnić …

  • AT + GMR   –>  wyświetla wersję oprogramowania modułu. W tej chwili najnowsze to  19.902   czyli  wersja firmware  19  i 902 wersja modułu AT Command:

  • AT + RST –> resetuje układ

 

  • AT + CIPSTO –>  Ustawia limit czasu dla socketu, standardowo jest to 60s   – oczywiście jest możliwość zmiany:
  1. AT+CIPSTO?  –> Wyświetla zawartość aktualnego limitu czasu Socketu
  2. AT+CIPSTO = 100  –> ustawia limit na wartość 100 sek. — zmiana tej wartości jest korzystna jeśli serwer z którym mamy połączenia zamyka gniazdo, a limit czasu mammy zbyt duży klient (oczekuje) i jedyne co można zrobić to zresetować. Zmniejszenie limitu czasu spowoduje, przejście do oczekiwania na komendę gdy serwer nie odpowie w zadanym czasie.
  • AT + CIPMODE –> ustawia tryb odbioru danych
  1. AT+CIPMODE? –> zwraca wartość ustawionego trybu
  2. AT+CIPMODE = 0  –> w tym trybie do danych dodawany jest nagłówek w postaci „+IPD, c , n, ”  gdzie dodajemy dodatkowe informacje  „c”  to numer kanału na jakim odebraliśmy dane, a „n”  to liczba bajtów odebranych danych. Parametr „c” jest pomijany jeśli pracujemy w trybie jednokanałowym.
  3. AT+CIPMODE =1 –> w tym trybie dane odebrane są wysyłane bezpośrednio na port UART jako stream. Wydaje się że używanie tego trybu, który można nazwać „przeźroczystym” będzie dla nas prostsze gdy będziemy korzystać z jednego kanału połączenia. <AT+CIPMUX=0>
  • AT + CIPSEND –> wysyła na wybrany kanał określoną liczbę danych. Układ potrafi potrafi wysłać dane „na raz” do czterech urządzeń IP. Na komendę CIPSEND odpowiada znakiem „>” pobiera „n” bajtów danych i wysyła je przez TCP, gdy zakończy odpowiada „SEND OK” i oczekuje na rozkazy.  CIPSEND  występuje w 3ch wariantach:
  1. AT+CIPSEND= c, n,  –> podajemy kanał i długość danych gdy używamy trybu multi <ustawiony AT+CIPMUX=1>
  2. AT+CIPSEND= n, –> jeśli używamy trybu single  <AT+CIPMUX=0>
  3. AT+CIPSEND –> może być też używane bez parametrów ale tylko w trybie SINGLE i PRZEŹROCZYSTOŚCI <AT+CIPMODE=1> co spowoduje wysłanie danych bezpośrednio. Próba uruchomienia w tym trybie komendy CIPSEND z parametrami zostanie nie tylko zignorowana, ale też zawiesi moduł.

  • AT + CIPMUX –> ta komenda  ustawia nam tryb pracy naszego modułu. przyjmuje wartość 0 lub 1 i jest ważna gdyż określa sposób działania np. AT+CIPSEND…

 

  1. AT+CIPMUX?  –> zwraca wartość ustawionego trybu.
  2. AT+CIPMUX=0 –> ustawia tryb SINGLE
  3. AT+CIPMUX=1 –> ustawia tryb MULTI

To takie tylko w sumie podstawowe komendy, które mogą wprowadzać w błąd niekiedy ale o powyższe wyjaśnienie powinno pomóc ….. podobnie jak powinien być pomocny programik do konfiguracji modułu :

Przechwytywanie

 

Zawiera on szereg przydatnych funkcji zwalniając nas z klepania komend w terminalu :) Po połączeniu z modułem wygląda następująco:

Przechwytywanie

Program posiada też poręczny prosty emulator terminala w którym widać reakcję modułu jak też i można wysyłać komendy z ręki:

Przechwytywanie

Program możecie pobrać stąd:

ESP8266 Config Zip
ESP8266 Config Zip
ESP8266_Config.zip.html
86.1 KiB
2407 Downloads
Szczegóły

Miłego łączenia :)  Więcej w następnej części,  Tym razem Pojawią się już przykłady kodów dla modułów RSHI, ale ….  a sami się dowiecie … :)

 

5 myśli nt. „ESP8266 – część 2 (Komendy AT)

    • Tak tak wszystko jest w poście wyżej … czyli części 3ciej … choć uważam, że electrodragon zrypał v0.925 trochę , i osobiście wolę oficjalny soft z espressif

  1. Wiem, czytałem cz.3 Też w sumie wolę oficjalny, lecz nie wiedziałem skąd znaleźć. Brak mi trochę zmiany prędkości, ale może już niedługo.

  2. Czy tryb transparentny w ESP8266 działa tylko w trybie Klienta ??? a w trybie Serwera nie ?? Bo do takich wniosków doszedłem czytając datasheet z Espressif.
    W szczegółach chodzi o to , że nie ustawimy AT+CIPMODE=1 (tryb transparentny) jak będzie ustanowiony serwer AT+CIPSERVER

Możliwość komentowania jest wyłączona.