MicroPython - это облегченная версия языка программирования Python, разработанная для программирования микроконтроллеров, SOC и других встроенных системных устройств. Он был создан, чтобы позволить разработчикам использовать « простой в изучении и использовании» природа Python для разработки встроенных систем. Теперь, когда Python является основным вводным языком в большинстве школ, и, поскольку он является одним из самых популярных и широко используемых языков программирования во всем мире, благодаря микропитону, множество пользователей Python могут обойти сложную кривую обучения, связанную с использованием C и C ++ для программирования микроконтроллеров. Они могут немедленно начать использовать знания, которые они приобрели за эти годы, для доступа к низкоуровневому оборудованию, как и с другими языками. Micro-python - это, в частности, экономичная реализация Python 3 и, как таковая, совместима с синтаксисом python 3.
Хотя MicroPython пока еще не на том же уровне популярности, что и C и C ++ для разработки встроенных систем, его популярность растет, поскольку все больше и больше микроконтроллеров, IDE и плат для разработки поддерживают его использование. В сегодняшнем руководстве мы рассмотрим одну из таких плат, для которой можно разработать прошивку с использованием MicroPython.
В сегодняшнем руководстве мы рассмотрим разработку кода для ESP32 с помощью MicroPython.
Мы начнем с того, что рассмотрим, почему MicroPython подходит для ESP32, и поработаем над настройкой ESP32 для MicroPython и загрузкой скетча мигания с помощью MicroPython на ESP32.
Почему MicroPython? (MicroPython против Arduino C)
Один из хорошо зарекомендовавших себя и самых простых способов программирования ESP32 - это использование Arduino IDE, что означает использование версии C или C ++ для Arduino. C и C ++ на протяжении десятилетий были двумя самыми популярными языками для разработки встроенных систем, а версия языка Arduino сделала его еще проще, что объясняет его популярность среди производителей и любителей из-за легкости, с которой можно разрабатывать коды. В дополнение к этому, Arduino имеет одно из крупнейших технологических сообществ в мире с новыми библиотеками, исправлениями программного обеспечения, поддержкой новых плат и т. Д., Которые сообщество выпускает ежедневно. Все это делает его прекрасным инструментом для программирования встроенных системных плат. Единственное реальное ограничение, которое можно наложить на Arduino C, - это тот факт, что он работает только в среде Arduino IDE.Поскольку IDE ограничена и в ней отсутствуют некоторые функции, которые действительно могли бы быть полезны при разработке большой базы кода, Arduino C не самый эффективный.
MicroPython, с другой стороны, относительно новый. Несмотря на то, что сообщество его пользователей растет и выпускается поддержка большего числа платформ, его сила не может сравниться с Arduino. С другой стороны, MicroPython - это, по сути, упрощенная версия python, который является одним из самых популярных языков программирования в мире, и поэтому любая проблема, которую не может решить сообщество MicroPython, может потребовать понимания от общего сообщества Python.
Помимо поддержки сообщества, MicroPython также имеет определенные функции, которые делают его намного выше класса Arduino. Одна из таких функций - REPL. REPL расшифровывается как Read-Evaluate-Print. Эта функция позволяет подключаться к плате и быстро выполнять код без необходимости компилировать или загружать весь код. Таким образом, вы можете тестировать каждую часть своего кода по мере их разработки.
Независимо от того, какой из этих двух вариантов вы выберете для своего проекта, убедитесь, что вам лучше всего подходит. Разобравшись с этим, давайте перейдем к созданию примера мигания с использованием ESP32 и MicroPython.
Необходимые компоненты
Чтобы построить пример мигания, нам потребуются следующие компоненты:
- DOIT ESP32 DevKit v1 (1)
- Светодиод (1)
- Резистор 100 Ом (1)
- Перемычки
- Макетная плата (1)
Вы можете использовать любую из других плат на базе ESP32 вместо DOIT ESP32 DevKit V1, и вы можете выбрать работу со встроенным светодиодом, что означает, что вам понадобится только плата ESP32 для этого руководства. Ранее мы мигали светодиодом ESP32, запрограммировав его с помощью Arduino IDE.
Помимо аппаратных компонентов, нам также потребуется программное обеспечение, подобное Thonny IDE.