ESP-IDF 例程——MQTT、http、sockets、modbus

16. protocols 目录

16.1 mqtt/tcp 例程

字段 描述
例程名称 mqtt/tcp
所在文件夹路径 examples\protocols\mqtt\tcp
核心功能说明 演示如何使用ESP-MQTT库实现MQTT客户端,通过TCP传输连接到MQTT broker。实现了连接到broker、订阅/取消订阅主题、发布消息等功能。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- mqtt_event_handler():处理MQTT事件
- esp_mqtt_client_init():初始化MQTT客户端
- esp_mqtt_client_start():启动MQTT客户端
- esp_mqtt_client_publish():发布MQTT消息
- esp_mqtt_client_subscribe():订阅MQTT主题
- esp_mqtt_client_unsubscribe():取消订阅MQTT主题
输入输出参数说明 输入:
- 配置的MQTT broker URI(通过menuconfig设置)
- Wi-Fi SSID和密码

输出:
- MQTT连接状态
- 消息发布结果
- 订阅/取消订阅结果
- 接收到的MQTT消息
适用场景及典型应用案例 适用于:
- 学习MQTT协议的实现和使用
- 开发物联网设备与云平台的通信
- 构建基于MQTT的传感器网络
- 智能家居设备的远程控制
- 作为MQTT客户端应用的参考模板

16.2 http_request 例程

字段 描述
例程名称 http_request
所在文件夹路径 examples\protocols\http_request
核心功能说明 演示如何使用POSIX socket API实现简单的HTTP请求。通过创建TCP连接、发送HTTP请求和接收HTTP响应,展示了HTTP客户端的基本实现。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- http_request_task():执行HTTP请求的任务
- socket():创建socket
- getaddrinfo():解析域名
- connect():建立TCP连接
- send():发送HTTP请求
- recv():接收HTTP响应
输入输出参数说明 输入:
- 目标URL(硬编码在程序中)
- Wi-Fi SSID和密码

输出:
- HTTP请求结果
- 服务器返回的HTTP响应
- 连接状态信息
适用场景及典型应用案例 适用于:
- 学习HTTP协议的基本实现
- 了解POSIX socket API的使用
- 开发简单的HTTP客户端应用
- 测试网络连接
- 作为HTTP客户端应用的参考模板

16.3 sockets/tcp_client 例程

字段 描述
例程名称 sockets/tcp_client
所在文件夹路径 examples\protocols\sockets\tcp_client
核心功能说明 演示如何使用POSIX socket API实现TCP客户端。实现了TCP连接的建立、数据发送和接收,支持IPv4和IPv6两种协议。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- tcp_client_task():TCP客户端任务
- socket():创建socket
- getaddrinfo():解析域名或IP地址
- connect():建立TCP连接
- send():发送数据
- recv():接收数据
输入输出参数说明 输入:
- 目标服务器IP地址或域名
- 目标端口号
- Wi-Fi SSID和密码

输出:
- TCP连接状态
- 发送的数据
- 接收的数据
适用场景及典型应用案例 适用于:
- 学习TCP客户端的基本实现
- 了解POSIX socket API的使用
- 开发基于TCP的客户端应用
- 测试TCP服务器
- 作为TCP客户端应用的参考模板

16.4 https_request 例程

字段 描述
例程名称 https_request
所在文件夹路径 examples\protocols\https_request
核心功能说明 演示如何使用ESP-IDF的HTTPS客户端API实现安全的HTTP请求。支持TLS加密、服务器证书验证,并展示了如何获取服务器时间。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- https_request_task():执行HTTPS请求的任务
- esp_https_client_init():初始化HTTPS客户端
- esp_https_client_open():打开HTTPS连接
- esp_https_client_read():读取HTTPS响应
- esp_https_client_close():关闭HTTPS连接
- esp_https_client_cleanup():清理HTTPS客户端资源
输入输出参数说明 输入:
- 目标HTTPS URL(硬编码在程序中)
- 服务器根证书(硬编码在程序中)
- Wi-Fi SSID和密码

输出:
- HTTPS请求结果
- 服务器返回的HTTPS响应
- 服务器时间信息
适用场景及典型应用案例 适用于:
- 学习HTTPS客户端的基本实现
- 了解TLS加密和证书验证
- 开发安全的HTTP客户端应用
- 连接需要身份验证的云服务
- 作为HTTPS客户端应用的参考模板

