Esp8266 eclipse: Build and Flash with Eclipse IDE — ESP8266 RTOS SDK Programming Guide documentation

02. Начало работы, настраиваем Eclipse

, автор: Admin

  1. Скачиваем с сайта https://www.eclipse.org/ Eclipse и устанавливаем версию для c/c++ developers
  2. Копируем папку «esp8266» из архива (весит около 260мБ) в директорию по умолчанию, у меня это корень диска «C»
  3. Устанавливаем Python 2,7 из архива, при установке ВЫБРАТЬ ПУНКТ ПРОПИСАТЬ В PATH (или прописать вручную C:\Python27;C:\Python27\Scripts), проверяем что он установился:-в командной строке (win+R + «cmd») вводим команду "python --version"
    -Если результат примерно как рисунке — приступаем к следующему шагу, если нет — может помочь перезагрузка ПК и/или переустановка Python
    -После устанавливаем esptool.py для этого водим в командной строке «pip install esptool»и ждем окончания установки
    -Можно проверить правильность установки командой "esptool.
    py --version"
  4. Запускаем mingw-get-setup (можно не устанавливать GUI и потом запустить скрипт из папки «Espressif-ESP8266-DevKit-Addon»)
  5. прописываем MinGW в переменную PATH (мой компьютер->свойства->Дополнительные параметры системы->переменные среды->системные переменные->PATH) для моего места установки пришлось дописать «;C:\MinGW\bin»
  6. Запускаем Eclipse, можно открыть пример и архива (FirstProject) для этого нажимаем
    File->Import->General->Existing Project into Workspace, указываем папку с проектом и нажимаем Finish.
  7. Кликаем на название проекта и выбираем его свойства.

Выполняем настройки:
вписываем строки:

mingw32-make.exe -f ${ProjDirPath}/Makefile
${workspace_loc:/FirstProject}/
в поля как на рисунке ниже

Переходим на вкладку Tool Chain Editor и проверяем компилятор.

Проверим что в Eclipse прописались пути к файлам проекта:

Выбираем Проект->Properties->C/C++ General и делаем настройки как на рисунке

Сохраняем изменения.

Далее переходим в Window->Preferences->General->Workspace ставим галочку у пункта «Save automatically…»


На этом пункте настройка eclipse завершена.
//
//————————————————————————————-
//

Переходим в проект — Makefile
-Правим (при необходимости пути)
-Подключаем плату с esp8266 к компьютеру (в режиме заливка прошивки — см. статью) — в верху makefile меняем com port и частоту при необходимости.
-Проверяем что адрес дефолтной прошивки правильный.

Открываем меню «Make Target» справа:

  1. Нажимаем цель erase_flash (очищаем flash)
  2. Нажимаем цель Load_Default_Flash (+делаем reset по питанию и переключаемся в режим исполнения кода)
  3. Нажимаем цель clean (удаляем старые прошивки и тд с локального
    диска) (+делаем reset по питанию) P.S. если каталоги пустые — может выдать ошибку.
  4. Нажимаем кнопку компилировать (молоточек) в верхней панели
  5. Нажимаем цель flash (+делаем reset по питанию) .

 

При первичной загрузке надо выполнять пункты 1-5, при повторной заливке прошивки достаточно выполнять пункты 3-5.
Примечание: иногда контроллер может не прошиться с первой попытки а eclipse выдать ошибку — самый простой вариант — пересобрать проект (п.4) и прошиться заного (п.5).

Должна пройти загрузка и после перезапуска платы светодиод начнет моргать.

На этом этапе мы настроили среду и смогли зашить первый проект в отладочную плату. В дальнейшем мы подробнее пройдем использующиеся функции.

Рубрики: ESP8266.

Разворачивание Espressif ESP32 toolchain под Eclipse в Windows: elchupanibrei — LiveJournal

?
Category:
  • IT
  • Cancel
Фирма Espressif решила повернуться лицом к энтузиастам, которым стало тесно в Arduino IDE и выкатила плУгин упрощающий разворачивание ESP-IDF 4. 0 под Eclipse в Windows. Хотели как лучше, а получилось как всегда.

Качаем всю шнягу из пункта Installing Prerequisites. У меня под 64-битные окна получился такой список:

