Raspberry Pi Pico-Микроконтроллер с чипом RP2040 , Flash 1мб и с отсутствием EEPROMКак загрузить MicroPython/CircuitPython на нее:1.Зажмите кнопку BOOTSEL на PicoBOOTSEL2.Вставьте провод в ПК3.Вставьте провод в плату4.Отпустите кнопкуPico откроется как диск и будет ждать пока вы скинете на нее .uf2 файлcсылки для скачивания интерпретаторов .uf2MicroPython (легок в использовании , отсутвуют библиотеки для работы с встроенным USB):micropython.orgMicroPython - Python for microcontrollersCircuitPython(чуть труднее, написан известным AdaFruit)circuitpython.orgCircuitPython - Pico DownloadCкачиваете .uf2 (любой)После просто перекидываете его в диск RPI-PICO или как он там у вас высветился :)Pico готова , а теперь установим IDE Thonny для работы с платойДумаю вы справитесь с установкой программы ,там ничего сложногоТеперь нужно настроить IDE для работы с платойЗаходим в Инструменты>ПараметрыВыбирайте плату и .uf2 который вы устновилиу меня это CircuitPythonЕсли у вас MicroPython то выбирайте 6-й пункт (снизу вверх)Все готово! Создаем свою первую программу "Blink"MicroPython:from machine import Pin import time led = Pin(25, Pin.OUT) while True: led.toggle() time.sleep(1)СircuitPython:Выберите code.pyimport time import board import digitalio led = digitalio.DigitalInOut(board.LED) led.direction = digitalio.Direction.OUTPUT while True: led.value = True time.sleep(0.5) led.value = False time.sleep(0.5)Запуск программыCветодиод на плате должен заморгатьЕсли что-то не работает , пишите коды ошибок в комментарии :)Теперь чуть более сложный проект (Работает только с CircuitPython)"Управление треком через внешнюю кнопку"Для начала скачайте библиотеки Если лень скачивать: то внизу есть готовый проект со всеми БиблиотекамиКликаете и скачиваете ееПосле переходите к папке C:\Users\{Пользователь}\AppData\Roaming\Thonny\plugins\Python310\site-packagesИщете тут adafruit_hidи скопируйте ее в Picoasyncio в частности уже есть в папке site-packagesно если ее нет то вот ссылкаmega.nz67.9 KB folder on MEGAА также нужен adafruit_ticksон тоже естьmega.nz5.6 KB file on MEGAСкачиваем и кидаем их в папку lib платысамое сложное завершено вот код:import usb_hid from adafruit_hid.consumer_control import ConsumerControl from adafruit_hid.consumer_control_code import ConsumerControlCode import board from digitalio import DigitalInOut, Direction, Pull import digitalio import asyncio b1 = DigitalInOut(board.GP5) #любой пин кнопки к GP5 другой к ближайшему GND b1.direction = Direction.INPUT b1.pull = Pull.UP cc = ConsumerControl(usb_hid.devices) async def main(): while True: if not b1.value: print("Следующий трек!!") cc.send(ConsumerControlCode.SCAN_NEXT_TRACK) await asyncio.sleep(0.29) #Ждем когда кнопка разожмется await asyncio.sleep(0.05) asyncio.run(main())Припаиваем кнопку к GP5 и к ближайшему GND знаю что я тупой и припаял коряво но главное работает )Работа кода:Видео сжал DTFВсе работаетГотовый "Проект" cо всеми библиотеками и кодом :mega.nz81.1 KB folder on MEGAНадеюсь мой гайд кому-то помог , если есть желание плюсните статью :)СсылкиФайлы:mega.nz67.9 KB folder on MEGAmega.nz81.1 KB folder on MEGAmega.nz5.6 KB file on MEGAGitHub: (там пока-что ничего дельного нет)github.comitzAxel - Overview
Комментарий недоступен
Что ?)
Можно комент ?)
Нет
Медиа кнопки которые есть на клавиатуре – сделал неудобно на каком-то проводном пульте без корпуса. Молодец.
не на всех есть медиа клавиши , и это "прототип" или "демо" , а также можно сделать неплохой макропад , купив переключатели и "Плейт"
Комментарий недоступен