void user_init(void)
{
uart_init(115200, 115200);
wifi_set_opmode(3);
//===================================================
syp_user_init();
//====================================================
system_init_done_cb(to_scan);//扫描WiFi需要系统初始化完成之后
}
开启服务IP地址
void ICACHE_FLASH_ATTR dhcps_lease_test(void) {
struct dhcps_lease dhcp_lease;
const char* start_ip = "192.168.5.100";
const char* end_ip = "192.168.5.105";
dhcp_lease.start_ip = ipaddr_addr(start_ip);
dhcp_lease.end_ip = ipaddr_addr(end_ip);
wifi_softap_set_dhcps_lease(&dhcp_lease);
}
初始化AP的IP地址和子网掩码
void ICACHE_FLASH_ATTR syp_user_init(void) {
struct ip_info info;
wifi_set_opmode(STATIONAP_MODE); //Set softAP + station mode
wifi_softap_dhcps_stop();设置前要关闭服务
IP4_ADDR(&info.ip, 192, 168, 5, 1);
IP4_ADDR(&info.gw, 192, 168, 5, 1);
IP4_ADDR(&info.netmask, 255, 255, 255, 0);
wifi_set_ip_info(SOFTAP_IF, &info);
dhcps_lease_test();
wifi_softap_dhcps_start();
}
设置ESP8266 AP的路由名字和密码
wifi_softap_get_config(&config);//这个函数的参数是soft_config的结构体,记得取地址
os_memcpy(config.ssid,"ESP8266",strlen("ESP8266"));//往结构体里面初始化配置,调用os_memcpy函数
os_memcpy(config.password,"123456789",strlen("123456789"));
config.ssid_len= strlen("ESP8266");??????????
如果softap_config.ssid_len==0,读取SSID直至结束符
否则,根据softap_config.ssid_len设置SSID的长度
wifi_softap_set_config(&config);//完成AP模式的参数配置,记得取地址