• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Делюсь опытом Настройка Visual Studio Code и PlatformIO под Windows

kvn234

New member
Или инструкция от Espressif.
Спасибо.

Пара вопросов.

1. Можно ли использовать Ардуиновские функции?
2. В чем преимущество по сравнению с Espressif-IDE под Windows?
 

aZholtikov

Active member
Спасибо.

Пара вопросов.

1. Можно ли использовать Ардуиновские функции?
Даже немного странный вопрос... Вы изначально пытались настроить плагин Esressif 32 для компиляции PlatformIO с framework = espidf???
В ESP-IDF (espidf по Ардуиновски) нет и не может быть Ардуиновских функций! Всякие там DigitalRead, Serial.print и иже с ними отсутствуют как класс. Только функции SDK от Espressif.
 

kvn234

New member
Даже немного странный вопрос... Вы изначально пытались настроить плагин Esressif 32 для компиляции PlatformIO с framework = espidf???
Как вариант например.

Делаю некий проект и нужно мне сделать то что делает функция (конкретный IP адрес)
WiFi.config(ip, dns, gateway, subnet); (реально несколько дней ищу как реализовать на Espressif-IDE под Windows ).
Чтобы продолжить работу я бы временно использовал Ардуиновскую функцию WiFi.config(ip, dns, gateway, subnet);, а затем сделал реализацию на с помощью функций Espressif-IDE под Windows
 

aZholtikov

Active member
Как вариант например.

Делаю некий проект и нужно мне сделать то что делает функция (конкретный IP адрес)
WiFi.config(ip, dns, gateway, subnet); (реально несколько дней ищу как реализовать на Espressif-IDE под Windows ).
Чтобы продолжить работу я бы временно использовал Ардуиновскую функцию WiFi.config(ip, dns, gateway, subnet);, а затем сделал реализацию на с помощью функций Espressif-IDE под Windows
В ESP-IDF для этого существует функция esp_err_t esp_netif_set_ip_info(esp_netif_t *esp_netif, const esp_netif_ip_info_t *ip_info).
 

kvn234

New member
Делаю некий проект и нужно мне сделать то что делает функция (конкретный IP адрес)
WiFi.config(ip, dns, gateway, subnet); (реально несколько дней ищу как реализовать на Espressif-IDE под Windows ).
Нашел рабочий вариант

#include "lwip/ip4_addr.h"


esp_netif_t *my_sta = esp_netif_create_default_wifi_sta();
esp_netif_dhcpc_stop(my_sta);

esp_netif_ip_info_t ip_info;

IP4_ADDR(&ip_info.ip, 192, 168, 1, 122);
IP4_ADDR(&ip_info.gw, 192, 168, 1, 1);
IP4_ADDR(&ip_info.netmask, 255, 255, 255, 0);
esp_netif_set_ip_info(my_sta, &ip_info);
 

enjoynering

Well-known member
ESP-IDF это хорошо. А как на счёт логики сервера HTTP? В Arduino ESP32 для этого все есть из коробки, а вот на голом ESP-IDF придется все писать с нуля самому.
 

aZholtikov

Active member
ESP-IDF это хорошо. А как на счёт логики сервера HTTP? В Arduino ESP32 для этого все есть из коробки, а вот на голом ESP-IDF придется все писать с нуля самому.
А никто и не говорил что будет легко... :) По моему ESP-IDF это уже уровень посложнее для желающих получить после Ардуино немного больше гемора на чистом С... ;-)
На любителя вообщем.
 

aZholtikov

Active member
И в дополнение... Например ESP8266 RTOS_SDK v3.4 (IDF Style) (в Ардуино не поддерживается) позволяет написать полностью аналогичную Ардуино по функционалу прошивку (да - тяжело и со скрипом с нуля) в несколько раз меньше объемом. Для меня это стало принципиальным переходом на голую Espressif SDK.
 

kvn234

New member
ESP-IDF это хорошо. А как на счёт логики сервера HTTP? В Arduino ESP32 для этого все есть из коробки, а вот на голом ESP-IDF придется все писать с нуля самому.

Вот нашел.

 
Сверху Снизу