— jdk-14_windows-x64_bin.exe
— eclipse-2020-03-R-inst-win64.exe
— esp-idf-v4.0.zip
— Git-2.26.0-64-bit.exe
— python-3.8.2.exe

Чтоб Eclipse заработал ему нужна Java. Ставим Java SE 14. За ним идет Eclipse 2020. Нам нужна версия для C/C++ Developers. Первый раз накатил Eclipse в Program Files и у меня ничего не взлетело — toolchain is not found. Скорее всего из за UAC. Отличный мануал Espressif!!! Поумнел и создал папку C:\Programming\, чтоб все лежало в одном месте. Поставил туда Eclipse, разархивировал esp-idf-v4.0, поставил Git и Python. Получилось как-то так:

ставим всю шнягу в одно место


Запускаем Eclipse идем Help -> Install New Software, кликаем Add…. В поле Name пишем Espressif IDF Plugins for Eclips. В поле Location указываем путь хттпс//dl. espressif.com/dl/idf-eclipse-plugin/updates/latest/ (заменить хттпс на https). Кликаем Add… Выбираем Espressif IDF из списка и продолжаем установку.

картинка из официальной документации


После перезагрузки Eclipse идем в появившийся пункт Help -> Espressif IDF Tools Manager -> Install Tools:

картинка из официальной документации


Прописываем пути правильно, а не как у китайцев и жмякаем Install Tools:

прописывай пути правильно %username%


Тут меня ждал облом, стоящий мне 2 часов брождения по форумам. Разворачивание toolchain заканчивалось ошибкой:

virtualenv: error: unrecognized arguments: —no-site-packages

Короче — это известный баг, про который Espressif решила скромно промолчать. Надо откатить питоновскую виртуалку командой:

python -m pip install —upgrade virtualenv==16.7.9

Так держать Espressif!!! Вы так отпугнете даже самых упоротых ваших фанатов. Если об ни написали — ребята это alpha release, играйтесь если времени много. Я бы понял и простил, а так жесть.

Снес папку %USERPROFILE%\.espressif и заново запустил Espressif IDF Tools -> Install Tools. Все установилось нормально. Чтоб пример скомпилировался нужно обязательно указать Target — у меня это ESP32 на COM3.

Eclipse с примером Hello World из ESP-IDF Release v4.0


UDP: Фирма Espressif так же пилит расширение под MS Visual Studio Code, но там похоже совсем адь и израиль. Пока слишком сыро, запутанно и не понятно.

PROFIT.

Tags: #esp32, esp32

Subscribe

  • Собрал Ka-Radio32 на ESP32

    Два года слушал младшую модель Ka-Radio на ESP8266, но не хватало экрана, нормального управления и 320kbps. На github нашел интересную плату.…

  • Ремонт автомобильного колпака

    В понедельник менял колеса на зимние и сломал пластиковый колпак. Рабочий способ ремонта под катом. Клейл с сзади, армировав хлопчатобумажной…

  • Wi-Fi клиент из старого роутера на FreshTomato

    Я уже писал как сделать точку + клиент на OpenWRT. До сих пор не знаю, что нужно курить, чтоб такую такую простую фичу превратить в целый квест. Но…

Photo

Hint http://pics.livejournal.com/igrick/pic/000r1edq

  • Собрал Ka-Radio32 на ESP32

    Два года слушал младшую модель Ka-Radio на ESP8266, но не хватало экрана, нормального управления и 320kbps. На github нашел интересную плату.…

  • Ремонт автомобильного колпака

    В понедельник менял колеса на зимние и сломал пластиковый колпак. Рабочий способ ремонта под катом. Клейл с сзади, армировав хлопчатобумажной…

  • Wi-Fi клиент из старого роутера на FreshTomato

    Я уже писал как сделать точку + клиент на OpenWRT. До сих пор не знаю, что нужно курить, чтоб такую такую простую фичу превратить в целый квест. Но…

Сборка и прошивка

с помощью Eclipse IDE — документация ESP8266 RTOS SDK Programming Guide

Сборка и прошивка с помощью Eclipse IDE — документация ESP8266 RTOS SDK Programming Guide