16.5 modbus/serial/mb_slave 例程

字段 描述
例程名称 modbus/serial/mb_slave
所在文件夹路径 examples\protocols\modbus\serial\mb_slave
核心功能说明 演示如何使用ESP-IDF的Modbus组件实现Modbus RTU从机。支持线圈、离散输入、保持寄存器和输入寄存器四种数据类型,通过串行接口与Modbus主机通信。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- mb_slave_init():初始化Modbus从机
- mb_slave_start():启动Modbus从机
- mb_example_init_gpio():初始化GPIO
- mb_register_callbacks():注册回调函数
- 各种Modbus数据处理函数
输入输出参数说明 输入:
- Modbus主机发送的命令

输出:
- Modbus从机的响应
- 寄存器数据
- 线圈状态
适用场景及典型应用案例 适用于:
- 学习Modbus协议的基本实现
- 了解Modbus从机的工作原理
- 开发基于Modbus的工业设备
- 构建工业自动化系统
- 作为Modbus从机应用的参考模板

16.6 dns_over_https 例程

字段 描述
例程名称 dns_over_https
所在文件夹路径 examples\protocols\dns_over_https
核心功能说明 演示如何使用DNS over HTTPS (DoH) 协议进行域名解析,通过HTTPS加密通道发送DNS查询,提高域名解析的安全性和隐私性。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- dns_over_https_init():初始化DoH客户端
- dns_over_https_query():执行DoH查询
- 时间同步功能
- HTTPS客户端API
输入输出参数说明 输入:
- 要解析的域名
- DoH服务器URL

输出:
- 解析结果(IP地址)
- 查询状态信息
适用场景及典型应用案例 适用于:
- 学习DoH协议的实现和使用
- 开发需要安全域名解析的应用
- 保护用户隐私的网络应用
- 作为DoH客户端应用的参考模板

16.7 esp_http_client 例程

字段 描述
例程名称 esp_http_client
所在文件夹路径 examples\protocols\esp_http_client
核心功能说明 演示如何使用ESP-IDF的HTTP客户端库进行HTTP请求,支持HTTP/HTTPS、GET/POST方法、重定向、认证等功能。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- esp_http_client_init():初始化HTTP客户端
- esp_http_client_open():打开HTTP连接
- esp_http_client_write():写入HTTP请求数据
- esp_http_client_read():读取HTTP响应
- esp_http_client_close():关闭HTTP连接
输入输出参数说明 输入:
- HTTP请求URL
- 请求方法(GET/POST等)
- 请求数据

输出:
- HTTP响应状态码
- 响应头
- 响应体
适用场景及典型应用案例 适用于:
- 学习ESP-IDF HTTP客户端库的使用
- 开发需要HTTP通信的应用
- 连接Web API和云服务
- 作为HTTP客户端应用的参考模板

16.8 esp_local_ctrl 例程

字段 描述
例程名称 esp_local_ctrl
所在文件夹路径 examples\protocols\esp_local_ctrl
核心功能说明 演示如何使用ESP Local Control组件实现设备的本地控制,支持通过HTTP或HTTPS进行设备配置和管理。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- esp_local_ctrl_init():初始化本地控制服务
- esp_local_ctrl_register_service():注册服务
- esp_local_ctrl_start():启动本地控制服务
输入输出参数说明 输入:
- 设备配置参数

输出:
- 设备状态信息
- 配置结果
适用场景及典型应用案例 适用于:
- 学习本地设备控制的实现
- 开发需要本地配置的设备
- 智能家居设备的本地管理
- 作为本地控制服务的参考模板

16.9 http_server 例程

16.9.1 http_server/simple 例程

字段 描述
例程名称 http_server/simple
所在文件夹路径 examples\protocols\http_server\simple
核心功能说明 演示如何使用ESP-IDF的HTTP服务器库创建简单的HTTP服务器,支持基本的HTTP请求处理和响应。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- httpd_start():启动HTTP服务器
- httpd_register_uri_handler():注册URI处理程序
- 各种HTTP请求处理函数
输入输出参数说明 输入:
- HTTP客户端请求

