Day6-WIFI编程——百问网7天物联网智能家居
1 UDP连接
使用AT指令进行UDP连接(ESP8266<<—>>物联网小程序)工具:串口调试助手
1.复位
AT+RST AT+RST
2.模式设置
AT+CWMODE_ DEF=1
3.WIFI连接
AT+CWJAP_ DEF=“ssid”,“password”
4.查看IP
AT+CIFSR AT+CIFSR
5.创建UDP连接
AT+CIPSTART=“UDP”,"ip"999,9999,2
6.发送数据
AT+CIPSEND=32 At+CIPSEND=32
{“data"doobell”,“tatus”:“1”}
7.接收数据
IPD,26:({“ev’”:“led”,“status”:“0”}
重要代码
static uint8_t rx_data = 0; //接收的字符static uint8_t rx_len = 0; //接收的长度static uint8_t usart_rx_buf[200] = {0};//保存接收的数据
//调用HAL库接收函数,等待接收数据
void USART_StartRx(void)
{
HAL_UART_Receive_IT(&huart2, (uint8_t*)&rx_data, 1);}
//USART中断回调函数,保存接收的数据并启动下一次接收
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
usart_rx_buf[rx_len%200]= rx_data;
rx_len++;
HAL_UART_Receive_IT(&huart2, (uint8_t*)&rx_data, 1);
}
//获取接收的数据
uint8_t USART2_Receive(uint8_t *rx_data)
{
memcpy(rx_data, (uint8_t*)usart_rx_buf, rx_len)