• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Делюсь опытом Настройка Windows и Eclipse для ESP32

Алексей.

Active member
Сложно сказать, эта гонка к независимости от одного, приводит к зависимости от другого.
Например, независим от микрософт, выбираем астру или альт, зависим от их репов.
Пытаемся подключть сторонние репы, и как проходить сертификацию фстэк в этом случае, не понятно...
 

pvvx

Активный участник сообщества
Сложно сказать, эта гонка к независимости от одного, приводит к зависимости от другого.
Например, независим от микрософт, выбираем астру или альт, зависим от их репов.
Пытаемся подключть сторонние репы, и как проходить сертификацию фстэк в этом случае, не понятно...
Давайте не будем о политике...
Но ответ уже дан - они будут развивать ИИ - оно и разберется с "фстэк". :)
Или "шо - опять?" дыраколы с перфокартами? Учить ASM и т.д?
Посмотрите сколько наворочено скриптов в том-же IDF... Кто из нового поколения будет в этом разбираться?
Тут ТС скопировал перевод в пару строк и уже считает - это он сделал всё описание... :)
Если ещё напишите что-то для Arduino, типа либы в 2 строки С++, то вам придется заполнить анкетку с указанием своего (с). (library.properties - файлик)
 

Алексей.

Active member
Посмотрите сколько наворочено скриптов в том-же IDF... Кто из нового поколения будет в этом разбираться?
объем не малый на первый взгляд, но сравните с проектом опен-врт, там по больше будет, и ничего, не жужжим, как-то разбираемся по необходимости.
А новое поколение, оно как всегда, условно делится на троечников и отличников, правда осознаешь это не сразу :)
В прошлом (далеком) приходил как то студент на работу устраиваться, собеседование проходил.
Даже не устраиваться, а скорее поделиться опытом.
Принес проект компилятора, из серии "наивных компиляторов".
С удивлением посмотрели, практического применения не нашли, посчитали его чудаком тогда.
Так и не сложилось.
А сейчас думаю, что направив энергию таких людей (из нового поколения) в нужном направлении, можно получать результаты.
 

pvvx

Активный участник сообщества
объем не малый на первый взгляд, но сравните с проектом опен-врт, там по больше будет, и ничего, не жужжим, как-то разбираемся по необходимости.
А новое поколение, оно как всегда, условно делится на троечников и отличников, правда осознаешь это не сразу :)
В прошлом (далеком) приходил как то студент на работу устраиваться, собеседование проходил.
Даже не устраиваться, а скорее поделиться опытом.
Принес проект компилятора, из серии "наивных компиляторов".
С удивлением посмотрели, практического применения не нашли, посчитали его чудаком тогда.
Так и не сложилось.
Сами и подтверждаете - это не нужно уже никому.
Реальный пример разберите - есть какая-то одиночная задача, которую всё-же может решить тупой 8-ми битный проц., но есть сроки актуальности... и даже если выгорит, то завтра потребует расширения функционала... Раб.день программера на питоне (и пр.) стоит значительно больше 8-ми битного проца... А на ASM задача будет решена только за месяцы...
От каменных топоров в пещере до бульдозера прошло сотни/мульоны лет. Всё остальное - за последние 100 лет... В итого за время работы с 8 битником остальные уже смоются на Марс...
А сейчас думаю, что направив энергию таких людей (из нового поколения) в нужном направлении, можно получать результаты.
Типа: Примем на работу по специальности "заместитель ИИ" ?
 

pvvx

Активный участник сообщества
@Алексей.
По уровню движутся «лемминги» — маленькие существа, бездумно шагающие вперёд независимо от того, какая опасность их там подстерегает. Раздавая задания отдельным леммингам (копать туннель, разворачивать леммингов в другую сторону и т. д., всего восемь уникальных команд), надо довести определённый процент группы к «дому». Без задания, лемминги просто шагают вперёд, игнорируя других леммингов, падая через край или разворачиваясь, если встретилось препятствие, которое нельзя преодолеть.
Lemmings — Википедия
Это история ESP и OpenWRT.
Тысячи леммингов, превозмогая потери, по нечетким заданиям, выковали кучу скриптов...
 

Andrey L