输出:
- HTTP服务器响应
适用场景及典型应用案例 适用于:
- 学习HTTP服务器的基本实现
- 开发需要本地Web界面的设备
- 物联网设备的配置界面
- 作为HTTP服务器应用的参考模板

16.9.2 http_server/file_serving 例程

字段 描述
例程名称 http_server/file_serving
所在文件夹路径 examples\protocols\http_server\file_serving
核心功能说明 演示如何使用HTTP服务器提供文件服务,支持从SPIFFS或SD卡读取文件并通过HTTP提供给客户端。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- httpd_start():启动HTTP服务器
- httpd_register_uri_handler():注册URI处理程序
- 文件系统操作函数
输入输出参数说明 输入:
- HTTP客户端请求的文件路径

输出:
- 请求的文件内容
- 文件不存在时的错误响应
适用场景及典型应用案例 适用于:
- 学习HTTP文件服务的实现
- 开发需要提供静态文件的Web应用
- 物联网设备的Web界面
- 作为文件服务器应用的参考模板

16.10 https_mbedtls 例程

字段 描述
例程名称 https_mbedtls
所在文件夹路径 examples\protocols\https_mbedtls
核心功能说明 演示如何使用mbedTLS库实现HTTPS客户端,支持TLS加密和服务器证书验证。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- mbedTLS初始化和配置函数
- SSL/TLS连接函数
- 网络套接字操作函数
输入输出参数说明 输入:
- HTTPS服务器URL
- 服务器根证书

输出:
- HTTPS连接状态
- 服务器响应
适用场景及典型应用案例 适用于:
- 学习mbedTLS库的使用
- 开发安全的HTTPS客户端应用
- 连接需要TLS加密的服务
- 作为HTTPS客户端应用的参考模板

16.11 https_server 例程

16.11.1 https_server/simple 例程

字段 描述
例程名称 https_server/simple
所在文件夹路径 examples\protocols\https_server\simple
核心功能说明 演示如何使用ESP-IDF的HTTPS服务器库创建安全的HTTPS服务器,支持TLS加密和客户端连接。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- httpd_ssl_start():启动HTTPS服务器
- httpd_register_uri_handler():注册URI处理程序
- SSL/TLS配置函数
输入输出参数说明 输入:
- HTTPS客户端请求

输出:
- HTTPS服务器响应
适用场景及典型应用案例 适用于:
- 学习HTTPS服务器的基本实现
- 开发需要安全Web界面的设备
- 物联网设备的安全配置界面
- 作为HTTPS服务器应用的参考模板

16.12 https_x509_bundle 例程

字段 描述
例程名称 https_x509_bundle
所在文件夹路径 examples\protocols\https_x509_bundle
核心功能说明 演示如何使用X.509证书 bundle 验证HTTPS服务器证书,提高HTTPS连接的安全性和可靠性。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- esp_https_client_init():初始化HTTPS客户端
- 证书验证函数
- HTTPS客户端API
输入输出参数说明 输入:
- HTTPS服务器URL
- X.509证书 bundle

输出:
- HTTPS连接状态
- 服务器响应
适用场景及典型应用案例 适用于:
- 学习X.509证书验证
- 开发需要安全HTTPS连接的应用
- 提高HTTPS客户端的安全性
- 作为证书验证的参考模板

16.13 icmp_echo 例程

字段 描述
例程名称 icmp_echo
所在文件夹路径 examples\protocols\icmp_echo
核心功能说明 演示如何使用ICMP协议实现Ping功能,用于测试网络连接和测量网络延迟。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- icmp_echo_task():执行ICMP echo请求的任务
- 套接字操作函数
- ICMP包构建和解析函数
输入输出参数说明 输入:
- 目标IP地址
- Ping次数和间隔

输出:
- Ping结果(成功/失败)
- 往返时间
- 网络延迟统计
适用场景及典型应用案例 适用于:
- 学习ICMP协议的实现
- 开发网络诊断工具
- 测试网络连接状态
- 作为Ping工具的参考模板

16.14 l2tap 例程

字段 描述
例程名称 l2tap
所在文件夹路径 examples\protocols\l2tap
核心功能说明 演示如何使用L2TAP(Layer 2 Tunneling Access Protocol)在网络层和数据链路层之间建立隧道,实现网络数据的转发。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- l2tap_init():初始化L2TAP
- l2tap_send():发送L2TAP数据
- l2tap_recv():接收L2TAP数据
输入输出参数说明 输入:
- 要发送的数据

