w mx
/
finalcar
小车 走
esp8266.h@1:d89a943c462e, 2018-07-20 (annotated)
- Committer:
- xmwmx
- Date:
- Fri Jul 20 07:08:51 2018 +0000
- Revision:
- 1:d89a943c462e
- Parent:
- 0:5d8b03e224fd
1.0
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
xmwmx | 1:d89a943c462e | 1 | #ifndef ESP8266_H |
xmwmx | 1:d89a943c462e | 2 | #define ESP8266_H |
xmwmx | 0:5d8b03e224fd | 3 | #include "mbed.h" |
xmwmx | 0:5d8b03e224fd | 4 | |
xmwmx | 0:5d8b03e224fd | 5 | class Esp8266 { //声明一个类 |
xmwmx | 0:5d8b03e224fd | 6 | volatile bool network_start; |
xmwmx | 0:5d8b03e224fd | 7 | volatile bool mqtt_start; |
xmwmx | 0:5d8b03e224fd | 8 | volatile bool control_cmd; |
xmwmx | 0:5d8b03e224fd | 9 | char esp_tokenBuf[32], esp_paramBuf[32]; // recv from esp8266 |
xmwmx | 0:5d8b03e224fd | 10 | char control_buf[32]; |
xmwmx | 0:5d8b03e224fd | 11 | bool esp_buf_ready; |
xmwmx | 0:5d8b03e224fd | 12 | Serial ser2esp8266; |
xmwmx | 0:5d8b03e224fd | 13 | |
xmwmx | 0:5d8b03e224fd | 14 | protected: |
xmwmx | 0:5d8b03e224fd | 15 | void esp8266_rxCallback(); |
xmwmx | 0:5d8b03e224fd | 16 | void gotResponse(char *token, char *param); |
xmwmx | 0:5d8b03e224fd | 17 | void buildCapability(char *out, const char* infoList[][2]); |
xmwmx | 0:5d8b03e224fd | 18 | public: |
xmwmx | 0:5d8b03e224fd | 19 | Esp8266(PinName TX, PinName RX, const char *wifi_ssid, const char *wifi_passwd); |
xmwmx | 0:5d8b03e224fd | 20 | |
xmwmx | 0:5d8b03e224fd | 21 | // 通用 |
xmwmx | 0:5d8b03e224fd | 22 | bool reset(); |
xmwmx | 0:5d8b03e224fd | 23 | |
xmwmx | 0:5d8b03e224fd | 24 | // 连接模式 |
xmwmx | 0:5d8b03e224fd | 25 | bool connect_wifi(const char *wifi_ssid, const char *wifi_passwd); |
xmwmx | 0:5d8b03e224fd | 26 | bool weblogin(); |
xmwmx | 0:5d8b03e224fd | 27 | bool connect_mqtt_broker(char *ip, const char *node_name, const char* sensors[][2], const char* actuator[][2]); |
xmwmx | 0:5d8b03e224fd | 28 | bool is_connected(); |
xmwmx | 0:5d8b03e224fd | 29 | |
xmwmx | 0:5d8b03e224fd | 30 | bool publish_value(const char *topic, const char *data); |
xmwmx | 0:5d8b03e224fd | 31 | bool subscribe_control(const char *topic, const char *data = NULL); |
xmwmx | 0:5d8b03e224fd | 32 | bool is_control_available(void) { return control_cmd; } |
xmwmx | 0:5d8b03e224fd | 33 | bool get_control_cmd(char* actuator, char* value); |
xmwmx | 0:5d8b03e224fd | 34 | // 热点模式 |
xmwmx | 0:5d8b03e224fd | 35 | }; |
xmwmx | 1:d89a943c462e | 36 | #endif |