Установка Eclipse IDE

Eclipse IDE предоставляет графическую интегрированную среду разработки для написания, компиляции и отладки проектов ESP8266_RTOS_SDK.

  • Начните с установки ESP8266_RTOS_SDK для вашей платформы (см. файлы в этом каталоге с инструкциями для Windows, OS X, Linux).
  • Мы предлагаем сначала создать проект из командной строки, чтобы понять, как работает этот процесс. Вам также необходимо использовать командную строку для настройки вашего проекта ESP8266_RTOS_SDK (через make menuconfig ), в настоящее время это не поддерживается внутри Eclipse.
  • Загрузите программу установки Eclipse для своей платформы с сайта eclipse.org.
  • При запуске установщика Eclipse выберите «Eclipse для разработки C/C++» (в других местах вы увидите, что это называется CDT). 0008

Пользователи Windows

Использование ESP8266_RTOS_SDK с Eclipse в Windows требует других шагов настройки. См. руководство Eclipse IDE для Windows.

Настройка Eclipse

После запуска новой установки Eclipse выполните следующие действия:

Импорт нового проекта

  • Eclipse использует поддержку Makefile в ESP8266_RTOS_SDK. Это означает, что вам нужно начать с создания проекта ESP8266_RTOS_SDK. Вы можете использовать проект idf-template из github или открыть один из примеров в подкаталоге примеров ESP8266_RTOS_SDK.
  • После запуска Eclipse выберите File -> Import…
  • В появившемся диалоговом окне выберите «C/C++» -> «Существующий код как проект Makefile» и нажмите «Далее».
  • На следующей странице введите «Existing Code Location» в качестве каталога вашего проекта ESP8266_RTOS_SDK. Не указывайте путь к самой директории ESP8266_RTOS_SDK (это будет позже). Указанный вами каталог должен содержать файл с именем «Makefile» (файл Makefile проекта).
  • На той же странице в разделе «Связка инструментов для настроек индексатора» выберите «Cross GCC». Затем нажмите Готово.

Свойства проекта

  • Новый проект появится в Project Explorer. Щелкните проект правой кнопкой мыши и выберите «Свойства» в контекстном меню.
  • Щелкните на странице свойств «Среда» в разделе «Сборка C/C++». Нажмите «Добавить…» и введите имя
    BATCH_BUILD
    и значение 1 .
  • Нажмите «Добавить…» еще раз и введите имя IDF_PATH . Значение должно быть полным путем, где установлен ESP8266_RTOS_SDK.
  • Редактировать ПУТЬ переменная среды. Сохраните текущее значение и добавьте путь к набору инструментов Xtensa, установленному как часть установки ESP8266_RTOS_SDK, если он еще не указан в PATH. Типичный путь к набору инструментов выглядит так: /home/user-name/esp/xtensa-lx106-elf/bin . Обратите внимание, что вам нужно добавить двоеточие : перед добавленным путем.
  • В macOS добавьте переменную среды PYTHONPATH и установите для нее значение /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages . Это связано с тем, что системный Python, в котором pyserial установлен как часть шагов установки, переопределяет любой встроенный Eclipse Python.

Перейдите на страницу свойств «C/C++ General» -> «Preprocessor Include Paths»:

  • Щелкните вкладку «Providers»
  • В списке провайдеров нажмите «Настройки встроенного компилятора CDT Cross GCC». Измените «Команда для получения спецификаций компилятора» на xtensa-lx106-elf-gcc ${FLAGS} -E -P -v -dD "${INPUTS}" .
  • В списке провайдеров нажмите «CDT GCC Build Output Parser» и измените «Шаблон команды компилятора» на xtensa-lx106-elf-(gcc|g\+\+|c\+\+|cc|cpp|clang)

Перейдите на страницу свойств «C/C++ General» -> «Indexer»:

  • Установите флажок «Включить параметры проекта», чтобы включить остальные параметры на этой странице.
  • Снимите флажок «Разрешить эвристическое разрешение включений». Когда эта опция включена, Eclipse иногда не может найти правильные каталоги заголовков.

Перейдите на страницу свойств «Сборка C/C++» -> «Поведение»:

  • Установите флажок «Включить параллельную сборку», чтобы включить несколько заданий сборки параллельно.

