admin管理员组

文章数量:1627945

ESP8266模组SDK开发之Station和AP连接

WiFi是由无线接入点AP(Access Point) 、站点(Station)等组成的无线网络。

  • STA:Station(站点),每个连接到无线网络中的终端
  • AP:Access Point(接入点),无线网络的创建者,是网络的中心节点


下面将介绍如何使用ESP8266 SDK开发WiFi的Station和AP连接

1. Station连接

WiFi Station入网流程如下示:

配置WiFi为Station 动态内存分配配置参数结构体 赋值SSID和PSD 设置参数到寄存器 释放内存 开启WiFi连接

实验步骤如下:

–> 在ESP8266_RTOS_SDK目录下新建station文件夹,把LED灯实验中的led目录下所有文件拷贝到该文件夹中

–> 使用Source Insight编辑器,编辑和浏览代码;新建工程,并将station和include文件夹下的文件添加到工程中;在led灯程序基础上,在user_main.c文件中的user_init()函数下添加如下代码

user_init(void)
{
    printf("SDK version:%s\n", system_get_sdk_version());
	Led_init();
	wifi_set_opmode(STATION_MODE);	//配置WiFi为Station模式    
	struct station_config *config = (struct station_config *)zalloc(sizeof(struct station_config));	//动态的分配内存空间    
	sprintf(config->ssid,SSID);    
	sprintf(config->password,PASSWORD);     	
	wifi_station_set_config(config);	//配置设置到寄存器里面    
	free(config);	//释放动态分配的内存     
	wifi_station_set_auto_connect(TRUE);	//启动wifi的一键连接 
    xTaskCreate(ATaskLed, "LED", 256, NULL, 2, NULL);
}

–> 回到ESP8266编译器中,在station文件夹下,运行gen_misc.sh文件,依次确认配置(Y/1/2/3/4),编译完成

–> 烧写bin文件到ESP8266后,打开串口助手,模组复位后,串口输出相关信息后,模块显示连接到无线网络中,并获取到路由分配的IP

2. AP连接

WiFi AP入网流程如下示:

配置WiFi为AP 动态内存分配配置参数结构体 获取当前参数到内存 赋值SSID和PSD 配置加密模式 配置SSID长度为0 配置最大站点连接数为5 设置参数到寄存器

实验步骤如下:

–> 在ESP8266_RTOS_SDK目录下新建ap文件夹,把LED灯实验中的led目录下所有文件拷贝到该文件夹中

–> 使用Source Insight编辑器,编辑和浏览代码;新建工程,并将ap和include文件夹下的文件添加到工程中;在led灯程序基础上,在user_main.c文件中的user_init()函数下添加如下代码

user_init(void)
{
    printf("SDK version:%s\n", system_get_sdk_version());    
	Led_init();    
	wifi_set_opmode(SOFTAP_MODE);	//设置为AP模式    
	struct softap_config *config = (struct softap_config *)zalloc(sizeof(struct softap_config));    
	wifi_softap_get_config(config);		//获取当前参数    
	sprintf(config->ssid,SSID);			//传入自己定义的网络名称    
	sprintf(config->password,PASSWORD);	//传入自己定义的网络密码    
	config->authmode = AUTH_WPA_WPA2_PSK;//授权加密方式    
	config->ssid_len = 0;				//设置网络名称长度为0,表示网络名称字符串中遇到'\0'时结shu   
	config->max_connection = 4;			//设置最大连接数     
	wifi_softap_set_config(config);		//设置到寄存器    
	free(config);					//释放动态存储      
	xTaskCreate(ATaskLed, "LED", 256, NULL, 2, NULL);
}

–> 回到ESP8266编译器中,在ap文件夹下,运行gen_misc.sh文件,依次确认配置(Y/1/2/3/4),编译完成

–> 烧写bin文件到ESP8266后,打开串口助手,模组复位后,串口输出相关信息,用手机连接AP,获取到AP分配的地址

本文标签: 模组wifiapStationSDK