输出:
- 接收到的数据
- 隧道状态信息
适用场景及典型应用案例 适用于:
- 学习L2TAP协议的实现
- 开发网络隧道应用
- 实现网络数据转发
- 作为L2TAP应用的参考模板

16.15 modbus/serial/mb_master 例程

字段 描述
例程名称 modbus/serial/mb_master
所在文件夹路径 examples\protocols\modbus\serial\mb_master
核心功能说明 演示如何使用ESP-IDF的Modbus组件实现Modbus RTU主机。支持线圈、离散输入、保持寄存器和输入寄存器四种数据类型的读写操作,通过串行接口与Modbus从机通信。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- mb_master_init():初始化Modbus主机
- mb_master_start():启动Modbus主机
- mb_master_send_request():发送Modbus请求
- 各种Modbus数据处理函数
输入输出参数说明 输入:
- 从机地址
- 寄存器地址和数量

输出:
- 从机响应数据
- 操作结果状态
适用场景及典型应用案例 适用于:
- 学习Modbus主机的实现
- 开发工业控制系统
- 构建Modbus网络的主站
- 作为Modbus主机应用的参考模板

16.16 modbus/tcp 例程

16.16.1 modbus/tcp/mb_tcp_master 例程

字段 描述
例程名称 modbus/tcp/mb_tcp_master
所在文件夹路径 examples\protocols\modbus\tcp\mb_tcp_master
核心功能说明 演示如何使用ESP-IDF的Modbus组件实现Modbus TCP主机。通过TCP/IP网络与Modbus TCP从机通信,支持四种数据类型的读写操作。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- mb_tcp_master_init():初始化Modbus TCP主机
- mb_tcp_master_start():启动Modbus TCP主机
- mb_tcp_master_send_request():发送Modbus TCP请求
输入输出参数说明 输入:
- 从机IP地址和端口
- 寄存器地址和数量

输出:
- 从机响应数据
- 操作结果状态
适用场景及典型应用案例 适用于:
- 学习Modbus TCP协议的实现
- 开发基于网络的工业控制系统
- 构建Modbus TCP网络的主站
- 作为Modbus TCP主机应用的参考模板

16.16.2 modbus/tcp/mb_tcp_slave 例程

字段 描述
例程名称 modbus/tcp/mb_tcp_slave
所在文件夹路径 examples\protocols\modbus\tcp\mb_tcp_slave
核心功能说明 演示如何使用ESP-IDF的Modbus组件实现Modbus TCP从机。通过TCP/IP网络与Modbus TCP主机通信,支持四种数据类型的读写操作。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- mb_tcp_slave_init():初始化Modbus TCP从机
- mb_tcp_slave_start():启动Modbus TCP从机
- 各种Modbus数据处理函数
输入输出参数说明 输入:
- Modbus TCP主机发送的命令

输出:
- Modbus TCP从机的响应
- 寄存器数据
- 线圈状态
适用场景及典型应用案例 适用于:
- 学习Modbus TCP从机的实现
- 开发基于网络的工业设备
- 构建Modbus TCP网络的从站
- 作为Modbus TCP从机应用的参考模板

16.17 mqtt/ssl 例程

字段 描述
例程名称 mqtt/ssl
所在文件夹路径 examples\protocols\mqtt\ssl
核心功能说明 演示如何使用ESP-MQTT库实现MQTT客户端,通过SSL/TLS加密连接到MQTT broker,提高通信安全性。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- mqtt_event_handler():处理MQTT事件
- esp_mqtt_client_init():初始化MQTT客户端
- esp_mqtt_client_start():启动MQTT客户端
- 证书验证相关函数
输入输出参数说明 输入:
- 配置的MQTT broker URI(通过menuconfig设置)
- 服务器根证书
- Wi-Fi SSID和密码

输出:
- MQTT连接状态
- 消息发布结果
- 订阅/取消订阅结果
- 接收到的MQTT消息
适用场景及典型应用案例 适用于:
- 学习MQTT over SSL/TLS的实现
- 开发需要安全通信的物联网设备
- 连接需要加密的MQTT broker
- 作为安全MQTT客户端应用的参考模板

