ESP8266模组SDK开发之智能配网
1. SmartConfig智能配网
SmartConfig是一种让你可以在没有和其他设备(支持SmartConfig技术)建立任何性质的通讯链路的情况下, 配置该设备接入wifi网络
具体过程是:手机APP端发送包含WIFI用户名和WIFI密码的UDP广播包或者组播包,智能终端的WIFI芯片可以接收到该UDP包,只要知道UDP的组织形式,就可以通过接收到的UDP包解密出WIFI用户名和密码,然后智能硬件配置收到的WIFI 用户名和密码并连接到指定的WIFI AP上
2. SmartConfig编程
WiFi智能配网流程:
Airkiss是微信专门为物联网配网开发的,是对SmartConfig的进一步封装,使用方法如下图示:
实验步骤如下:
–> 在ESP8266_RTOS_SDK目录下新建smartconfig文件夹,把station实验中的station目录下所有文件拷贝到该文件夹中
–> 在user_main.c文件中的user_init()函数中将配置网络的代码替换成添加smart_config任务即可
user_init(void)
{
printf("SDK version:%s\n", system_get_sdk_version());
Led_init();
wifi_set_opmode(STATION_MODE); //配置WiFi为Station模式
/* 以下部分代码替换成添加smart_config任务即可
struct station_config *config = (struct station_config *)zalloc(sizeof(struct station_config)); //动态的分配内存空间
sprintf(config->ssid,SSID); //传入SSID
sprintf(config->password,PASSWORD); //传入PASSWORD
wifi_station_set_config(config); //配置设置到寄存器里面
free(config); //释放动态分配的内存
wifi_station_set_auto_connect(TRUE); //启动wifi的一键连接
*/
xTaskCreate(smartconfig_task, "smartconfig", 256, NULL, 5, NULL);
xTaskCreate(ATaskLed, "LED", 256, NULL, 2, NULL);
}
–> 在ESP8266编译器中编译完成,烧写bin文件到ESP8266,按照上面介绍的方法使用Airkiss配网即可