Сборка в Eclipse

Перед первой сборкой проекта Eclipse может отображать множество ошибок и предупреждений о неопределенных значениях. Это связано с тем, что некоторые исходные файлы автоматически генерируются как часть процесса сборки ESP8266_RTOS_SDK. Эти ошибки и предупреждения исчезнут после сборки проекта.

  • Нажмите OK, чтобы закрыть диалоговое окно «Свойства» в Eclipse.
  • Вне Eclipse откройте приглашение командной строки. Перейдите в каталог вашего проекта и запустите сделайте menuconfig , чтобы настроить параметры ESP8266_RTOS_SDK вашего проекта. В настоящее время этот шаг должен выполняться вне Eclipse.

Если вы попытаетесь выполнить сборку без предварительного выполнения шага настройки, ESP8266_RTOS_SDKf запросит настройку в командной строке, но Eclipse не может с этим справиться, поэтому сборка зависнет или завершится ошибкой.

  • Вернувшись в Eclipse, выберите Project -> Build, чтобы собрать проект.

СОВЕТ : Если ваш проект уже был собран вне Eclipse, вам может потребоваться выполнить Project -> Clean перед выбором Project -> Build. Это делается для того, чтобы Eclipse мог видеть аргументы компилятора для всех исходных файлов. Он использует их для определения путей включения заголовков.

Flash из Eclipse

Вы можете интегрировать цель «make flash» в свой проект Eclipse для прошивки с помощью esptool.py из пользовательского интерфейса Eclipse:

  • Щелкните правой кнопкой мыши свой проект в Project Explorer (важно убедиться, что вы выбрали проект, а не каталог в проекте, иначе Eclipse может найти неправильный Makefile. )
  • Выберите Build Targets -> Create… из контекстного меню.
  • Введите «flash» в качестве имени цели. Остальные параметры оставьте по умолчанию.
  • Теперь вы можете использовать Project -> Build Target -> Build (Shift+F9) для создания пользовательской flash target, которая будет компилировать и прошивать проект.

Обратите внимание, что вам нужно будет использовать «make menuconfig», чтобы установить последовательный порт и другие параметры конфигурации для перепрошивки. «make menuconfig» по-прежнему требует терминала командной строки (см. инструкции для вашей платформы).

Выполните те же шаги, чтобы добавить цели bootloader и partition_table , если это необходимо.

Читать документы v: последний

Версии
последний
v3.4
v3. 2
v3.1.1
выпуск v3.4
выпуск v3.3
выпуск v3.1
Загрузки
pdf
HTML
При прочтении документов
Дом проекта
Строит

Бесплатный хостинг документов предоставляется Read the Docs.

Eclipse IDE для Windows — документация ESP8266 RTOS SDK Programming Guide

Eclipse IDE для Windows — документация ESP8266 RTOS SDK Programming Guide

Для настройки Eclipse в Windows требуются другие действия. Полные шаги настройки для Windows показаны ниже.

(Инструкции для OS X и Linux см. на странице Eclipse IDE.)

Установка Eclipse IDE

Выполните действия, описанные в разделе Установка Eclipse IDE для всех платформ.

Настройка Eclipse в Windows

После запуска новой установки Eclipse выполните следующие действия:

Импорт нового проекта

  • Eclipse использует поддержку Makefile в ESP8266_RTOS_SDK. Это означает, что вам нужно начать с создания проекта ESP8266_RTOS_SDK. Вы можете использовать проект idf-template из github или открыть один из примеров в подкаталоге примеров ESP8266_RTOS_SDK.
  • После запуска Eclipse выберите File -> Import…
  • В появившемся диалоговом окне выберите «C/C++» -> «Существующий код как проект Makefile» и нажмите «Далее».
  • На следующей странице введите «Existing Code Location» в качестве каталога вашего проекта ESP8266_RTOS_SDK. Не указывайте путь к самой директории ESP8266_RTOS_SDK (это будет позже). Указанный вами каталог должен содержать файл с именем «Makefile» (файл Makefile проекта).
  • На той же странице в разделе «Связка инструментов для настроек индексатора» снимите флажок «Показать только доступные цепочки инструментов, которые поддерживают эту платформу».
  • В появившемся расширенном списке выберите «Cygwin GCC». Затем нажмите Готово.