16.18 mqtt/ws 例程

字段 描述
例程名称 mqtt/ws
所在文件夹路径 examples\protocols\mqtt\ws
核心功能说明 演示如何使用ESP-MQTT库实现MQTT客户端,通过WebSocket连接到MQTT broker,适用于需要通过Web端口进行MQTT通信的场景。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- mqtt_event_handler():处理MQTT事件
- esp_mqtt_client_init():初始化MQTT客户端
- esp_mqtt_client_start():启动MQTT客户端
输入输出参数说明 输入:
- 配置的MQTT broker WebSocket URI(通过menuconfig设置)
- Wi-Fi SSID和密码

输出:
- MQTT连接状态
- 消息发布结果
- 订阅/取消订阅结果
- 接收到的MQTT消息
适用场景及典型应用案例 适用于:
- 学习MQTT over WebSocket的实现
- 开发需要通过Web端口通信的物联网设备
- 绕过防火墙限制的MQTT通信
- 作为WebSocket MQTT客户端应用的参考模板

16.19 mqtt/wss 例程

字段 描述
例程名称 mqtt/wss
所在文件夹路径 examples\protocols\mqtt\wss
核心功能说明 演示如何使用ESP-MQTT库实现MQTT客户端,通过WebSocket over SSL/TLS加密连接到MQTT broker,提高通信安全性。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- mqtt_event_handler():处理MQTT事件
- esp_mqtt_client_init():初始化MQTT客户端
- esp_mqtt_client_start():启动MQTT客户端
- 证书验证相关函数
输入输出参数说明 输入:
- 配置的MQTT broker WSS URI(通过menuconfig设置)
- 服务器根证书
- Wi-Fi SSID和密码

输出:
- MQTT连接状态
- 消息发布结果
- 订阅/取消订阅结果
- 接收到的MQTT消息
适用场景及典型应用案例 适用于:
- 学习安全的MQTT over WebSocket实现
- 开发需要安全WebSocket通信的物联网设备
- 连接需要加密的WebSocket MQTT broker
- 作为安全WebSocket MQTT客户端应用的参考模板

16.20 mqtt5 例程

字段 描述
例程名称 mqtt5
所在文件夹路径 examples\protocols\mqtt5
核心功能说明 演示如何使用ESP-MQTT库实现MQTT 5.0客户端,支持MQTT 5.0的新特性,如用户属性、消息过期时间、共享订阅等。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- mqtt_event_handler():处理MQTT事件
- esp_mqtt_client_init():初始化MQTT客户端
- esp_mqtt_client_start():启动MQTT客户端
- MQTT 5.0特性相关函数
输入输出参数说明 输入:
- 配置的MQTT broker URI(通过menuconfig设置)
- Wi-Fi SSID和密码

输出:
- MQTT连接状态
- 消息发布结果
- 订阅/取消订阅结果
- 接收到的MQTT消息
适用场景及典型应用案例 适用于:
- 学习MQTT 5.0协议的新特性
- 开发需要MQTT 5.0功能的物联网设备
- 利用MQTT 5.0特性优化通信
- 作为MQTT 5.0客户端应用的参考模板

16.21 smtp_client 例程

字段 描述
例程名称 smtp_client
所在文件夹路径 examples\protocols\smtp_client
核心功能说明 演示如何使用ESP-IDF的SMTP客户端发送电子邮件,支持TLS加密和附件发送。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- smtp_client_init():初始化SMTP客户端
- smtp_client_send_mail():发送邮件
- TLS加密相关函数
输入输出参数说明 输入:
- SMTP服务器配置
- 发件人、收件人、主题、内容
- 附件(可选)

输出:
- 邮件发送结果
- 服务器响应
适用场景及典型应用案例 适用于:
- 学习SMTP客户端的实现
- 开发需要发送邮件的应用
- 设备状态通知
- 报警和事件通知
- 作为SMTP客户端应用的参考模板

16.22 sntp 例程

字段 描述
例程名称 sntp
所在文件夹路径 examples\protocols\sntp
核心功能说明 演示如何使用SNTP(Simple Network Time Protocol)同步设备时间,从网络时间服务器获取准确的当前时间。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- sntp_init():初始化SNTP
- sntp_setoperatingmode():设置SNTP操作模式
- sntp_setservername():设置NTP服务器
- sntp_get_time():获取当前时间
输入输出参数说明 输入:
- NTP服务器地址

