ESP32-Station Mode例程解析

本文针对ESP32的Station模式Wi-Fi功能进行解析,通过理解并分析ESP32的Wi-Fi编程模型及配置流程,展示了如何使ESP32连接到WiFi热点,以实现单片机的联网与手机控制功能。
摘要由CSDN通过智能技术生成

由于毕设需要单片机实现联网功能进而实现手机控制,我对ESP32的Wi-Fi的Station的程序进行一番理解和整理。
ESP32例程下载地址

我们先分析每一句代码所蕴含的信息:

/* WiFi station Example
This example code is in the Public Domain (or CC0 licensed, at your option.)
Unless required by applicable law or agreed to in writing, this
software is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
CONDITIONS OF ANY KIND, either express or implied.*/

#include <string.h>//内存和字符串函数的定义
#include "freertos/FreeRTOS.h"//实时操作系统freertos头文件
#include "freertos/task.h"//freertos任务(线程)头文件
#include "freertos/event_groups.h"//freertos事件组
#include "esp_system.h"//ESP32系统头文件(包括系统枚举的定义和函数的声明)
#include "esp_wifi.h"//ESP32Wi-Fi功能头文件
#include "esp_event_loop.h"//ESP32事件轮询头文件
#include "esp_log.h"//ESP32日志信息头文件(打印输出代码信息)
#include "nvs_flash.h"//Non-volatile storage (NVS)非易失性存储库。用于把数据存储到 flash中,掉电或重启后数据仍然存在
#include "lwip/err.h"//轻量级TCP/IP协议栈之错误代码相应的头文件
#include "lwip/sys.h"//轻量级TCP/IP协议栈之系统相应的头文件
/* The examples use WiFi configuration that you can set via 'make menuconfig'.
If you'd rather not, just change the below entries to strings with
the config you want - ie #define EXAMPLE_WIFI_SSID "mywifissid"
*/
//可以通过make menuconfig(Linux下)进行配置Wi-Fi Station要连接的AP的SSID和PSW

#define EXAMPLE_ESP_WIFI_SSID CONFIG_ESP_WIFI_SSID//AP对应的SSID
#define EXAMPLE_ESP_WIFI_PASS CONFIG_ESP_WIFI_PASSWORD//AP对应的连接密钥
#define EXAMPLE_ESP_MAXIMUM_RETRY CONFIG_ESP_MAXIMUM_RETRY//Station连接AP时重试的次数
//上面这三个宏定义可以直接修改(注意SSID和PSW都是字符串形式)或者在Kconfig.projbuild文件中进行修改。

/* FreeRTOS event group to signal when we are connected*/
static EventGroupHandle_t s_wifi_event_group;
/* The event group allows multiple bits for each event, but we only care about one event
* - are we connected to the AP with an IP? */
const int WIFI_CONNECTED_BIT = BIT0;//事件组允许每个事件有多个位,但是我们只关心一个事件,所以只设置一位(可追溯程序找到#define BIT0 0x00000001)
static const char *TAG = "wifi station";//该程序的标签为WiFi基站
static int s_retry_num = 0;//重试次数计数
static esp_err_t event_handler(void *ctx, system_event_t *event<
  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要下载ESP32-C3-LCD-EV板的示例程序,你可以按照以下步骤进行操作: 1. 首先,打开ESP32-C3-LCD-EV板的官方网站,通常可以在开发板的制造商网站或者ESP32的官方网站上找到。 2. 在官方网站上,找到关于ESP32-C3-LCD-EV板的页面或者单独的板支持页面。这个页面通常会提供板的相关信息、规格和下载链接。 3. 查询页面上是否有与板子配套使用的IDE或者开发环境。如果有,下载并安装它们。 4. 在官方网站的页面上查找示例程序的下载链接。它们通常会以压缩文件的形式提供,可以点击链接进行下载。 5. 下载示例程序后,解压缩文件到你选择的位置。确保你已经安装了所需的开发环境,以便能够打开和编辑这些示例程序。 6. 打开解压缩后的示例程序文件夹,并查找一个入口文件(通常命名为main.c或者main.ino)。这是一个示例程序的主文件,你可以在此基础上进行修改和调试。 7. 使用你的IDE或者开发工具打开入口文件,然后将板子连接到电脑上。通常需要使用USB线缆将ESP32-C3-LCD-EV板连至电脑。 8. 在IDE或者开发工具中选择合适的开发设备(通常是ESP32系列)和端口(通常是USB端口),然后编译并烧录示例程序到板子上。 9. 编译和烧写完成后,断开ESP32-C3-LCD-EV板与电脑的连接,然后重新连接板子供电。 10. 示范程序应该会开始在板子上运行,你可以观察板子上的LCD显示屏或者其他指示灯来确认是否成功下载和运行了示例程序。 以上就是下载ESP32-C3-LCD-EV板示例程序的一般步骤。具体步骤可能因为开发环境、操作系统和板子的不同而有所差异。如果在下载或者使用示例程序的过程中遇到问题,建议参考官方文档、开发者社区或者相关论坛寻求帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值