Примечание. В пользовательском интерфейсе могут отображаться предупреждения о том, что Cygwin GCC Toolchain не найден. Все в порядке, мы собираемся перенастроить Eclipse, чтобы найти нашу цепочку инструментов.

Свойства проекта

  • Новый проект появится в Project Explorer. Щелкните проект правой кнопкой мыши и выберите «Свойства» в контекстном меню.

  • Щелкните на странице свойств «C/C++ Build» (верхний уровень):

    • Снимите флажок «Использовать команду сборки по умолчанию» и введите это для пользовательской команды сборки: python ${IDF_PATH}/tools/windows/eclipse_make.py
  • Нажмите на страницу свойств «Среда» в разделе «Сборка C/C++»:

    • Нажмите «Добавить…» и введите имя BATCH_BUILD и значение 1 .
    • Нажмите «Добавить…» еще раз и введите имя IDF_PATH . Значение должно быть полным путем, где установлен ESP8266_RTOS_SDK. Каталог IDF_PATH должен быть указан с использованием прямой косой черты, а не обратной косой черты, т.е. C:/Пользователи/имя-пользователя/Разработка/ESP8266_RTOS_SDK .
    • Измените переменную среды PATH. Удалите существующее значение и замените его на C:\msys32\usr\bin;C:\msys32\mingw32\bin;C:\msys32\opt\xtensa-lx106-elf\bin (если вы установили msys32 на другой каталог, то вам нужно будет изменить эти пути, чтобы они соответствовали).
  • Нажмите «C/C++ General» -> «Preprocessor Include Paths, Macros, etc». страница свойств:

Перейдите на страницу свойств «C/C++ General» -> «Indexer»:

  • Отметьте «Включить специальные настройки проекта», чтобы включить остальные настройки на этой странице.
  • Снимите флажок «Разрешить эвристическое разрешение включений». Когда эта опция включена, Eclipse иногда не может найти правильные каталоги заголовков.

Перейдите на страницу свойств «Сборка C/C++» -> «Поведение»:

  • Установите флажок «Включить параллельную сборку», чтобы включить несколько заданий сборки параллельно.
  • Установка количества заданий немного выше «оптимального» может привести к самым быстрым сборкам под Windows, в зависимости от конкретного используемого оборудования.

Сборка в Eclipse

Продолжить со сборки в Eclipse для всех платформ.

Технические подробности

Представляет интерес только для гуру Windows или очень любопытных лиц.

Объяснение технических причин некоторых из этих шагов. Вам не нужно знать это, чтобы использовать ESP8266_RTOS_SDK с Eclipse в Windows, но это может быть полезно, если вы планируете углубиться в поддержку Eclipse:

  • Кросс-компилятор xtensa-lx106-elf-gcc — , а не — набор инструментов Cygwin, даже если мы говорим Eclipse, что это один. Это связано с тем, что msys2 использует Cygwin и поддерживает пути в стиле Unix (типа /c/blah вместо c:/blah или c:\\blah ). В частности, xtensa-lx106-elf-gcc сообщает функции Eclipse «встроенные настройки компилятора», что все его встроенные каталоги включения находятся под /usr/ , что является путем в стиле Unix/Cygwin, который Eclipse в противном случае не могу решить. Сообщая Eclipse, что компилятором является Cygwin, он разрешает эти пути внутренне, используя утилита cygpath .
  • Та же проблема возникает при синтаксическом анализе выходных данных make из ESP8266_RTOS_SDK. Eclipse анализирует этот вывод, чтобы найти каталоги заголовков, но не может разрешить включаемые каталоги формы /c/blah без использования cygpath . Существует эвристика, которую Eclipse Build Output Parser использует, чтобы определить, должен ли он вызывать cygpath , но по неизвестным в настоящее время причинам конфигурация ESP8266_RTOS_SDK не запускает ее. По этой причине 9Сценарий оболочки 0010 eclipse_make.py используется для вызова make и последующего использования cygpath для обработки вывода для Eclipse.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *