Оглавление:
- Шаг 1. Получение прошивки и библиотек
- Шаг 2: Работа с MicroPython
- Шаг 3: MicroPython через последовательный порт
Видео: MicroPython на сенсорной плате Complex Arts: 3 шага
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:49
Одним из самых удивительных аспектов микроконтроллера ESP32 является его способность запускать MicroPython. Это можно сделать двумя способами: запустить полные программы Python или интерактивно через консольное приложение. Это руководство продемонстрирует, как использовать MicroPython в обоих направлениях с помощью платы датчиков Complex Arts. Сначала мы запустим пример приложения, которое собирает данные акселерометра от IMU BNO_085, а затем воспользуемся последовательной программой для интерактивного программирования на Python.
Уровень: это руководство предполагает некоторые знания Python и что Python установлен. Это также предполагает знание основных команд терминала.
Инструменты. Единственные инструменты, которые нам понадобятся, это Sensor Board, программа терминала и программа последовательной консоли. На Mac вы можете просто использовать терминал. На компьютере с Windows вам нужно будет загрузить и установить программу терминала. Для последовательной консоли. Шпаклевка - всегда хороший выбор.
Шаг 1. Получение прошивки и библиотек
Для начала нам нужно загрузить специальную прошивку, предоставленную Complex Arts, а затем прошить ее на сенсорную плату. Прошивку можно найти здесь:
Загрузите файл firmware.bin и поместите его в выбранную вами папку. В конечном итоге вам также понадобится программа-пример Complex Arts, так что можете сделать это сейчас; перейдите по адресу: https://github.com/ComplexArts/SensorBoardPython и git clone или загрузите в выбранное вами место.
Как только вы получите файлы, нам понадобится несколько пакетов для взаимодействия с ESP32. Первый пакет, который нам понадобится, - esptool.py. Чтобы установить его, просто введите
pip install esptool
в терминале.
После установки esptool мы можем стереть, а затем заново прошить чип. Для этого введите
esptool.py --chip esp32 --port COM4 erase_flash
для порта введите последовательный порт, который совпадает с платой датчика. На Mac это будет выглядеть примерно так --port / dev / ttyUSB0
Как только это будет сделано, мы запишем чип:
esptool.py --chip esp32 --port COM4 --baud 460800 write_flash -z 0x1000 firmware.bin
Опять же, измените порт соответствующим образом.
Шаг 2: Работа с MicroPython
Если мы проверим последовательный вывод сенсорной платы на этом этапе, мы увидим Python REPL (цикл чтения-оценки-печати: >>>). Для этого нам понадобится программа последовательной консоли. Putty - хороший вариант, поскольку он предоставляет опции для SSH и telnet, а также обеспечивает простую последовательную связь, как мы будем делать здесь. putty.org. После того, как вы его установили, откройте его и выберите «Последовательный» в разделе «Тип подключения». Вам нужно будет ввести то же имя последовательного порта, которое вы ввели для esptool выше, а затем скорость передачи 115200 бод для скорости. Идите вперед и нажмите «Открыть». А есть Python!
Теперь нам нужно загрузить и запустить наш пример кода. Для этого перейдите в папку, в которую вы ранее сохранили примеры SensorBoardPython. Нам понадобится потрясающий пакет AMP от Adafruit. Вы можете установить это с помощью:
pip install adafruit-ampy = 0.6.3
Получив его, используйте ampy для загрузки примера акселерометра на плату:
ampy -p COM4 поставить Accelerometer.py
(меняя порт соответственно, конечно). Теперь сбросьте вашу доску с помощью кнопки сброса. На этом этапе мы вернемся к Putty и в командной строке >>> введите
импортный акселерометр
Альт! Теперь вы запускаете код accelerometer.py на плате датчиков! Код будет работать 20 секунд, затем остановится. Обратите внимание, что во время выполнения кода акселерометра синий светодиод на плате мигает. Те, кто более знаком с Python, заметят, что это делается без многопоточности и без delay (). Это связано с использованием библиотеки Python asyncio, которая предоставляет отличные методы для одновременного выполнения задач и очень полезна на встроенных платформах, таких как ESP32. Если вы не знакомы с этим, стоит проверить; здесь есть отличный учебник: https://github.com/peterhinch/micropython-async/b… (но будьте осторожны, это немного пьянящее).
Шаг 3: MicroPython через последовательный порт
Вернемся к задаче! Когда код акселерометра остановится, вы снова увидите Python >>>. Теперь мы можем программировать в интерактивном режиме, используя Sensor Board в качестве интерпретатора Python. Для этого введите
>> х = 10
>> y = 11
>> х + у
21
Хотя это самый простой из примеров, мы можем легко начать создавать более сложный код, используя библиотеки Complex Arts в качестве отправной точки. Это позволяет вам выполнять измерения положения и движения «на лету» с контролем в реальном времени. С контактами GPIO, доступными на плате датчиков, вы можете легко подключать сервоприводы, фонари, датчики, двигатели или любое количество физических устройств, используя их либо в интерактивном режиме, либо через программу Python. Повеселись!
Для получения дополнительной информации ознакомьтесь с другими ресурсами:
complexarts.net/home/
complexarts.net/docs/bno085/
Рекомендуемые:
Модель железной дороги, управляемая сенсорной панелью ноутбука - Интерфейс PS / 2 Arduino: 14 шагов
Модель железной дороги, управляемая сенсорной панелью ноутбука | Интерфейс PS / 2 Arduino: сенсорная панель ноутбука - одно из лучших устройств для использования в качестве входа для проектов микроконтроллеров. Итак, сегодня давайте реализуем это устройство с микроконтроллером Arduino для управления модельной железной дорогой. Используя тачпад PS / 2, мы сможем управлять 3 т
ESP12 Простая пайка на стандартной печатной плате: 3 шага
ESP12 Простая пайка на стандартной печатной плате: Здравствуйте, китайские ESP12 очень дешевы, но это кошмар для тестирования на макетной плате или пайки на печатной плате из-за их необычно 2-миллиметрового шага между ногами. Я создал небольшой 3D-печатный адаптер и после нескольких попыток нашел очень простое и надежное решение
Фазз для акустической гитары на макетной плате: 3 шага
Fuzz для акустической гитары на макетной плате: Внимание! Этот проект был разработан для использования с акустической гитарой, поэтому обратите внимание, что он может не подходить с электрической гитарой. О проекте: Этот простой проект прототипной платы Fuzz состоит из действительно простой, но эффективной схемы. Он посвящен тому, чтобы добавить так
Использование сенсорной платы Complex Arts для управления чистыми данными по Wi-Fi: 4 шага (с изображениями)
Использование сенсорной платы Complex Arts для управления чистыми данными по Wi-Fi: Вы когда-нибудь хотели поэкспериментировать с управлением жестами? Заставить вещи сдвинуться с места мановением руки? Управляйте музыкой поворотом запястья? Это руководство покажет вам, как это сделать! Плата датчиков Complex Arts (complexarts.net) - это универсальный микроконтроллер
Очистка алюминиевой клавиатуры Apple . или любой другой мягкой сенсорной клавиатуры: 5 шагов
Очистка алюминиевой клавиатуры Apple … или любой другой клавиатуры с мягким прикосновением. Как бы мы с вами ни старались содержать в чистоте наши алюминиевые клавиатуры Apple, они становятся грязными через год или около того. Эта инструкция поможет вам очистить ее. Будьте осторожны, потому что я не несу ответственности, если ваша клавиатура сломается во время этого … ОТСАСЫВАЕТ ЧЕРТ