完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
要在使用ESP-IDF 4.4版本和ESP32-S3芯片的情况下,使WiFi STA模式连接时的IP地址为静态IP,您可以按照以下步骤操作:
1. 首先,确保您已经安装了ESP-IDF开发环境。如果没有,请访问[ESP-IDF GitHub页面](https://github.com/espressif/esp-idf)并按照说明进行安装。 2. 创建一个新的ESP-IDF项目或在现有项目中进行修改。 3. 在项目的`main`文件夹中,找到`app_main.c`文件。如果不存在,请创建一个。 4. 在`app_main.c`文件中,添加以下代码: ```c #include "esp_wifi.h" #include "esp_log.h" #include "esp_netif.h" #define EXAMPLE_WIFI_SSID "your_wifi_ssid" #define EXAMPLE_WIFI_PASS "your_wifi_password" #define EXAMPLE_STATIC_IP "192.168.1.100" #define EXAMPLE_STATIC_GW "192.168.1.1" #define EXAMPLE_STATIC_SM "255.255.255.0" static const char *TAG = "example"; static void wifi_init_sta(void) { esp_err_t ret; esp_netif_init(); esp_event_loop_create_default(); wifi_init_config_t cfg = WIFI_INIT_CONFIG_DEFAULT(); ret = esp_wifi_init(&cfg); if (ret != ESP_OK) { ESP_LOGE(TAG, "wifi_init failed: %d", ret); return; } esp_wifi_set_mode(WIFI_MODE_STA); wifi_config_t sta_config = { .sta = { .ssid = EXAMPLE_WIFI_SSID, .password = EXAMPLE_WIFI_PASS, .bssid_set = 0, .channel = 0, .scan_method = WIFI_ALL_CHANNEL_SCAN, .authmode = WIFI_AUTH_WPA2_PSK, .ssid_len = 0, .pmf_cfg = { .capable = 0, .required = 0 } } }; ret = esp_wifi_set_config(ESP_IF_WIFI_STA, &sta_config); if (ret != ESP_OK) { ESP_LOGE(TAG, "esp_wifi_set_config failed: %d", ret); return; } ret = esp_wifi_connect(); if (ret != ESP_OK) { ESP_LOGE(TAG, "esp_wifi_connect failed: %d", ret); return; } ESP_LOGI(TAG, "Connecting to AP SSID:%s password:%s", sta_config.sta.ssid, sta_config.sta.password); } static void obtain_ip(void) { esp_netif_ip_info_t ip; esp_netif_get_ip_info(esp_netif_get_handle_from_ifkey("WIFI_STA_DEF"), &ip); esp_netif_set_ip_info(esp_netif_get_handle_from_ifkey("WIFI_STA_DEF"), &ip); ESP_LOGI(TAG, "Static IP Address: " IPSTR, IP2STR(&ip.ip)); } void app_main(void) { wifi_init_sta(); obtain_ip(); } ``` 5. 替换`EXAMPLE_WIFI_SSID`和`EXAMPLE_WIFI_PASS`为您的WiFi网络名称和密码。 6. 替换`EXAMPLE_STATIC_IP`、`EXAMPLE_STATIC_GW`和`EXAMPLE_STATIC_SM`为您希望设置的静态IP地址、网关和子网掩码。 7. 保存文件并编译项目。使用以下命令: ```sh idf.py set-target esp32s3 idf.py build idf.py flash ``` 8. 将编译好的固件烧录到ESP32-S3开发板。 9. 重启开发板,它将连接到指定的WiFi网络,并使用您设置的静态IP地址。 通过以上步骤,您可以在使用ESP-IDF 4.4版本和ESP32-S3芯片的情况下,使WiFi STA模式连接时的IP地址为静态IP。 |
|
|
|
|
只有小组成员才能发言,加入小组>>
453 浏览 0 评论
975 浏览 0 评论
1700 浏览 0 评论
请问一下我想用ESP8685直接替换ESP8266而不用写程序,可以让ESP8685直接通过之前ESP8266的外挂的flash运行程序吗
1357 浏览 1 评论
1248 浏览 1 评论
为blufi_device设置自定义名称,但是无法修改,为什么?
1273浏览 4评论
请问ESP32-S2-WROOM怎么获得ESP32-S2外接FLASH的唯一序列号?
941浏览 3评论
2371浏览 3评论
ESP-IDF的VScode插件的build按钮点击会报错的原因?
2556浏览 3评论
ESP-Jumpstart例程中第5个工程:5_cloud连接报错是哪里的问题?
1066浏览 2评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-9 17:01 , Processed in 0.532454 second(s), Total 39, Slave 32 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1834
