QAQ ==!

Dependencies:   mbed QEI-1 nRF24L01P xiugai

Committer:
AlexQian
Date:
Sat Dec 14 05:45:16 2019 +0000
Revision:
15:934289377f7a
Parent:
11:ddfcd88f3a30
Balance_Car;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
zhangyx 10:cda7ae2fc9de 1 #pragma once
zhangyx 11:ddfcd88f3a30 2 #include "converters.h"
brainliang 7:6f8157c58241 3 #include "mbed.h"
brainliang 7:6f8157c58241 4
brainliang 7:6f8157c58241 5 class Esp8266 { //声明一个类
brainliang 7:6f8157c58241 6 volatile bool network_start;
brainliang 7:6f8157c58241 7 volatile bool mqtt_start;
brainliang 7:6f8157c58241 8 volatile bool control_cmd;
brainliang 7:6f8157c58241 9 char esp_tokenBuf[32], esp_paramBuf[32]; // recv from esp8266
brainliang 7:6f8157c58241 10 char control_buf[32];
brainliang 7:6f8157c58241 11 bool esp_buf_ready;
brainliang 7:6f8157c58241 12 Serial ser2esp8266;
brainliang 7:6f8157c58241 13
brainliang 7:6f8157c58241 14 protected:
brainliang 7:6f8157c58241 15 void esp8266_rxCallback();
brainliang 7:6f8157c58241 16 void gotResponse(char *token, char *param);
brainliang 7:6f8157c58241 17 void buildCapability(char *out, const char* infoList[][2]);
brainliang 7:6f8157c58241 18 public:
brainliang 7:6f8157c58241 19 Esp8266(PinName TX, PinName RX, const char *wifi_ssid, const char *wifi_passwd);
brainliang 7:6f8157c58241 20
brainliang 7:6f8157c58241 21 // 通用
brainliang 7:6f8157c58241 22 bool reset();
brainliang 7:6f8157c58241 23
brainliang 7:6f8157c58241 24 // 连接模式
brainliang 7:6f8157c58241 25 bool connect_wifi(const char *wifi_ssid, const char *wifi_passwd);
brainliang 7:6f8157c58241 26 bool weblogin();
brainliang 7:6f8157c58241 27 bool connect_mqtt_broker(char *ip, const char *node_name, const char* sensors[][2], const char* actuator[][2]);
brainliang 7:6f8157c58241 28 bool is_connected();
brainliang 7:6f8157c58241 29
zhangyx 11:ddfcd88f3a30 30 bool publish_value_s(const char *topic, const char *data);
zhangyx 11:ddfcd88f3a30 31 template<typename T>
zhangyx 11:ddfcd88f3a30 32 bool publish_value(const char *topic, T data) {
zhangyx 11:ddfcd88f3a30 33 return publish_value_s(topic, std::to_string(data).c_str());
zhangyx 11:ddfcd88f3a30 34 }
brainliang 7:6f8157c58241 35 bool subscribe_control(const char *topic, const char *data = NULL);
brainliang 7:6f8157c58241 36 bool is_control_available(void) { return control_cmd; }
brainliang 7:6f8157c58241 37 bool get_control_cmd(char* actuator, char* value);
brainliang 7:6f8157c58241 38 // 热点模式
brainliang 7:6f8157c58241 39 };