Ардуино

Учебное пособие по Arduino с Python для начинающих

Учебное пособие по Arduino с Python для начинающих

Когда вы начали играть с платами Arduino, стандартный язык программирования предоставляется Arduino. Этот язык чрезвычайно полезен для начала работы и даже может использоваться для реального использования. Однако люди, которые использовали его некоторое время, отмечают несколько ограничений. Возможно, вы уже привыкли к программированию на Python. По этой причине разработчики изобрели Micropython.

С Micropython у вас есть все основы Python с ограничениями из-за оборудования, на котором вы, наконец, запускаете его. В этой статье эти ограничения не обсуждаются. Надеюсь, у вас есть четкое представление о том, на что способен микроконтроллер. Скорее всего, вы обнаружите, что он может сделать гораздо больше, чем вы представляли до того, как начали.

Некоторые решения

Есть множество способов начать программировать Arduino с использованием Python. Перед тем, как начать, вы хотите подумать, готовите ли вы новую программу Arduino или хотите поговорить с ней. Есть несколько библиотек, которые создают новые программы Arduino, минуя стандартную систему программирования, которую они предоставляют.

У вас есть доски, на которых уже запущен Micropython; вы можете найти их на их соответствующих домашних страницах.

Вы можете захотеть создать программу Python, которая общается со стандартным микроконтроллером. Если да, то у вас есть несколько интерфейсных библиотек для Python. Известными из них являются Micropython и CircuitPython; это готовые дистрибутивы для работы на специальных платах. Вы можете скомпилировать для других досок, если у вас есть навыки.

Мю-редактор для micropython

Простой в использовании редактор - mu-editor. Этот редактор подготовлен так, что он обнаруживает вашу плату на последовательном порту, если он у вас есть. Если у вас его нет, вы можете начать работать с обычным Python. Чтобы выбрать, измените режим в левом верхнем углу. Стандартный Python работает, и вы можете привыкнуть к редактору.

Этот редактор имеет несколько функций IDE, таких как завершение кода, выделение, и вы можете запустить REPL. Все эти функции работают даже при прямом подключении к плате. Чтобы установить редактор, вы можете найти его в репозитории вашего дистрибутива.

$ sudo apt install micropython mu-editor mu-editor-doc

Это все инструменты, необходимые для работы с платой, на которой уже есть Micropython. Один простой код, который вы можете попробовать, - это обычное мигание светодиода на плате. Чтобы добраться до оборудования, например светодиода, нужно импортировать библиотеку.

из pyb import LED
время импорта
состояние = Ложь;
в то время как True:
время.спать (0.5)
если состояние == Ложь:
Светодиод (горит);
состояние = Истина;
еще:
Светодиод (выключен);
состояние = Ложь;

Используйте приведенный выше код, чтобы попробовать новую доску. Обратите внимание, что "pyb" будет отличаться от платы к доске, Adafruit использует машину. Найдите время, чтобы узнать ценности ваших досок из документации.

REPL - чтение, оценка, печать, цикл

При использовании MicroPython или любого Python доступен REPL. Это отличный способ протестировать короткие фрагменты кода. В этом случае вы можете использовать его, чтобы узнать, какие модули доступны. Функция help () отлично помогает понять основы того, что у вас есть.

Когда вы запускаете help () без параметров, он дает вам список опций. После этого он интерактивен; введите то, о чем вам нужно спросить, и руководство по его использованию.

Используйте REPL, чтобы узнать, какие библиотеки поддерживает плата. Это немного более сложный метод обучения, но вы привыкаете использовать встроенную документацию. Чтобы по-настоящему учиться, вам нужно взять несколько руководств и построить на их основе что-то еще.

Платы под управлением Micropython

Самый простой способ начать программировать для Arduino с использованием Python - купить готовую для этого плату. Платы, существующие на рынке, впечатляют и поставляются многими поставщиками. Основные библиотеки - CircuitPython и Micropython.

Впечатляющая линейка плат от Adafruit называется Circuit Playground. Эти доски круглые, что странно. Что еще более важно, у них на борту 10 неопикселей, и это только визуальная часть. На плате есть несколько датчиков, также есть две кнопки и ползунковый переключатель. Контакты ввода / вывода предназначены для использования зажимов типа «крокодил», но при этом доступны как емкостные сенсорные кнопки.

У Seedstudio также есть ряд плат, поддерживающих CircuitPython. Они бывают от очень маленьких до очень способных. WiPy 2.0 - это крошечная плата, которая готова к работе, хотя может пригодиться комплект антенны. На плате есть модуль Wi-Fi для ESP32, один светодиод RGB и переключатель сброса. Вы получаете гораздо меньше оборудования, но его размер составляет 42 мм x 20 мм x 3.5мм, а у вас еще много контактов на плате.

Простые проекты для начала

После того, как вы сделали свою программу мигания, вы наверняка захотите попробовать что-нибудь посложнее. Убедитесь, что у вас есть что-то интересное, что сложно, но разрешимо. Вот некоторые предложения.

Сделайте программу, которая будет мигать одним светом с постоянной скоростью. Заодно сделать кнопку включения и выключения другой лампы. Вы быстро увидите ограничения delay ()!

Сделайте MIDI-контроллер.

Сделайте простую систему сигнализации, используя инфракрасный датчик и несколько NeoPixels.

Заключение

Лучший способ начать работу с MicroPython - получить приличную плату, которая уже поддерживает MicroPython или CircuitPython, и начать опробовать свои идеи. Поскольку идея состоит в том, чтобы управлять другими вещами, поищите пакет или комплект, содержащий несколько датчиков и один или два дисплея.

Удачного взлома.

Лучшие игры Oculus App Lab
Если вы владелец гарнитуры Oculus, вы должны знать о загрузке неопубликованных приложений. Боковая загрузка - это процесс установки на гарнитуру содер...
10 лучших игр для Ubuntu
Платформа Windows была одной из доминирующих платформ для игр из-за огромного процента игр, которые разрабатываются сегодня с встроенной поддержкой Wi...
5 лучших аркад для Linux
В настоящее время компьютеры - это серьезные машины, используемые для игр. Если вы не можете получить новый рекорд, вы поймете, о чем я. В этом посте ...