Member
Второй проект или Blink
В примерах, в «get-started" помимо «привет мир» есть ещё пример «маячок» или «blink». Но после прошивки этого примера модуль не мигает встроенным ЛЕД. Сейчас мы это исправим.

Делаем практически всё, как с Hello World
Поскольку всё у нас уже загружено и настроено, то переходим сразу к пункту копирования. Всё очень похоже, как было описано выше.

В терминале сначала вводим первую команду «cd ~/esp» (переходим в нужный каталог).

Там мы копируем нужный проект командой «cp -r $IDF_PATH/examples/get-started/blink .».

После чего мы заходим внутрь нового католога «cd blink/». (Или же «cd ~/esp/blink»).

Через какой COM-порт подключается ESP32 мы уже знаем, и я не буду это тут описывать. Мы запускаем сразу в шеле «make menuconfig». Но там мы указываем не только COM-порт, но и меняем номер пина, который будет у нас мигать. На верхнем уровне меню ищем пункт «Example Configuration --->», внутри будет лишь один пункт меню «Blink GPIO number», выбираем его и меняем там значение с «5» на «2». Потом, когда выходим из этих настроек всё сохраняем.

Теперь после прошивки модуля, будет мигать встроенный ЛЕД.

Другой способ заставить этот ЛЕД мигать
Если отрыть основной код программы, который находится в «.....\esp\blink\main\blink.c», то увидем там строчку «#define BLINK_GPIO CONFIG_BLINK_GPIO». Коментарий над этой строчкой гласит, что мы можем изменить настройки в «make menuconfig» (этот вариант мы рассмотрели только что) или же просто подставить цифру (а это мы сделаем сейчас). Мы просто «CONFIG_BLINK_GPIO» поменяем на «2». Должно получиться «#define BLINK_GPIO 2».

После прошивки встроенный ЛЕД тоже будет мигать.
 

Andrey L

Member
Мои выводы, что у меня получилось.

От Arduino IDE я решил отойти, поскольку захотелось удобства в виде хорошей подсветки, автодополнения, всплывающих подсказок и прочего удобства. К сожалению, если подсветки в ECLIPSE заработали, то текст не захотел автодополняться. Как дополнительное неудобство - при создании нового проекта приходится копаться по менюшкам, но ещё и лезть в шел.

Пожалуй, я продолжу рассматривать другие среды программирования.
 

Alcest

Member
Как заставить Eclipse отображать в терминале данные полученные через COM-порт? У меня закладка "Терминал" совсем пустая, ни одной кнопки на ней.
 

Andrey L

Member
Как заставить Eclipse отображать в терминале данные полученные через COM-порт?
Сразу после прошивки Eclipse не разрывает соединение с модулем и продолжает с ним общаться, а следовательно можно видеть, что ESP32 возвращает по терминалу.

Если речь шла не о первой прошивке, то я в этом случае пользовался PUTTY.


Но Eclipse меня кое-чем не удовлетворила, и я решил перейти на другую комбинацию софта.
 

Andrey L

Member
@Alcest

После Вашего вопроса ещё раз вернулся в Eclipse, и нашёл ответ на Ваш вопрос.

В Eclipse в окне "Console" (Alt+Shift+Q, C) справа есть кнопка с возможностью выбора "Open Console". Кликайте по этой кнопке, должен будет развернуться список, там выбирайте "Command Shell Console".
Откроется новое окно-меню. В поле "Connection Type" выбирайте "Serial Port". В строчке "Connection name" кликайте по кнопке "New...", откроется ещё одно окно-менюшка.
В поле "Connection name:" вводите название этого соединения, например "ESP 32", а в поле "Serial port:" выбирайте нужный COM-порт. Проверьте, в поле "Baud rate:" должно стоять "11520". После чего жмите на кнопку "Finish".
Возвращаемся к окну-менюшке "Select Remote Connection" и в поле "Connection name:" выбираем только что созданное соединение.
Возможно, надо будет изменить и "Encoding". Кликайте по кнопке "OK".

Теперь Вы можете при помощи Eclipse смотреть, какой текст выдаёт ESP.
 

Alcest

