完善资料让更多小伙伴认识你,还能领取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。 |
|
|
|
只有小组成员才能发言,加入小组>>
166个成员聚集在这个小组
加入小组1143 浏览 1 评论
582浏览 6评论
480浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
464浏览 5评论
466浏览 4评论
441浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 16:29 , Processed in 0.905284 second(s), Total 79, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号