ESP8266, Arduino IDE против Луа?

13

Я планирую купить ESP8266. Мне действительно нужно учить Луа играть с ним? Я видел некоторых людей, использующих его со стандартной Arduino IDE.

Вам нужна кастомная прошивка для использования Arduino IDE вместо Lua?

Arduino IDE кажется мне лучше, потому что я уже знаю синтаксис. Есть ли минус в использовании Arduino IDE вместо NodeMCU с Lua?

n0tis
источник

Ответы:

9

Использование Arduino IDE является кастомной прошивкой. Это то, что ты пишешь. Вам не нужно никаких новых прошивок, потому что новая прошивка - это то, что вы пишете.

Я не могу думать о каких-либо недостатках использования C ++ для программирования ESP8266 вместо Lua - на самом деле это может быть только преимуществом, поскольку вы не используете интерпретируемый язык, который будет медленнее, чем встроенный код.

Маженко
источник
3
так почему большинство людей используют NodeMCU с Lua?
n0tis
3
@ n0tis Потому что он предустановлен и очень прост в использовании. Также им говорят, чтобы использовать его, когда они покупают его и не знают ничего лучше.
Majenko
1
@ n0tis Я только программировал их на C ++ и больше ничего не делал. В конце дня вы всегда можете переустановить прошивку интерпретатора LUA и вернуться к LUA, если вы не освоите его в стиле Arduino. Ничто не вечно - вы можете передумать в любое время.
Majenko
3
Это Луа, а не Луа . Это не аббревиатура. Видишь, что в имени? , Как вы используете Lua на Arduino?
Ник Гэммон
2
Да, вы просто компилируете и загружаете. Микропрограмма lua или микропрограмма AI thnker AT являются просто программами, загруженными на плату: одна для интерпретации сценария Lua, другая для интерпретации AT-команд. Так же, как ваши наброски Arduino.
Majenko
11

Lua, как и многие языки сценариев, имеет тенденцию повышать производительность труда программиста: все становится намного проще, если вы работаете на более высоком уровне абстракции и не беспокоитесь о таких тривиальных вещах, как управление памятью. Вы достигаете тех же целей с гораздо меньшим количеством строк кода. С другой стороны, хотя это ускоряет разработку, оно также замедляет выполнение программы. Является ли это хорошим компромиссом или нет, очень зависит от конкретного приложения, которое вы хотите написать.

В вашем конкретном случае вы также должны учитывать тот факт, что вы не знаете Lua, и вы уже знаете как язык C ++, так и API Arduino. Тогда вы не сможете использовать преимущества Lua для одного проекта из-за времени, необходимого для изучения языка. Вы можете рассматривать изучение языка как инвестицию, возможно, оно того стоит, если вы собираетесь много программировать на этой платформе, возможно, не стоит, если это только для одного, достаточно простого проекта. Если вы не уверены, я предлагаю вам взглянуть на API, предоставляемый Lua для этой платформы: насколько хорошо он подходит для вашего проекта? Это значительно лучше, чем Arduino API?

Эдгар Бонет
источник
1

Я НАСТОЯТЕЛЬНО РЕКОМЕНДУЮ ОСТАНОВИТЬСЯ В ARDUINO IDE!

Несмотря на то, что программирование на C ++ не так дружелюбно и разносторонне, как Lua (работа с Esplorer - это действительно воплощение мечты!), Lua ОЧЕНЬ НЕСТАБИЛЬНО И НЕПРЕДВИДЕННО !!!

Вы можете запустить простую программу из десяти строк, и она работает нормально в течение дня ... двух ... и вдруг, на третий день, чип зависает неожиданно и без причины! Если вам повезет, чип перезагрузится, и программа снова запустится ... это НЕ БЫЛО со мной. Мне пришлось перезагрузить программу снова! После 3 таких циклов я решил отказаться от Lua ... НАВСЕГДА.

user3152171
источник
2
Тот же опыт здесь. И мне действительно очень понравилась Луа.
Да. Lua как язык - интересный опыт. На NodeMCU, в основном расстраивает один ..
ДВР
2
Мне нравится Луа и REPL. Мне также нравится js на ESP8266 (espruino) и его небольшая площадь. Как программист встроенных систем, очень ясно, что многие библиотеки Arduino написаны не встроенными программистами, тратящими впустую и / или фрагментирующими ценную память. Я использую Arduino, но делаю что-то вроде собственного управления строками из C, а не из-за уродливого класса C ++. Память - это товар, который нужно ценить, а не злоупотреблять.
uDude
0

Извините за неровности, но эта тема помогла мне выбрать Arduino IDE.

Я начал с Arduino IDE, но не смог заставить его работать с ESP-07. Перешли на NodeMCU и Lua с Esplorer. Мне потребовалось некоторое время, чтобы заставить его работать там также из-за нечетной скорости передачи данных в загрузчике. Сначала казалось, что настроить WEB-сервер очень просто, но проблема заключалась в том, что все найденные примеры были основаны на древнем FW 0.96, а попытки с последним 2.1 не работали вообще. То, что люди не так много сделали с новым FW, заставило меня задуматься.

Теперь с Arduino IDE все начинает работать так, как должно! :)

Питер
источник