Member
там выбирайте "Command Shell Console".
У меня нет такого пункта в "Open conslole". По-видимому зависит от версии Eclipse. У меня Luna 4.4.0.
Что-то мне самому Эклипс уже не нравится... Последние версии исключительно 64-разрядные, что меня совсем не радует.
Но Eclipse меня кое-чем не удовлетворила, и я решил перейти на другую комбинацию софта
Visual Studio от MS? Я, разрываясь между разными вариантами, ставил какую-то версию. Но, не зашло... Во-первых черный как сволочь - в редакторе белые буквы на черном фоне. Во-вторых на инглише. Впрочем, думаю, что это все поправимо. Я просто не успел разобраться что и как там с этим VS, перепрыгивая с одного софта на другой.

Здесь [Info] Building ESP32 applications on Windows using Visual Studio - ESP32 Forum Колбан пишет что-то о Visual Studio Community. Пожалуй, еще раз поставлю IDE от Microsoft, повтыкаю.
 

Alcest

Member
Нет, такой пункт у меня отсутствует. Я уже плагинов всяких понаставил, для терминала и c0m-порта. Однако, толку ноль. Приходится пользоваться putty, что не совсем удобно.
 

Alcest

Member
Вот, только сейчас мне стало окончательно ясно, почему PIC микроконтроллеры получили такую популярность в свое время. Родная IDE от Microchip просто конфетка, в MPLAB есть все и даже больше чем нужно для программирование под PIC.
 

nikolz

Well-known member
Вот, только сейчас мне стало окончательно ясно, почему PIC микроконтроллеры получили такую популярность в свое время. Родная IDE от Microchip просто конфетка, в MPLAB есть все и даже больше чем нужно для программирование под PIC.
А вы сравните возможности чипов и станет ясно почему
конструкция велосипеда тоже понятнее дилетанту, чем конструкция авто
Поэтому велосипед может разобрать даже ребенок
 

Alcest

Member
А вы сравните возможности чипов
Вы открывали даташиты на dsPIC, PIC32? Сравнивали их с ESP32? Еще неизвестно, кто из них лисапед, а кто... самокат с моторчиком (вафлей и блютузом) и... без тормозов (без фирменной IDE, компиля и приличной документации). Я было дело обратил внимание на STM32, но поняв какой там попадос с отладкой, решил посмотреть что там с ESP32. А тут все еще запущеннее оказалось... Единственное что подкупало, это низкая цена и встроенные приемопередатчики. А теперь уже и не знаю, стоит ли оно своих денег...
 

nikolz

Well-known member
Вы открывали даташиты на dsPIC, PIC32? Сравнивали их с ESP32? Еще неизвестно, кто из них лисапед, а кто... самокат с моторчиком (вафлей и блютузом) и... без тормозов (без фирменной IDE, компиля и приличной документации). Я было дело обратил внимание на STM32, но поняв какой там попадос с отладкой, решил посмотреть что там с ESP32. А тут все еще запущеннее оказалось... Единственное что подкупало, это низкая цена и встроенные приемопередатчики. А теперь уже и не знаю, стоит ли оно своих денег...
Вы там обнаружили два ядра?
А WiFi и BLE?
А сколько там памяти?
А сколько разрядность ADC? - ну это мелочи.
Ну вот и сравните.
Да еще тактовую частоту не забудьте сравнить
 

nikolz

Well-known member
и еще...
ESP32 это три камня pic в одном чипе два из ни 32 битовых.
Подумайте над этим
 

pvvx

Активный участник сообщества
и еще...
ESP32 это три камня pic в одном чипе два из ни 32 битовых.
Подумайте над этим
Давно подумали за вас - двуголовые даже 16-ти битнитки, об остальном, особо о кол-ве встроенных контроллеров/объема памяти/производительности (уже годы назад) у PIC32 и говорить нечего.
Вам бы подумать, как вы отстали со своим погружением в ESP... Не лезли бы туда где ничего не знаете.. :p
... решил посмотреть что там с ESP32. А тут все еще запущеннее оказалось... Единственное что подкупало, это низкая цена и встроенные приемопередатчики. А теперь уже и не знаю, стоит ли оно своих денег...
Денех то стоит, но сред разработки нет, как у всего китайского... Подтянуться (когда ESP32 совсем сойдет), но всему своё время...
ESP жив исключительно за счет Arduino.
 
Сверху Снизу