Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of ESP8266 by
ESP8266.h@2:77388e8f0697, 2014-12-28 (annotated)
- Committer:
- quevedo
- Date:
- Sun Dec 28 21:58:49 2014 +0000
- Revision:
- 2:77388e8f0697
- Parent:
- 1:399414d48048
Added functions: Get connection status, Start server mode, Close server mode; now the ESP serial baudrate is passed as a parameter in the constructor
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| quevedo | 0:e58f27687450 | 1 | #ifndef ESP8266_H |
| quevedo | 0:e58f27687450 | 2 | #define ESP8266_H |
| quevedo | 0:e58f27687450 | 3 | |
| quevedo | 0:e58f27687450 | 4 | #include <string> |
| quevedo | 0:e58f27687450 | 5 | #include "mbed.h" |
| quevedo | 0:e58f27687450 | 6 | |
| quevedo | 0:e58f27687450 | 7 | class ESP8266 |
| quevedo | 0:e58f27687450 | 8 | { |
| quevedo | 0:e58f27687450 | 9 | public: |
| quevedo | 0:e58f27687450 | 10 | /** |
| quevedo | 0:e58f27687450 | 11 | * ESP8266 constructor |
| quevedo | 0:e58f27687450 | 12 | * |
| quevedo | 0:e58f27687450 | 13 | * @param tx TX pin |
| quevedo | 0:e58f27687450 | 14 | * @param rx RX pin |
| quevedo | 2:77388e8f0697 | 15 | * @param br Baud Rate |
| quevedo | 0:e58f27687450 | 16 | */ |
| quevedo | 2:77388e8f0697 | 17 | ESP8266(PinName tx, PinName rx, int br); |
| quevedo | 0:e58f27687450 | 18 | |
| quevedo | 0:e58f27687450 | 19 | /** |
| quevedo | 0:e58f27687450 | 20 | * ESP8266 destructor |
| quevedo | 0:e58f27687450 | 21 | */ |
| quevedo | 0:e58f27687450 | 22 | ~ESP8266(); |
| quevedo | 0:e58f27687450 | 23 | |
| quevedo | 0:e58f27687450 | 24 | void SendCMD(char * s); |
| quevedo | 0:e58f27687450 | 25 | void Reset(void); |
| quevedo | 0:e58f27687450 | 26 | void RcvReply(char * r, int to); |
| quevedo | 0:e58f27687450 | 27 | void GetList(char * l); |
| quevedo | 0:e58f27687450 | 28 | void Join(char * id, char * pwd); |
| quevedo | 0:e58f27687450 | 29 | void GetIP(char * ip); |
| quevedo | 1:399414d48048 | 30 | void SetMode(char mode); |
| quevedo | 1:399414d48048 | 31 | void Quit(void); |
| quevedo | 1:399414d48048 | 32 | void SetSingle(void); |
| quevedo | 1:399414d48048 | 33 | void SetMultiple(void); |
| quevedo | 2:77388e8f0697 | 34 | void GetConnStatus(char * st); |
| quevedo | 2:77388e8f0697 | 35 | void StartServerMode(int port); |
| quevedo | 2:77388e8f0697 | 36 | void CloseServerMode(void); |
| quevedo | 0:e58f27687450 | 37 | |
| quevedo | 0:e58f27687450 | 38 | private: |
| quevedo | 0:e58f27687450 | 39 | Serial comm; |
| quevedo | 0:e58f27687450 | 40 | void AddEOL(char * s); |
| quevedo | 0:e58f27687450 | 41 | void AddChar(char * s, char c); |
| quevedo | 2:77388e8f0697 | 42 | void itoa(int c, char s[]); |
| quevedo | 0:e58f27687450 | 43 | |
| quevedo | 0:e58f27687450 | 44 | }; |
| quevedo | 0:e58f27687450 | 45 | |
| quevedo | 0:e58f27687450 | 46 | #endif |
| quevedo | 0:e58f27687450 | 47 | /* |
| quevedo | 0:e58f27687450 | 48 | COMMAND TABLE |
| quevedo | 0:e58f27687450 | 49 | Basic: |
| quevedo | 0:e58f27687450 | 50 | AT: Just to generate "OK" reply |
| quevedo | 0:e58f27687450 | 51 | Wifi: |
| quevedo | 0:e58f27687450 | 52 | AT+RST: restart the module |
| quevedo | 0:e58f27687450 | 53 | AT+CWMODE: define wifi mode; AT+CWMODE=<mode> 1= Sta, 2= AP, 3=both; Inquiry: AT+CWMODE? or AT+CWMODE=? |
| quevedo | 0:e58f27687450 | 54 | AT+CWJAP: join the AP wifi; AT+ CWJAP =<ssid>,< pwd > - ssid = ssid, pwd = wifi password, both between quotes; Inquiry: AT+ CWJAP? |
| quevedo | 0:e58f27687450 | 55 | AT+CWLAP: list the AP wifi |
| quevedo | 0:e58f27687450 | 56 | AT+CWQAP: quit the AP wifi; Inquiry: AT+CWQAP=? |
| quevedo | 1:399414d48048 | 57 | * AT+CWSAP: set the parameters of AP; AT+CWSAP= <ssid>,<pwd>,<chl>,<ecn> - ssid, pwd, chl = channel, ecn = encryption; Inquiry: AT+CWJAP? |
| quevedo | 0:e58f27687450 | 58 | TCP/IP: |
| quevedo | 2:77388e8f0697 | 59 | AT+CIPSTATUS: get the connection status |
| quevedo | 1:399414d48048 | 60 | * AT+CIPSTART: set up TCP or UDP connection 1)single connection (+CIPMUX=0) AT+CIPSTART= <type>,<addr>,<port>; 2) multiple connection (+CIPMUX=1) AT+CIPSTART= <id><type>,<addr>, <port> - id = 0-4, type = TCP/UDP, addr = IP address, port= port; Inquiry: AT+CIPSTART=? |
| quevedo | 1:399414d48048 | 61 | * AT+CIPSEND: send data; 1)single connection(+CIPMUX=0) AT+CIPSEND=<length>; 2) multiple connection (+CIPMUX=1) AT+CIPSEND= <id>,<length>; Inquiry: AT+CIPSEND=? |
| quevedo | 1:399414d48048 | 62 | * AT+CIPCLOSE: close TCP or UDP connection; AT+CIPCLOSE=<id> or AT+CIPCLOSE; Inquiry: AT+CIPCLOSE=? |
| quevedo | 0:e58f27687450 | 63 | AT+CIFSR: Get IP address; Inquiry: AT+ CIFSR=? |
| quevedo | 0:e58f27687450 | 64 | AT+CIPMUX: set mutiple connection; AT+ CIPMUX=<mode> - 0 for single connection 1 for mutiple connection; Inquiry: AT+CIPMUX? |
| quevedo | 2:77388e8f0697 | 65 | AT+CIPSERVER: set as server; AT+ CIPSERVER= <mode>[,<port> ] - mode 0 to close server mode, mode 1 to open; port = port; Inquiry: AT+CIFSR=? |
| quevedo | 1:399414d48048 | 66 | * +IPD: received data |
| quevedo | 0:e58f27687450 | 67 | */ |
