Язык программирования Python стал настролько популярным, что я заинтересовался а нет ли версии для микроконтроллеров типа esp8266, esp32 и прочее. Оказалось есть версия micropython именно для таких плат. Итак, давайте начнем, рассмотрим на примере микроконтроллера esp8266.
Использование MicroPython – отличный способ получить максимальную отдачу от вашей платы ESP8266. И наоборот, чип ESP8266 является отличной платформой для использования MicroPython. В этом руководстве вы узнаете о настройке MicroPython, получении запроса, использовании WebREPL, подключении к сети и обмене данными с Интернетом, использовании периферийных устройств и управлении некоторыми внешними компонентами.
Требования
Первое, что вам нужно, это плата с чипом ESP8266. Программное обеспечение MicroPython поддерживает сам чип ESP8266, и любая плата должна работать. Основной характеристикой платы является то, сколько на ней флэш-памяти, как контакты GPIO подключены к внешнему миру и включает ли она встроенный USB-последовательный преобразователь, чтобы сделать UART доступным для вашего ПК.
Минимальное требование к размеру флэш-памяти составляет 1 Мбайт. Существует также специальная сборка для плат объемом 512 КБ, но она сильно ограничена по сравнению с обычной сборкой: отсутствует поддержка файловой системы, и, следовательно, зависящие от нее функции не будут работать (WebREPL, mip и т.д.). Таким образом, сборка объемом 512 КБ будет более интересной для пользователей, которые создают из исходных текстов и настраивают параметры для своего конкретного приложения.
Получение прошивки
Первое, что вам нужно сделать, это загрузить последнюю версию MicroPython firmware .bin для загрузки на ваше устройство ESP8266. Вы можете загрузить ее со страницы загрузки MicroPython. Отсюда у вас есть 3 основных варианта
- Стабильные прошивки создаются для модулей объемом 1024 КБ и выше.
- Ежедневные сборки встроенного программного обеспечения для модулей объемом 1024 КБ и выше.
- Ежедневные сборки встроенного программного обеспечения для модулей объемом 512 КБ.
Если вы только начинаете с MicroPython, лучше всего использовать стабильные сборки прошивки. Если вы продвинутый, опытный пользователь MicroPython ESP8266, который хотел бы внимательно следить за разработкой и помогать в тестировании новых функций, существуют ежедневные сборки (примечание: на самом деле вам может понадобиться некоторый опыт разработки, например, быть готовым следить за историей git, чтобы знать, какие новые изменения и возможности были введены).
Поддержка модулей объемом 512 КБ предоставляется на основе предварительного просмотра функций. Конечным пользователям рекомендуется использовать модули с флэш-памятью объемом 1024 КБ или более. Таким образом, предоставляются только ежедневные сборки для модулей объемом 512 кб.
Для прошивки понадобится Python. Версии, начинающиеся с 1.3, поддерживают как Python 2.7, так и Python 3.4 (или новее). Более старая версия (требуется как минимум 1.2.1) работает нормально, но для этого потребуется Python 2.7. Или любая другая программа для перепрошивки, поэтому нужно пробовать. Для прошивки через python вводим команду в терминале
pip install esptool
С помощью esptool.py вы можете стереть флэш-память :
esptool . py — port / dev / ttyUSB0 erase_flash
Если пользуетесь ОС виндоус то порт нужно указать ту которая у вас появилось при подключении esp8266 например СОМ7, и будет:
esptool . py — port СОМ7 erase_flash
Далее устанавливаем новую прошивку командой:
esptool.py –port COM5 –baud 460800 write_flash –flash_size=detect -fm dout 0 esp8266-1m-20220618-v1.19.1.bin