| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- #include "CONFIG.h"
- #if ESP32
- #ifndef __ESP32_H
- #define __ESP32_H
- #include <stdint.h>
- #include "Timer_Module.h"
- //系统初始的WiFi连接参数
- extern char WIFI_ID[50];
- extern char WIFI_PASSWORD[30];
- enum Result
- {
- Result_None, // 未知
- Result_Success, // 成功
- Result_Failed, // 失败
- };
- enum STATUS
- {
- Status_None, // 空闲
- Status_Sending, // 正在发送
- Status_Success, // 成功
- Status_Failed, // 失败
- Status_Overtime, // 超时
- };
- extern struct ESP32_Struct esp32;
- // ESP32的AT发送状态机
- struct ESP32_Struct
- {
- enum STATUS status; // 状态
- uint16_t activeID; // 活动的编号。下面的每个活动都有一个唯一的编号
- struct TIMER_Struct timer; // 计时器
-
- void (* reset)(void); //1.重置状态
- void (* exit_deepsleep)(void); //2.退出深休眠
- void (* enter_deepsleep)(void); //3.进入深休眠
- void (* exit_lightsleep)(void); //4.退出浅休眠
- void (* enter_lightsleep)(void); //5.进入浅休眠
- enum Result (* set_lightsleep_wakeup)(uint8_t source, uint8_t gpio, uint8_t mode); //6.设置浅睡眠唤醒源
- enum Result (* set_lightsleep_wakeup_sync)(uint8_t source, uint8_t gpio, uint8_t mode); //7.设置浅睡眠唤醒源-同步
- enum Result (* set_sleep)(uint8_t mode); //8.设置睡眠模式
- enum Result (* set_sleep_sync)(uint8_t mode); //9.设置睡眠模式-同步
-
- enum Result (* connect_ap)(char* id, char* password); //10.连接AP
- enum Result (* connect_ap_sync)(char* id, char* password); //11.连接AP-同步
-
- enum Result (* set_cipmode)(uint8_t mode); //12.设置传输模式
- enum Result (* set_cipmode_sync)(uint8_t mode); //13.设置传输模式-同步
- enum Result (* connect_network)(char * service_type, char * IP_address, uint16_t remote_port); //14.连接TCP/UDP服务器
- enum Result (* connect_network_sync)(char * service_type, char * IP_address, uint16_t remote_port); //15.连接TCP/UDP服务器-同步
- enum Result (* query_id_signal)(char * ID, int * RSSI); //16.查询指定ID的WiFi信号强度
- enum Result (* query_id_signal_sync)(char * ID, int * RSSI); //17.查询指定ID的WiFi信号强度-同步
-
- enum Result (* close_network)(void); //18.关闭TCP/UDP连接
- enum Result (* close_network_sync)(void); //19.关闭TCP/UDP连接-同步
- enum Result (* autoconnect_ap)(uint8_t mode); //20.是否自动连接AP
- enum Result (* autoconnect_ap_sync)(uint8_t mode); //21.是否自动连接AP-同步
- enum Result (* close_ap)(void); //22.关闭AP连接
- enum Result (* close_ap_sync)(void); //23.关闭AP连接-同步
- enum Result (* query_signal)(int * RSSI); //24.查询已连接WiFi的信号强度
- enum Result (* query_signal_sync)(int * RSSI); //25.查询已连接WiFi的信号强度-同步
- enum Result (* ready)(void); //26.模块是否异常启动
- enum Result (* ready_sync)(void); //27.模块是否启动-同步
-
- enum Result (* handle_data)(uint8_t * data, uint16_t send_data_length, uint16_t *recv_data_length); //28.处理数据(数据发送+等待发送结果)
- enum Result (* handle_data_sync)(uint8_t * data, uint16_t send_data_length, uint16_t *recv_data_length); //29.处理数据(数据发送+等待发送结果)-同步
-
- enum Result (* recv_ready)(void); //30.判断模块是否正常启动
- enum Result (* recv_ready_with_time)(uint32_t time_out); //31.判断模块是否正常启动+等待时间
- enum Result (* set_mode)(uint8_t mode); //32.设置WiFi模式
- enum Result (* set_mode_sync)(uint8_t mode); //33.设置WiFi模式-同步
- };
- #endif
- #endif
|