Files
QDAC-firmware/libraries/zf_device/zf_device_wifi_uart.h

148 lines
9.0 KiB
C
Raw Permalink Normal View History

2023-12-11 21:45:06 +08:00
/*********************************************************************************************************************
* CH32V307VCT6 Opensourec Library <EFBFBD><EFBFBD><EFBFBD><EFBFBD>CH32V307VCT6 <EFBFBD><EFBFBD>Դ<EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڹٷ<EFBFBD> SDK <EFBFBD>ӿڵĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><EFBFBD>
* Copyright (c) 2022 SEEKFREE <EFBFBD><EFBFBD><EFBFBD>ɿƼ<EFBFBD>
*
* <EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>CH32V307VCT6 <EFBFBD><EFBFBD>Դ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*
* CH32V307VCT6 <EFBFBD><EFBFBD>Դ<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ը<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> GPL<EFBFBD><EFBFBD>GNU General Public License<EFBFBD><EFBFBD><EFBFBD><EFBFBD> GNUͨ<EFBFBD>ù<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD> GPL <EFBFBD>ĵ<EFBFBD>3<EFBFBD><EFBFBD><EFBFBD> GPL3.0<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EFBFBD>ģ<EFBFBD><EFBFBD>κκ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>İ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>·<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<EFBFBD><EFBFBD><EFBFBD>޸<EFBFBD><EFBFBD><EFBFBD>
*
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><EFBFBD><EFBFBD>ķ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>δ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>κεı<EFBFBD>֤
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ի<EFBFBD><EFBFBD>ʺ<EFBFBD><EFBFBD>ض<EFBFBD><EFBFBD><EFBFBD>;<EFBFBD>ı<EFBFBD>֤
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>μ<EFBFBD> GPL
*
* <EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>յ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬʱ<EFBFBD>յ<EFBFBD>һ<EFBFBD><EFBFBD> GPL <EFBFBD>ĸ<EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>У<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><https://www.gnu.org/licenses/>
*
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD> GPL3.0 <EFBFBD><EFBFBD>Դ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤Э<EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD>İ
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӣ<EFBFBD>İ<EFBFBD><EFBFBD><EFBFBD> libraries/doc <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD> GPL3_permission_statement.txt <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>֤<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> libraries <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD> LICENSE <EFBFBD>ļ<EFBFBD>
* <EFBFBD><EFBFBD>ӭ<EFBFBD><EFBFBD>λʹ<EFBFBD>ò<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD>޸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɿƼ<EFBFBD><EFBFBD>İ<EFBFBD>Ȩ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
*
* <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> zf_device_wifi_uart
* <EFBFBD><EFBFBD>˾<EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ɶ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɿƼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>޹<EFBFBD>˾
* <EFBFBD><EFBFBD><EFBFBD>Ϣ <EFBFBD> libraries/doc <EFBFBD>ļ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> version <EFBFBD>ļ<EFBFBD> <EFBFBD>˵<EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> MounRiver Studio V1.8.1
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ̨ CH32V307VCT6
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> https://seekfree.taobao.com/
*
* <EFBFBD>޸ļ<EFBFBD>¼
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD>ע
* 2022-09-15 <EFBFBD><EFBFBD>W first version
********************************************************************************************************************/
/*********************************************************************************************************************
* <EFBFBD><EFBFBD><EFBFBD>߶<EFBFBD><EFBFBD>
* ------------------------------------
* ģ<EFBFBD><EFBFBD><EFBFBD>ܽ<EFBFBD> <EFBFBD><EFBFBD>Ƭ<EFBFBD><EFBFBD><EFBFBD>ܽ<EFBFBD>
* RX <EFBFBD> zf_device_wifi_uart.h <EFBFBD><EFBFBD> WIFI_UART_RX_PIN <EFBFBD><EFBFBD><EFBFBD>
* TX <EFBFBD> zf_device_wifi_uart.h <EFBFBD><EFBFBD> WIFI_UART_TX_PIN <EFBFBD><EFBFBD><EFBFBD>
* RTS <EFBFBD> zf_device_wifi_uart.h <EFBFBD><EFBFBD> WIFI_UART_RTS_PIN <EFBFBD><EFBFBD><EFBFBD>
* RST <EFBFBD> zf_device_wifi_uart.h <EFBFBD><EFBFBD> WIFI_UART_RST_PIN <EFBFBD><EFBFBD><EFBFBD>
* VCC 5V <EFBFBD><EFBFBD>Դ
* GND <EFBFBD><EFBFBD>Դ<EFBFBD><EFBFBD>
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
* ------------------------------------
*********************************************************************************************************************/
#ifndef _zf_device_wifi_uart_h_
#define _zf_device_wifi_uart_h_
#include "zf_common_typedef.h"
#define WIFI_UART_INDEX (UART_7) // WIFI ģ<><C4A3> <20><>ʹ<EFBFBD>õ<EFBFBD><C3B5>Ĵ<EFBFBD><C4B4><EFBFBD>
#define WIFI_UART_RX_PIN (UART7_MAP3_TX_E12) // <20><><EFBFBD><EFBFBD> WIFI ģ<><C4A3> RX
#define WIFI_UART_TX_PIN (UART7_MAP3_RX_E13) // <20><><EFBFBD><EFBFBD> WIFI ģ<><C4A3> TX
#define WIFI_UART_BAUD (115200) // ģ<><EFBFBD><E9B9A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define WIFI_UART_RTS_PIN (E8) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD> ָʾ<D6B8><CABE>ǰģ<C7B0><C4A3><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD>Խ<EFBFBD><D4BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0-<2D><><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<2D><><EFBFBD><EFBFBD><EFBFBD>Լ<EFBFBD><D4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#define WIFI_UART_HARDWARE_RST (0) // <20><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD>ʹ<EFBFBD><CAB9>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD> 0-ʹ<><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ 1-ʹ<><CAB9>Ӳ<EFBFBD><D3B2> RST
#if WIFI_UART_HARDWARE_RST // <20><><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>׳<EFBFBD><D7B3>ֵ<EFBFBD>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD>޷<EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC>ģ<EFBFBD><C4A3>
#define WIFI_UART_RST_PIN (D10) // <20><><EFBFBD><EFBFBD>Ӳ<EFBFBD><D3B2><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>
#endif
#define WIFI_UART_BUFFER_SIZE (256) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С
#define WIFI_UART_AUTO_CONNECT (0) // <20><><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD>ʼ<EFBFBD><CABC>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>TCP<43><50><EFBFBD><EFBFBD>UDP<44><50><EFBFBD><EFBFBD> 0-<2D><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1-<2D>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>TCP<43><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 2-<2D>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>UDP<44><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 3<><33><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>TCP<43><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#if (WIFI_UART_AUTO_CONNECT > 3)
#error "WIFI_UART_AUTO_CONNECT <20><>ֵֻ<D6B5><D6BB>Ϊ [0,1,2,3]"
#else
#define WIFI_UART_TARGET_IP "192.168.2.32" // <20><><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD> IP
#define WIFI_UART_TARGET_PORT "8080" // <20><><EFBFBD><EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD>Ķ˿<C4B6>
#define WIFI_UART_LOCAL_PORT "8080" // <20><><EFBFBD><EFBFBD><EFBFBD>˿<EFBFBD>
#endif
typedef enum
{
WIFI_UART_STATION, // <20>豸ģʽ
WIFI_UART_SOFTAP, // APģʽ
}wifi_uart_mode_enum;
typedef enum
{
WIFI_UART_COMMAND, // ʹ<><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ķ<EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
WIFI_UART_SERIANET, // ʹ<><CAB9>͸<EFBFBD><CDB8><EFBFBD>ķ<EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}wifi_uart_transfer_mode_enum;
typedef enum
{
WIFI_UART_TCP_CLIENT, // ģ<><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>TCP<43><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
WIFI_UART_TCP_SERVER, // ģ<><C4A3><EFBFBD><EFBFBD>ΪTCP<43><50><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
WIFI_UART_UDP_CLIENT, // ģ<><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>UDP<44><50><EFBFBD><EFBFBD>
}wifi_uart_connect_mode_enum;
typedef enum
{
WIFI_UART_SERVER_OFF, // ģ<><C4A3>δ<EFBFBD><CEB4><EFBFBD>ӷ<EFBFBD><D3B7><EFBFBD><EFBFBD><EFBFBD>
WIFI_UART_SERVER_ON, // ģ<><C4A3><EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD>ӷ<EFBFBD><D3B7><EFBFBD><EFBFBD><EFBFBD>
}wifi_uart_connect_state_enum;
typedef enum
{
WIFI_UART_LINK_0, // ģ<>鵱ǰ<E9B5B1><C7B0><EFBFBD><EFBFBD> 0
WIFI_UART_LINK_1, // ģ<>鵱ǰ<E9B5B1><C7B0><EFBFBD><EFBFBD> 1
WIFI_UART_LINK_2, // ģ<>鵱ǰ<E9B5B1><C7B0><EFBFBD><EFBFBD> 2
WIFI_UART_LINK_3, // ģ<>鵱ǰ<E9B5B1><C7B0><EFBFBD><EFBFBD> 3
WIFI_UART_LINK_4, // ģ<>鵱ǰ<E9B5B1><C7B0><EFBFBD><EFBFBD> 4
}wifi_uart_link_id_enum;
typedef struct
{
uint8 wifi_uart_version[12]; // <20>̼<EFBFBD><CCBC><20>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>ʽ
uint8 wifi_uart_mac[20]; // <20><><EFBFBD><EFBFBD> MAC <20><>ַ <20>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>ʽ
uint8 wifi_uart_local_ip[17]; // <20><><EFBFBD><EFBFBD> IP <20><>ַ <20>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>ʽ
uint8 wifi_uart_local_port[10]; // <20><><EFBFBD><EFBFBD><EFBFBD>˿ں<CBBF> <20>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>ʽ
uint8 wifi_uart_remote_ip[5][15]; // Զ<><D4B6> IP <20><>ַ <20>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>ʽ
wifi_uart_mode_enum wifi_uart_mode; // WIFI ģʽ
wifi_uart_transfer_mode_enum wifi_uart_transfer_mode; // <20><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD>ģʽ
wifi_uart_connect_mode_enum wifi_uart_connect_mode; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ
wifi_uart_connect_state_enum wifi_uart_connect_state; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
}wifi_uart_information_struct;
extern wifi_uart_information_struct wifi_uart_information;
uint8 wifi_uart_disconnected_wifi (void); // <20>Ͽ<EFBFBD> WIFI <20><><EFBFBD><EFBFBD>
uint8 wifi_uart_entry_serianet (void); // <20><><EFBFBD><EFBFBD>͸<EFBFBD><CDB8>ģʽ
uint8 wifi_uart_exit_serianet (void); // <20>ر<EFBFBD>͸<EFBFBD><CDB8>ģʽ
uint8 wifi_uart_connect_tcp_servers (char *ip, char *port, wifi_uart_transfer_mode_enum mode); // <20><><EFBFBD><EFBFBD> TCP <20><><EFBFBD><EFBFBD>
uint8 wifi_uart_connect_udp_client (char *ip, char *port, char *local_port, wifi_uart_transfer_mode_enum mode); // <20><><EFBFBD><EFBFBD> UDP <20><><EFBFBD><EFBFBD>
uint8 wifi_uart_disconnect_link (void); // <20>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD> TCP Server ʹ<>ñ<EFBFBD><C3B1>ӿڽ<D3BF><DABD><EFBFBD><EFBFBD>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint8 wifi_uart_disconnect_link_with_id (wifi_uart_link_id_enum link_id); // TCP Server <20>Ͽ<EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD> TCP/UDP Client <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>з<EFBFBD>Ӧ
uint8 wifi_uart_entry_tcp_servers (char *port); // <20><><EFBFBD><EFBFBD> TCP <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint8 wifi_uart_exit_tcp_servers (void); // <20>ر<EFBFBD> TCP <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
uint8 wifi_uart_tcp_servers_check_link (void); // TCP Server ģʽ<C4A3>¼<EFBFBD><C2BC>鵱ǰ<E9B5B1><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>ȡ IP
uint32 wifi_uart_send_buffer (const uint8 *buffer, uint32 len); // WIFI ģ<><C4A3><EFBFBD><EFBFBD><EFBFBD>ݷ<EFBFBD><DDB7>ͺ<EFBFBD><CDBA><EFBFBD>
uint32 wifi_uart_tcp_servers_send_buffer (uint8 *buff, uint32 len, wifi_uart_link_id_enum id); // WIFI ģ<><C4A3><EFBFBD><EFBFBD>Ϊ TCP Server ָ<><D6B8>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><E8B1B8><EFBFBD>ͺ<EFBFBD><CDBA><EFBFBD>
uint32 wifi_uart_read_buffer (uint8 *buffer, uint32 len); // WIFI ģ<><C4A3><EFBFBD><EFBFBD><EFBFBD>ݽ<EFBFBD><DDBD>պ<EFBFBD><D5BA><EFBFBD>
void wifi_uart_callback (void); // WIFI ģ<><EFBFBD>ڻص<DABB><D8B5><EFBFBD><EFBFBD><EFBFBD>
uint8 wifi_uart_init (char *wifi_ssid, char *pass_word, wifi_uart_mode_enum wifi_mode); // WIFI ģ<><C4A3><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
#endif