Оглавление:
- Шаг 1. Что такое MicroPython?
- Шаг 2: требования
- Шаг 3. Почему именно плата на базе ESP8266?
- Шаг 4: Настройка вашего компьютера
- Шаг 5. Прошивка MicroPython с помощью Esptool.py
- Шаг 6. Использование MicroPython REPL с Rshell
- Шаг 7: Управление контактами с помощью MicroPython
- Шаг 8: Погасание светодиода
- Шаг 9: Куда дальше?
- Шаг 10: Заключение
Видео: Начало работы с MicroPython на ESP8266: 10 шагов (с изображениями)
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:51
Вам нужен другой способ программирования плат на базе ESP8266, а не обычный метод с использованием Arduino IDE вместе с языком программирования C / C ++?
В этом руководстве мы узнаем, кто настраивает плату ESP8266 и управляет ею с помощью MicroPython.
ВРЕМЯ СТРОИТЕЛЬСТВА: 60 МИНУТ СЛОЖНО: РЕЙТИНГ: Легко
Шаг 1. Что такое MicroPython?
MicorPython - один из многих языков программирования, которые мы можем использовать для программирования модуля ESP8266. Это компактная и быстрая версия языка программирования Python 3, имеющая ряд преимуществ перед традиционными языками программирования, такими как C и C ++.
MicroPython разработан для максимальной совместимости с обычным Python. Он имеет полный компилятор Python и среду выполнения, а также предоставляет интерактивную подсказку, известную как REPL (цикл чтения-оценки-печати).
MicorPython разработан для поддержки нескольких различных типов микроконтроллеров. Но в этом руководстве я собираюсь работать только с одной моделью: платой на базе ESP8266 (NodeMCU). Обратите внимание, что есть несколько разных плат, которые вы можете купить с одним и тем же чипом.
Чтение и ресурсы:
MicroPython
NodeMCU
Шаг 2: требования
Чтобы иметь возможность следовать этому руководству, вам просто нужно иметь базовый опыт программирования на Python. Вам не нужно иметь никаких предварительных знаний о микроконтроллерах, электронике или даже MicroPython.
Вам также понадобится компьютер под управлением Windows, Mac или Linux со свободным USB-портом, так как вы подключите к компьютеру микроконтроллер для его программирования.
Требуемые детали:
1 x NodeMCU (или другая плата на базе ESP8266)
1 х красный светодиод 5 мм
1 резистор 220 Ом 1/4 Вт
Поворотный потенциометр 10 кОм - 1 шт.
1 х макет
1 кабель USB - MicroUSB
Провода перемычки.
Шаг 3. Почему именно плата на базе ESP8266?
Один из способов получить максимальную отдачу от ESP8266 - использовать MicroPython. Кроме того, модуль ESP8266 - одна из лучших платформ, на которой можно узнать, как использовать MicroPython. Это связано с тем, что ESP8266 предоставляет простые функции управления контактами GPIO, а также беспроводную функциональность, что позволяет тестировать все аспекты языка программирования MicroPython.
Чип ESP8266 популярен в индустрии разработки с открытым исходным кодом. Существует множество плат для разработки от разных производителей, которые используют микросхему ESP8266. MicroPython был разработан для предоставления универсального порта, который может работать на большинстве этих плат с минимально возможными ограничениями. Порт основан на плате Adafruit Feather HUZZAH. При использовании других плат ESP8266 обязательно проверьте их схемы и таблицы данных, чтобы вы могли определить различия между ними и платой Adafruit Feather HUZZAH. Таким образом, вы можете учесть различия в своем коде.
Чтение и ресурсы:
ESP8266
Перо адафрута HUZZAH
Шаг 4: Настройка вашего компьютера
Перед использованием MicroPython для программирования платы ESP8266 вам необходимо настроить несколько вещей. На этом этапе мы рассмотрим процесс настройки. Таким образом вы узнаете, как настроить плату ESP8266 для использования с MicroPython.
Готовиться
Все, что вам нужно от этого шага до шага 6, - это ваш ESP8266 и USB-кабель. Подключите плату ESP8266 к компьютеру.
Как это сделать…
ШАГ1: Установите драйверы устройств
Если у вас компьютер Linux, то вам не нужно устанавливать какие-либо драйверы устройств, чтобы драйверы для микроконтроллера распознавались, но если у вас Mac или Windows-машина, необходим драйвер, позволяющий компьютеру распознавать микроконтроллер. как последовательное устройство.
www.silabs.com/products/development-tools/software/usb-to-uart-bridge-vcp-drivers.
ШАГ 2: Установите Python
Инструменты, которые вы собираетесь использовать для связи с ESP8266, написаны на Python, поэтому вам необходимо установить Python на свой компьютер.
Если ваша операционная система не предоставляет предварительно упакованный Python, вы можете перейти на https://python.org, чтобы загрузить официальную сборку для любой из поддерживаемых операционных систем.
ШАГ 3: Установите esptool и rshell
Установите два пакета, которые помогут вам управлять своей платой с помощью pip. Для этого откройте терминал и запустите
pip install esptool rshell
ШАГ 4: Загрузите MicroPython
Загрузите последнюю версию микропрограммы MicroPython.bin по следующей ссылке:
На момент написания этой статьи текущая версия - 1.11, а файл прошивки называется esp8266-20190529-v1.11.bin.
К тому времени, когда вы это сделаете, вы можете найти более новую версию.
Шаг 5. Прошивка MicroPython с помощью Esptool.py
Перед прошивкой новой прошивки на плату рекомендуется стереть все предыдущие данные. Это нужно делать всегда, чтобы новая прошивка запускалась из чистого состояния.
Перейдите туда, где вы разместили.bin файл. Используйте esptool.py, чтобы стереть вспышку.
Для Linux:
esptool.py --port / dev / ttyUSB0 erase_flash
Для Windows:
esptool.py --port COM3 erase_flash
Возможно, вам придется изменить последовательный порт в вашей команде на последовательный порт, к которому подключена ваша плата ESP8266. Если вы не знаете номер последовательного порта вашего ESP8266, вы можете проверить его в Arduino IDE. Просто откройте среду IDE и щелкните "Инструменты" | Порты. Вы должны увидеть в списке последовательный порт вашей платы ESP8266. Замените последовательный порт в команде (/ dev / ttyUSB0) последовательным портом вашей платы.
Теперь, когда плата полностью стерта, вы можете прошить только что загруженную сборку MicroPython. Это также можно сделать с помощью команды esptool.py:
esptool.py --port / dev / ttyUSB0 --baud 460800 write_flash 0 esp8266-20190529-v1.11.bin
Эта команда собирается записать содержимое файла.bin MicroPython на плату по адресу 0.
Убедитесь, что вы изменили имя.bin-файла микропрограммы в команде (esp82688-2019-080529-v1.11.bin) на имя загруженной микропрограммы.
После успешной установки прошивки на вашу плату ESP8266 вы можете получить доступ к REPL на вашей плате через проводное соединение (последовательный порт UART) или через Wi-Fi.
Шаг 6. Использование MicroPython REPL с Rshell
Теперь вы готовы запустить MicroPython на своей плате ESP8266.
Я собираюсь показать вам, как подключиться к командной строке Python, запущенной на вашей плате. Это называется REPL, что означает «Read-Eval-Print-Loop». Это стандартное приглашение Python, которое вы, вероятно, привыкли видеть при работе с обычным интерпретатором Python, но на этот раз оно будет работать на вашей плате, и для взаимодействия с ним вы собираетесь использовать последовательное соединение с вашим компьютером.. Готовый?
Чтобы подключиться к вашей плате и открыть сеанс REPL, введите следующую команду:
rshell --port
Эта команда перенесет вас в командную строку rshell. Смотрите фото выше.
Если вы следуете этому руководству в Windows, обратите внимание, что rshell имеет историю проблем при работе в Windows.
Итак, чтобы исправить этот тип:
rshell -a --port COM3
Из этого приглашения вы можете выполнять задачи управления, связанные с вашей платой микроконтроллера, а также запускать Python REPL, который вы можете использовать для взаимодействия с платой в реальном времени. Для этого просто введите следующую команду:
ответ
Чтобы убедиться, что все работает, введите простое предложение Python:
print ("Привет, мир")
Шаг 7: Управление контактами с помощью MicroPython
На этом этапе мы узнаем, как управлять контактами ESP8266 с помощью MicroPython. Для этого мы разработаем настройку, в которой мы будем переключать состояние светодиода, подключенного к выводу GPIO платы ESP8266. Это поможет вам понять, как управлять цифровыми выходами с помощью MicoPython.
Готовиться
Для выполнения этого ШАГА вам потребуются следующие вещи:
1 х NodeMCU
1 х красный светодиод 5 мм
1 резистор 220 Ом
1 х макет
Провода перемычки
Сборка
Начните с установки светодиода на макетную плату. Подключите один конец резистора 220 Ом к положительному полюсу светодиода (положительный полюс светодиода обычно является более высоким из двух). Подключите другой конец резистора к контакту D1 платы ESP8266. Затем подключите отрицательную ногу светодиода к контакту GND платы ESP8266. Подключение показано на схеме выше.
После завершения настройки подключите плату ESP8266 к компьютеру через USB-кабель.
Как это сделать…
Введите в REPL следующий код:
# мигает светодиод каждую 1 секунду
def blink (pin = 5, time = 1) # функция мигания по умолчанию pin = 5, time = 1s import machine # модуль машины содержит конфигурации контактов и режимы с момента времени import sleep # импорт сна для некоторой задержки LED = machine. Pin (led_pin, machine. PIN. OUT) # настроить светодиод как OUTPUT, пока True: # работать вечно LED.value (1) # установить светодиод в HIGH sleep (time) # подождать 1 секунду по умолчанию LED.value (0) # установить светодиод to LOW sleep (time) # по умолчанию ждать 1 секунду
Введите blink () в сеансе RPEL, чтобы проверить этот код. Светодиод, подключенный к GPIO5, будет мигать каждую 1 секунду.
Вы можете изменить пин-код и / или время, позвонив:
мигать (контакт =, время =)
Нажмите ctrl + c, чтобы выйти из работающего кода.
Вы можете использовать MicroPython для чтения ввода от подключенного к ESP8266. Перейдите к следующему шагу, чтобы узнать, как это сделать.
Проверьте видео, если застряли.
Шаг 8: Погасание светодиода
На этом этапе мы узнаем, как регулировать яркость светодиода с помощью поворотного потенциометра. Мы будем использовать технику, называемую широтно-импульсной модуляцией (PWM), она позволяет уменьшить яркость светодиода с помощью до 256 настроек.
Примечание: все выводы ESP8266 могут использоваться как выводы ШИМ, кроме GPIO16 (D0).
Готовиться:
Для выполнения этого ШАГА вам потребуются следующие вещи:
1 х NodeMCU
1 х красный светодиод 5 мм
Поворотный потенциометр 50 кОм - 1 шт.
1 х макет
Провода перемычки
Сборка
Подключение осуществляется так, как показано на схеме выше: После завершения настройки подключите плату ESP8266 к компьютеру с помощью кабеля USB.
Как это сделать…
Введите в REPL следующий код:
# Гаснет светодиод каждые 0,5 при считывании данных с потенциометра
импортировать машину из времени import sleep led_pin = 5 # вывод светодиода POT = machine. ADC (0) # вывод ADC0 LED = machine. Pin (led_pin) # создать объект светодиода LED_pwm = machine. PWM (LED, freq = 500) # создать LED_pwm объект и установите частоту на 500 Гц, в то время как True: LED_pwm.duty (POT.read ()) # получить значение из Pot и установить его на рабочий цикл sleep (0.5) # wait 0.5
Это изменит яркость светодиода, подключенного к GPIO 5, путем изменения значения потенциометра.
Нажмите ctrl + c, чтобы выйти из работающего кода.
Проверьте видео, если застряли.
Шаг 9: Куда дальше?
До сих пор мы видели, как настроить и запустить MicroPython на платах на базе ESP8266. мы узнали, как управлять контактами для мигания светодиода, а затем добавили потенциометр для управления яркостью светодиода с использованием метода широтно-импульсной модуляции.
Теперь мы можем считывать данные с датчика и отправлять их в облако, мы также можем создать HTTP-сервер, на котором вы можете распечатать наши данные на простой веб-странице и т. Д.
Это дает нам представление об Интернете вещей (IoT).
Шаг 10: Заключение
Вот и все! Идите вперед и покорите мир MicroPython.
если у вас есть какие-либо вопросы, конечно, вы можете оставить комментарий.
Чтобы узнать больше о моих работах, посетите мой канал на YouTube:
myYouTube
myGitHub
myLinkedin
Спасибо, что прочитали эту инструкцию ^^, и хорошего дня.
Увидимся.
Ахмед Нуира.
Рекомендуемые:
Начало работы с радиолюбителями: 5 шагов (с изображениями)
Начало работы с радиолюбителями: Как недавно получивший лицензию на радиолюбители, я хочу рассказать о процессе, который я предпринял, чтобы попасть в радиолюбители. Меня соблазнила самодостаточность этого хобби, давая людям возможность общаться, когда другие методы не работают. Но это также полезно
Начало работы с камерой M5StickV AI + IOT: 6 шагов (с изображениями)
Приступая к работе с камерой M5StickV AI + IOT: краткий обзор M5StickV - это крошечная камера AI + IOT размером почти в 2 монеты, цена составляет около 27 долларов США, что для некоторых может показаться дорогим для такой крошечной камеры, но в ней есть кое-что. достойные характеристики. Камера работает от невероятной
Начало работы с Python: 7 шагов (с изображениями)
Начало работы с Python: программирование - это круто! Это творчески, весело и дает вашему мозгу умственную тренировку. Многие из нас хотят узнать о программировании, но убеждают себя, что не можем. Может быть, в нем слишком много математики, может быть, используемый жаргон пугает
Начало работы со светодиодной подсветкой NeoPixel / WS2812 RGB: 8 шагов (с изображениями)
Начало работы с светодиодом NeoPixel / WS2812 RGB: [Воспроизвести видео] В этом руководстве мы рассмотрим адресный светодиод RGB (WS2812) или широко известный как Adafruit NeoPixel. NeoPixel - это семейство колец, полос, досок и планшетов. палочки из пульсирующих красочных миниатюрных светодиодов. Это цепные
Начало работы с Micro: bit: 6 шагов (с изображениями)
Начало работы с Micro: bit: Micro: bit - это микроконтроллер - небольшой компьютер, позволяющий управлять электроникой. Он содержит множество функций на крошечной плате электроники: датчик акселерометра для определения движения, угла и ускорения; датчик магнитометра для обнаружения магнитного поля