Оглавление:
- Шаг 1. Что нужно для начала
- Шаг 2. Убедитесь, что CircuitPython установлен
- Шаг 3. Использование редактора Mu для вашей первой программы
- Шаг 4: ваш второй сценарий - мигание
- Шаг 5: Обновление вашей версии CircuitPython
- Шаг 6: REPL
- Шаг 7: Обнимаем ноги
- Шаг 8. Индикатор состояния CircuitPython RGB - поможет вам найти ошибки
- Шаг 9: Взгляд вперед - к вам
Видео: CircuitPython с Itsybitsy M4 Express 1: Настройка: 9 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:51
Новичок в программировании? Используете только Scratch и хотите перейти на текстовый язык, который обеспечивает легкий доступ к физическим вычислениям со светодиодами, переключателями, дисплеями и датчиками? Тогда это может быть для вас.
Я заметил, что этот сайт содержит много инструкций по кодированию с Arduinos с использованием Arduino IDE, но очень мало о Python. Я преподаю кодирование с 1968 года. (Тогда мы называли это программированием и использовали FORTRAN IV с картами Холлерита для ввода!) С тех пор я использовал много разных языков со студентами (от 11 лет до взрослых), включая LISP, Pascal и многие другие. разные версии на BASIC.
Совсем недавно многие школы в Великобритании начали использовать Python на своих уроках, поскольку ученики переходят от «блочного» кодирования с помощью Scratch или аналогичного к текстовым операторам. Python, вероятно, является более легким шагом вперед, чем использование Arduino IDE. Код CircuitPython можно выполнить, просто сохранив код на плате разработки, как если бы это был USB-накопитель. Я успешно использовал Python для физических вычислений с детьми от 8 до 11 лет в клубе программирования моей внучки в начальной школе.
Я решил использовать Itsybitsy M4 Express от Adafruit для этих инструкций по следующим причинам:
- Недорого - до 15 долларов.
- Простота настройки и программирования с помощью CircuitPython (версия Python, идеально подходящая для новичков в программировании)
- Контакты цифровых входов / выходов - играть с Blinkies очень весело
- Аналоговые выводы - 12-битный АЦП и ЦАП - высокая точность
- Встроенные красные светодиоды и светодиоды RGB DotStar
- Управляет Neopixels напрямую
- Поддержка I2C и SPI - для датчиков и дисплеев
- Широкий выбор драйверов в обширной библиотеке
- Быстрый и мощный - сверхбыстрый процессор ATSAMD51 Cortex M4, работающий на частоте 120 МГц
- Достаточно памяти - 2 МБ флэш-памяти SPI для кода CircuitPython или файлов данных
- Отличная поддержка от Adafruit с полной документацией, руководствами и справочным форумом в Интернете.
- Нужен только старый ноутбук или компьютер - без специального монитора, клавиатуры, блока питания или мыши.
- Пользователь может перейти на Arduino IDE на той же плате, как только приобретет опыт работы с Python.
В этом первом руководстве объясняется, как настроить доску и запустить ваши первые скрипты.
Шаг 1. Что нужно для начала
Аппаратное обеспечение:
- Ицыбицы М4 Экспресс (adafruit.com, Pimoroni.com)
- кабель microUSB
- Компьютер - подойдет старый ноутбук
- Паяльник
- Припой
- Макетная плата
- Полоса заголовка с внутренней резьбой (необязательно)
Программное обеспечение:
Редактор Mu
Загрузите редактор Mu с
Установите его на свой компьютер. Очень просто с полными инструкциями на сайте.
Шаг 2. Убедитесь, что CircuitPython установлен
Откройте проводник на вашем компьютере.
Подключите меньший конец USB-кабеля к разъему на Itsybity.
Другой конец кабеля подключите к USB-порту компьютера.
Вы должны увидеть новый диск под названием CIRCUITPY. (Если нет, перейдите на страницу ОБНОВЛЕНИЯ.)
Дважды щелкните boot_out, и вы должны увидеть такое сообщение:
Adafruit CircuitPython 3.1.1 от 02.11.2018; Adafruit ItsyBitsy M4 Express с samd51g19
Это показывает, что у вас более старая версия CircuitPython, так как в настоящее время мы работаем с версией 4. На данный момент это будет нормально, мы обновим версию позже. Adafruit часто улучшает CircuitPython и публикует обновления. Эти обновления очень легко установить.
Перейдите в папку с документами и создайте в ней новую папку под названием Code-with-Mu.
Запустите редактор Mu
Шаг 3. Использование редактора Mu для вашей первой программы
Щелкните значок Serial в верхней части редактора. Это должно открыть окно REPL в нижней части экрана. В нижнем левом углу должно быть написано Адафрут. Му обнаружил, что к компьютеру подключена плата CircuitPython.
Теперь мы можем написать нашу первую программу или сценарий. Щелкните мышью в верхнем окне и введите:
print ("Привет, мир!")
Щелкните значок «Сохранить». Выберите привод CIRCUITPY. Введите main.py в поле заголовка и нажмите кнопку «Сохранить».
Это очень важно. Ваш скрипт сохраняется в вашем Itsybity под именем main.py. Любой файл с таким именем немедленно запускается на плате. Вывод оператора печати появляется в нижнем окне REPL.
Отредактируйте строку программы, чтобы:
print ("\ nПривет, кодировщик!") и щелкните значок "Сохранить".
Попробуйте добавить несколько похожих операторов печати и запустите новый код.
Следите за своим Itsybitsey, пока вы загружаете скрипт. Мигающий зеленый DotStar переходит в КРАСНЫЙ цвет, пока сценарий сохраняется, и возвращается в ЗЕЛЁНЫЙ.
Сделаем ошибку, чтобы посмотреть, что из этого получится. Просто удалите последний символ кавычки и снова запустите скрипт. Редактор указывает ошибку, а вывод указывает тип ошибки - синтаксис - и номер строки - чтобы помочь вам исправить ошибку. DotStar указывает на неисправность изменением цвета. Подробнее об этом в следующем разделе.
Исправьте ошибку и снова запустите скрипт.
Теперь нам нужно сохранить наш скрипт в безопасном месте, чтобы мы могли использовать его позже.
Дважды щелкните вкладку над сценарием. Перейдите в папку с документами Code-with-Mu и сохраните там свой скрипт с полезным именем файла, например FirstProg.py. Обратите внимание, что имя файла и путь отображаются в нижней части редактора.
Шаг 4: ваш второй сценарий - мигание
Введите сценарий, сохраните его в CIRCUITPY как main.py и нажмите Да, чтобы заменить предыдущий main.py.
(Всегда используйте имя файла main.py для своего скрипта при сохранении на свой ItsyBitsy. CircuitPython затем немедленно запускает новый скрипт.)
Что делает сценарий:
- Импортирует библиотеки для имен контактов на плате, времени для управления задержками и управления цифровыми контактами,
- Устанавливает контакт 13 для вывода напряжения на красный светодиод на плате.
- Запускает бесконечный цикл для включения и выключения светодиода.
- Ожидает кратковременных задержек, чтобы светодиод замигал.
В сценарии есть множество комментариев, объясняющих, что происходит. Комментарии начинаются с символа «#». Они предназначены для использования людьми, чтобы напоминать вам о ваших мыслях в то время. У хороших скриптов много комментариев.
- Попробуйте изменить значения в операторах sleep ().
- Держите светодиод включенным вдвое дольше, чем он выключен.
- Что будет, если задержки очень короткие? (0,001 секунды)
Дважды щелкните вкладку над сценарием и сохраните с именем Blink.py в папку Code-with-Mu.
Шаг 5: Обновление вашей версии CircuitPython
Перейдите на страницу https://circuitpython.org/downloads в Интернете. Кликните по картинке Ицыбицкого М4 Экспресс (не М0 версии).
Нажмите фиолетовую кнопку, чтобы загрузить файл. UF2.
Запустите проводник и найдите файл. UF2.
Подключите свой Itsybitsy M4 Express к USB-порту и найдите его диск - CIRCUITPY
Дважды щелкните маленькую кнопку сброса, и имя файла должно измениться на ITSYM4BOOT из CIRCUITPY. Вам нужно сделать двойной щелчок довольно быстро.
Перетащите файл UF2 на диск ITSYM4BOOT. Файл UF2 будет скопирован на плату IBM4, а имя диска вернется в CIRCUITPY.
Выберите диск CIRCUITPY и дважды щелкните файл boot_out.
Вы можете прочитать номер новой версии, чтобы убедиться, что она обновлена.
Создайте новую папку на диске CIRCUITPY с именем lib. Нам это понадобится в следующих инструкциях для хранения драйверов для датчиков и дисплеев.
Перезапустите редактор Mu. Загрузите файл main.py с IBM4 и сохраните его обратно на IBM4. Красный светодиод должен начать мигать.
Если вы один раз щелкните кнопку сброса, он перезапустит загруженный скрипт main.py.
Шаг 6: REPL
Окно в нижней части редактора, которое включается и выключается с помощью значка Serial, - это гораздо больше, чем просто окно печати.
«Цикл чтения-оценки-печати (REPL), также называемый интерактивной оболочкой верхнего уровня или языковой оболочкой, представляет собой простую интерактивную среду компьютерного программирования, которая принимает вводимые пользователем данные (то есть отдельные выражения), оценивает их и возвращает результат. пользователю; программа, написанная в среде REPL, выполняется кусочно . (Google)
По сути, если вы напишете один оператор python в REPL, он выполнит его сразу. Давайте попробуем.
Щелкните мышью в окне REPL.
Во время выполнения сценария удерживайте клавишу и коснитесь (CTRL-C). Это останавливает ваш скрипт.
Нажмите любую клавишу, чтобы войти в REPL, и появится подсказка «>>>».
напечатайте печатным шрифтом (4 + 100)
Сразу возвращается ответ 104
Посмотрите на картинку и попробуйте несколько собственных. (Попробуйте +, -, *, /, // и%)
Попробуй это:
>> импортная доска
>> dir (доска)
['_class_', 'A0', 'A1', 'A2', 'A3', 'A4', 'A5', 'APA102_MOSI', 'APA102_SCK', 'D0', 'D1', 'D10', ' D11, D12, D13, D2, D3, D4, D5, D7, D9, I2C, MISO, MOSI, RX, 'SCK', 'SCL', 'SDA', 'SPI', 'TX', 'UART']
>>
Это список имен контактов, доступных на плате IBM4.
Чтобы вернуться в нормальное состояние с помощью мягкого перезапуска, просто введите CTRL-D и main.py перезапускается.
Отключение вашей доски
Всегда извлекайте диск CIRCUITPY перед отключением от компьютера. Никогда не вынимайте его во время передачи данных.
Шаг 7: Обнимаем ноги
Штыревые коллекторы слишком длинные для платы, поэтому отрежьте 2 из них до нужной длины.
Вставьте их в макет, поместите IBM4 сверху и припаяйте. Убедитесь, что доска правильно поднята! (Чип сверху)
Не размещайте мужские заголовки сверху. Я использую полосу из 5 женских заголовков сверху, чтобы можно было использовать все контакты. Используйте тиски, чтобы надежно удерживать полосу жатки рядом с точкой разреза. С помощью острой ножовки вырежьте центр отверстия - латунный соединитель выпадет, когда вы прорежете. Подпилите обрезанный край, чтобы получилась аккуратная поверхность - без бороздок.
Паять на штырьки несложно. Посмотрите курсы Arduino и Electronics, если вы никогда раньше не пользовались паяльником. Возможность пайки означает, что вы можете делать аккуратные долговечные версии ваших проектов на стрип-плате, а затем повторно использовать макетную плату.
Чтобы предотвратить перегрев платы, я предлагаю вам не паять одну сторону, а затем поднимать другую. Оставьте пробелы и заполните их позже. т.е. контакты 10, RX, 2, A3, RS, BAT, 9, MI …… и т. д.
Шаг 8. Индикатор состояния CircuitPython RGB - поможет вам найти ошибки
ItsyBitsy M4 Express и многие другие платы M0 и M4 имеют один светодиод NeoPixel или DotStar RGB на плате, который указывает состояние CircuitPython. Здесь он находится между контактом (C) и контактом A0.
Вот что означают цвета и мигание:
- устойчивый ЗЕЛЕНЫЙ: code.py (или code.txt, main.py или main.txt) работает
- мигающий ЗЕЛЕНЫЙ: code.py (и т. д.) завершен или не существует
- постоянно ЖЕЛТЫЙ при запуске: (4.0.0-alpha.5 и новее) CircuitPython ожидает сброса, чтобы указать, что он должен запускаться в безопасном режиме
- пульсирующий ЖЕЛТЫЙ: Цепь Python находится в безопасном режиме: произошел сбой и перезапущен
- горит БЕЛЫЙ: REPL работает
- горит СИНИЙ: boot.py запущен
Цвета с несколькими последующими вспышками указывают на исключение Python, а затем указывают номер строки ошибки. Цвет первой вспышки указывает на тип ошибки:
- ЗЕЛЕНЫЙ: IndentationError
- CYAN: SyntaxError
- БЕЛЫЙ: NameError
- ОРАНЖЕВЫЙ: OSError
- ФИОЛЕТОВЫЙ: ValueError
- ЖЕЛТЫЙ: другая ошибка
За ними следуют мигания, указывающие номер строки, включая значение разряда. БЕЛЫЕ вспышки - это разряды тысяч, СИНИЕ - разряды сотен, ЖЕЛТЫЕ - разряды десятков, а СИНИЙ - их место. Так, например, ошибка в строке 32 будет мигать ЖЕЛТЫМ три раза, а затем два раза ЦИАНОВЫМ. Нули обозначены очень длинным темным промежутком.
Их довольно сложно сосчитать. При разработке сценария всегда открывайте окно REPL, и там будут появляться сообщения об ошибках на английском языке.
Шаг 9: Взгляд вперед - к вам
Когда я запускал этот Instructable, я ожидал, что это будет первая серия, посвященная CircuitPython и физическим вычислениям. Мой план на следующий день - охватить базовый ввод и вывод арифметикой, светодиодами, переключателями, потенциометрами и операторами ввода. Он также будет охватывать методы цикла и списки (массивы).
Перед тем, как написать его, я прошу дать вам обратную связь, чтобы я мог адаптировать его к аудитории.
Вот что я хотел бы знать:
- Темп в порядке?
- Деталей слишком много, слишком мало или примерно так?
- Хотите несколько практических упражнений?
К тебе.
Рекомендуемые:
Настройка Raspberry Pi 4 через ноутбук / ПК с помощью кабеля Ethernet (без монитора и Wi-Fi): 8 шагов
Настройка Raspberry Pi 4 через ноутбук / ПК с помощью кабеля Ethernet (без монитора, без Wi-Fi): в этом случае мы будем работать с Raspberry Pi 4 Model-B с 1 ГБ оперативной памяти для настройки. Raspberry-Pi - это одноплатный компьютер, используемый для образовательных целей и проектов DIY с доступной стоимостью, требует источника питания 5V 3A. Операционные системы, как
Настройка ST Visual Develop с компилятором Cosmic STM8: 11 шагов
Настройка ST Visual Develop с компилятором Cosmic STM8: вот как я настраиваю интегрированную среду разработки (IDE) для программирования микроконтроллеров STM8 от ST Microelectronics (ST) с Windows 10. Я не утверждаю, что это правильный путь, но он работает хорошо. для меня. В этом руководстве это будет выглядеть как
Настройка внешнего Bluetooth-провайдера GPS для устройств Android: 8 шагов
Настройка внешнего поставщика Bluetooth GPS для устройств Android: в этом руководстве будет объяснено, как создать собственный внешний GPS с поддержкой Bluetooth для вашего телефона, разжечь все, всего за 10 долларов США. Список материалов: Bluetooth-модуль NEO 6M U-blox GPSHC-05 интерфейс с модулями низкого энергопотребления Blutooth Ardui
Настройка / установка MultiBoard: 5 шагов
Настройка / установка MultiBoard: MultiBoard - это программа, которую можно использовать для подключения нескольких клавиатур к компьютеру с Windows. А затем перепрограммируйте ввод этих клавиатур. Например, откройте приложение или запустите AutoHotkeyscript при нажатии определенной клавиши. Github: https: // g
Графика на дисплее SSD1306 I2C OLED 128x64 с CircuitPython с использованием Itsybitsy M4 Express: 13 шагов (с изображениями)
Графика на дисплее SSD1306 I2C OLED 128x64 с CircuitPython Использование Itsybitsy M4 Express: OLED-дисплей SSD1306 - это небольшой (0,96 дюйма), недорогой, широко доступный, I2C, монохромный графический дисплей с разрешением 128x64 пикселей, который легко подключается (всего 4 провода) к платам разработки микропроцессоров, таким как Raspberry Pi, Arduino или