前言:
https://www.cnblogs.com/yangfengwu/p/11796072.html
上一节是使用的单片机AT指令控制ESP8266,
然后实现的微信小程序配网绑定8266,最后通过MQTT通信控制
这节是用SDK直接开发的ESP8266
然后实现微信小程序配网绑定8266,最后通过MQTT通信控制
提醒:
本教程SDK开发的源码,全部按照针对于开发人员讲解!
本教程SDK开发的源码只说明怎么用和代码处理思路!
如果没有基础,请先学习SDK开发的基础教程!
说明
为了能让用户轻松的移植使用,我封装成了以下文件
教程最后会说明如何移植到自己的项目!
下载程序
1.调整拨动开关让WIFI和电脑串口通信
2.按下固件(WIFI)按钮 (IO0引脚)
3.按下复位按钮
4.松开复位按钮
5.松开固件按钮
此时,模块进入等待刷固件状态
小程序配网绑定控制
一,点击小程序下方的添加设备按钮
二,选择添加Wi-Fi设备
三,输入路由器密码(注:Wi-Fi名称自动获取,也可自己填写)
四:长按 固件按钮(GPIO0)大约3S,直至指示灯快闪,
内部默认用GPIO0检测按键输入
五.点击小程序上的 "绑定设备"按钮,开始搜索设备,绑定成功,将自动跳转到主页面,显示绑定的Wi-Fi设备
5.1 正在尝试连接Wi-Fi模块的热点
5.2 连接上热点,正在和模块通信
5.3 成功绑定设备
六.点击设备,进入控制页面,控制设备
七, 控制LED
注意:SDK程序是控制的其 GPIO5引脚
移植使用
1.用户把以下两个文件拷贝到自己的工程
2.包含头文件(具体路径依据自己的自行修改)
3.启动APUConfig配网
apuconfig_start(apuconfig_callback,60);//启动apuconfig配网
/*** *apuconfig 配网回调函数 */ void apuconfig_callback(apuconfig_status status, void *pdata){ switch(status) { case APU_STATUS_GETING_DATA://获取了APP发送的数据 os_printf("\nAPU_STATUS_GETING_DATA:%s\n",pdata); break; case APU_STATUS_LINK_SSID_PSWD://开始连接路由器 { struct station_config *sta_conf = pdata; os_printf("\nAPU_STATUS_LINK_SSID_PSWD: %s %s",sta_conf->ssid,sta_conf->password);//打印连接的路由器信息 break; } case APU_STATUS_LINKED://连接上路由器 { os_printf("\nAPU_STATUS_LINKED: %s\n",pdata);//打印分配的IP地址 break; } case APU_STATUS_UDPSEND://模块返回给APP数据 os_printf("\nAPU_STATUS_UDPSEND:%s\n",pdata); break; case APU_STATUS_LINK_OVER://配网结束 apuconfig_stop();//结束apuconfig SmartConfigFlag=0; break; } }
这样就可以了
提示:
一般咱用一个按钮长按一段时间后启动配网!
注意:
配网结束以后,为了让手机能够断开和模块的无线连接,
让手机可以连接到原先上网的路由器
我设置了更换到Station模式
当然也可以在下面位置设置重新启动
ESA2GJK1DH1K微信小程序篇: 微信小程序APUConfig给WI-Fi模块配网并绑定设备,并通过MQTT控制设备(ESP8266_SDK开发版)