输出:
- 同步后的系统时间
- 同步状态信息
适用场景及典型应用案例 适用于:
- 学习SNTP协议的实现
- 开发需要准确时间的应用
- 日志记录和时间戳
- 证书验证和安全通信
- 作为时间同步应用的参考模板

16.23 sockets/tcp_server 例程

字段 描述
例程名称 sockets/tcp_server
所在文件夹路径 examples\protocols\sockets\tcp_server
核心功能说明 演示如何使用POSIX socket API实现TCP服务器。实现了TCP连接的监听、接受、数据发送和接收,支持IPv4和IPv6两种协议。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- tcp_server_task():TCP服务器任务
- socket():创建socket
- bind():绑定端口
- listen():监听连接
- accept():接受连接
- send():发送数据
- recv():接收数据
输入输出参数说明 输入:
- 服务器端口号

输出:
- 客户端连接状态
- 接收到的数据
- 发送的数据
适用场景及典型应用案例 适用于:
- 学习TCP服务器的基本实现
- 了解POSIX socket API的使用
- 开发基于TCP的服务器应用
- 构建网络服务
- 作为TCP服务器应用的参考模板

16.24 sockets/udp_client 例程

字段 描述
例程名称 sockets/udp_client
所在文件夹路径 examples\protocols\sockets\udp_client
核心功能说明 演示如何使用POSIX socket API实现UDP客户端。实现了UDP数据包的发送和接收,支持IPv4和IPv6两种协议。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- udp_client_task():UDP客户端任务
- socket():创建socket
- getaddrinfo():解析域名或IP地址
- sendto():发送UDP数据包
- recvfrom():接收UDP数据包
输入输出参数说明 输入:
- 目标服务器IP地址或域名
- 目标端口号
- 要发送的数据

输出:
- 发送状态
- 接收到的UDP数据包
适用场景及典型应用案例 适用于:
- 学习UDP客户端的基本实现
- 了解POSIX socket API的使用
- 开发基于UDP的客户端应用
- 构建低延迟通信应用
- 作为UDP客户端应用的参考模板

16.25 sockets/udp_server 例程

字段 描述
例程名称 sockets/udp_server
所在文件夹路径 examples\protocols\sockets\udp_server
核心功能说明 演示如何使用POSIX socket API实现UDP服务器。实现了UDP数据包的接收和发送,支持IPv4和IPv6两种协议。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- udp_server_task():UDP服务器任务
- socket():创建socket
- bind():绑定端口
- recvfrom():接收UDP数据包
- sendto():发送UDP数据包
输入输出参数说明 输入:
- 服务器端口号

输出:
- 接收到的UDP数据包
- 发送状态
适用场景及典型应用案例 适用于:
- 学习UDP服务器的基本实现
- 了解POSIX socket API的使用
- 开发基于UDP的服务器应用
- 构建低延迟通信服务
- 作为UDP服务器应用的参考模板

16.26 static_ip 例程

字段 描述
例程名称 static_ip
所在文件夹路径 examples\protocols\static_ip
核心功能说明 演示如何为ESP32设备配置静态IP地址,而不是使用DHCP自动获取IP地址。
主要调用的内部/外部函数或模块 - app_main():程序入口函数
- esp_netif_init():初始化网络接口
- esp_netif_create_default_wifi_sta():创建默认Wi-Fi STA接口
- esp_netif_dhcpc_stop():停止DHCP客户端
- esp_netif_set_ip_info():设置静态IP信息
输入输出参数说明 输入:
- 静态IP地址
- 子网掩码
- 网关地址
- DNS服务器地址

输出:
- 网络接口状态
- IP配置结果
适用场景及典型应用案例 适用于:
- 学习静态IP配置的实现
- 开发需要固定IP地址的应用
- 构建需要稳定网络地址的设备
- 企业网络中的设备配置
- 作为静态IP配置的参考模板

ESP-IDF 例程——MQTT、http、sockets、modbus
https://blog.zhaosn.top/ESP32-examples/16.protocols/
作者
Zhao SN
发布于
2026年1月21日
更新于
2026年2月28日
许可协议