ESP8266链接WiFi
程序员文章站
2024-03-23 09:44:28
...
写了一个非常简单的链接WiFi的例子
uint8 *ssid = "qwerty";//wifi名字
uint8 *passwd = "123456789";//wifi密码
os_timer_t wifi_link_t;
void ICACHE_FLASH_ATTR
wifi_status(void *arg)
{
static count = 0;
os_timer_disarm(&wifi_link_t);
if(wifi_station_get_connect_status() == STATION_GOT_IP)//WiFi链接成功
{//链接成功
count = 0;
os_printf("\n链接成功\n");
return;
}else if(count >= 7)//WiFi链接失败
{//链接失败
wifi_station_disconnect();//关闭连接
count = 0;
os_printf("\n链接失败\n");
return;
}
os_timer_arm(&wifi_link_t,2000,0);
}
void ICACHE_FLASH_ATTR
sys_init_cb(void)
{
struct station_config stationConf;
os_memcpy(&stationConf.ssid, ssid, strlen(ssid));
os_memcpy(&stationConf.password, passwd,strlen(passwd));
wifi_station_disconnect();//断开链接的路由
wifi_station_set_config(&stationConf);//设置参数
wifi_station_connect();//连接ap
//初始化WiFi status定时器
os_timer_disarm(&wifi_link_t);
os_timer_setfn(&wifi_link_t,wifi_status,NULL);
}
void ICACHE_FLASH_ATTR
user_init(void)
{
uart_init(115200,115200);
wifi_set_opmode_current(STATIONAP_MODE);//设置WiFi工作模式
system_init_done_cb(sys_init_cb);//创建初始化完成后回调函数
}
源码下载
下一篇: 动态规划:最大子序和