Moduł ESP-01

Komunikacja z modułem WiFi opartym o układ ESP8266 odbywa się za pośrednictwem UART.
Układ posiada między innymi zintegrowany stos protokołu TCP/IP, co wraz z możliwością sterowania poprzez komendy AT umożliwia podłączenie do sieci WiFi urządzeń opartych nawet o proste mikrokontrolery.
Moduł jest zgodny ze standardem 802.11 b/g/n i pracuje na częstotliwości 2,4GHz.
Wspiera zabezpieczenia WPA/WPA2.
Układ wymaga zasilania o napięciu 3,3V i wydajności prądowej wynoszącej 400mA.

Wyprowadzenia modułu

ESP8266

Rys. Wyprowadzenia modułu ESP-01 z układem ESP8266.

 

Pin Uwagi
VCC, GND Zasilanie 3.3V
UTXD Interface UART, nadawanie
URXD Interface UART, odbiór
RST Restart po podaniu stanu niskiego
CH_PD Włączenie układu po podaniu stanu wysokiego (stan wysoki przy flashowaniu)
GPIO0 Przełączenie między trybem pracy a flashowania (podanie stanu niskiego)
GPIO2 Wyprowadzenie pinu 2
Czerwony LED Sygnalizuje zasilanie
Niebieski LED Sygnalizuje przesył danych

 

Komendy AT

Uwaga komendy AT muszą być zakończone znakami \r\n.
Ważna jest również wielkość znaków.

Komenda Opis Typ Set/Execute Parametry i przykłady
AT test basic
AT+RST restart modułu basic
AT+GMR sprawdzenie wersji oprogramowania basic
AT+CWMODE tryb wifi wifi AT+CWMODE= 1= Stacja, 2= AccessPoint, 3= softAP + stacja
AT+CWJAP podłączenie do AP wifi AT+ CWJAP =< ssid >,< pwd > ssid = nazwa sieci, pwd = hasło do sieci
AT+CWLAP lista AP wifi AT+CWLAP
AT+CWQAP odłączenie od AP wifi AT+CWQAP
AT+ CWSAP parametry połączenia z AP wifi AT+ CWSAP= ssid, pwd, chl, enc ssid = nazwa sieci, pwd = hasło do sieci, chl = kanał, enc = szyfrowanie;
Przykładowo połączenie z routerem: AT+CWJAP=”mynetwork”,”helloworld”;
Następnie należy sprawdzić czy połączono poleceniem: AT+CWJAP?
AT+CWLIF sprawdzenie IP podłączonych urządzeń wifi AT+CWLIF
AT+ CIPSTATUS sprawdzanie statusu połączenia TCP/IP AT+ CIPSTATUS ,,,,= tryb klienta lub serwera
AT+CIPSTART ustawienie połączenia TCP lub UDP TCP/IP 1)pojedyncze łącze (+CIPMUX=0) AT+CIPSTART= ,,;

2)wielokrotne łącze (+CIPMUX=1) AT+CIPSTART= ,,

id = 0-4, type = TCP/UDP, addr = adres IP, port= port;
Przykładowo połączenie do serwera za pomocą TCP
Ustawienie wielokrotnego połączenia: AT+CIPMUX=1;
Połączenie: AT+CIPSTART=4,”TCP”,”X1.X2.X3.X4″,9999
AT+CIPMODE ustawienie trybu przesyłu danych TCP/IP AT+CIPMODE= 0 tryb bez danych, 1 tryb z danymi; zwraca „Link is builded”
AT+CIPSEND wysłanie danych TCP/IP 1)pojedyncze łącze (+CIPMUX=0) AT+CIPSEND=;

2) wielokrotne łącze (+CIPMUX=1) AT+CIPSEND= ,

Wysłanie danych: AT+CIPSEND=4,15 a następnie dane.
AT+CIPCLOSE zamknięcie połączenia TCP lub UDP TCP/IP AT+CIPCLOSE=
lub
AT+CIPCLOSE
AT+CIFSR Sprawdzenie przydzielonego IP TCP/IP AT+CIFSR
AT+ CIPMUX ustawienie wielokrotnego połączenia TCP/IP AT+ CIPMUX= 0 dla pojedynczego połączenia, 1 dla wielokrotnego połączenia
AT+ CIPSERVER ustawienie serwera TCP/IP AT+ CIPSERVER= [, ] mode 0 to close server mode, mode 1 to open; port = port;
eg. turn on as a TCP server: AT+CIPSERVER=1,8888, check the self server IP address: AT+CIFSR=?
AT+ CIPSTO Set the server timeout AT+CIPSTO=  0~28800 wartość podana w sekundach
+IPD Odebrane dane dla pojedynczego połączenia (CIPMUX=0): + IPD, :
dla trybu wielokrotnego łącza CIPMUX=1): + IPD, , :

 

Przykłady

Podłączenie do sieci

Sprawdzenie dostępnych sieci:

AT+CIPSTART
AT+CWLAP

Podłączenie do sieci o nazwie „testowa” która nie jest zabezpieczona hasłem:

AT+CWMODE=1
AT+CWJAP=”testowa”,””

Sprawdzenie przydzielonego adresu IP:

AT+CIFSR

Uruchomienie serwera

Uruchomienie serwera nasłuchującego na porcie 21:

AT+CIPMUX=1
AT+CIPSERVER=1,21

Wysłanie odpowiedzi „hej” do podłączonego klienta:

AT+CIPSEND=0,5
hej

Pobranie danych z sieci

Podłączenie do serwera:

AT+CIPSTART=1,”TCP”,”test.noweenergie.org”,80

Pobranie danych:

AT+CIPSEND=1,88
GET http://test.noweenergie.org/get.php?a=1&b=2 HTTP/1.0\r\nHost: test.noweenergie.org\r\n

Zamknięcie połączenia:

AT+CIPCLOSE

Odłączenie od sieci

Odłączenie od sieci:

AT+CWQAP

Odnośniki

Pliki:

Odnośniki: