Каталог
|
Знайомство з Raspberry Pi Pico2021-03-14 Все статьи →ВступВ цьому уроці ми підключимо Raspberry Pi Pico до вашого компьютера та дізнаємось як запрограмувати його за допомогою MicroPython. Raspberry Pi Pico це бюджетна плата з потужним мікроконтролером на борту, вона значно перевищє по потужності звичайні плати Ардуіно, але майже наближається до них по вартості. Мікроконтролер це маленький комп'ютер, але з невеликою кількістю пам’яті та обмеженими можливостями підключення периферії (наприклад клавіатури або монітора). Raspberry Pi Pico має GPIO виводи, так само як і інші Raspberry Pi комп’ютери, що дає можливість використовувати його для управління іншими пристроями та отримання даних від датчиків. МетаПочнемо з простого - підключимо Raspberry Pi Pico до компьютера, встановимо середовище розробки Thonny Python IDE та напишемо просту програмку на мові MicroPython, яка буде блимати світлодіодом, який встановлений на платі. Після цього розглянемо ще декілька простих прикладів по роботі з ШІМ та аналоговими входами. Після цьго уроку у вас буде все готово для подальшого заглиблення в роботу з Raspberry Pi Pico та створення більш складних проектів. Що нам знадобиться:
Чому ми навчимося:
Зустрчайте Raspberry Pi PicoОтже почнемо. Якщо ваша плата Raspberry Pi Pico ще немає запаяних конекторів саме час їх запаяти. Після цього встановіть вашу Raspberry Pi Pico на макетну плату, так, щоб два ряди конекторів були по різні сторони від центральної канавки макетної плати:
Тепер підключіть кабель мікро-USB до Raspberry Pi Pico
А ось ознайомча діаграма усіх виводів Raspberry Pi Pico.
Встановлення ThonnyНа цьому кроці ми встановимо Thonny, або, якщо він вже встановлений впевнимось, що ви маєте останню версію. Після цього ми підключимо Raspberry Pi Pico та запустимо простий коді на Python за допомогою командного рядка. Thonny на Raspberry Pi Якщо в якості компьютера ви використовуєте Raspberry Pi, то Thonny вже встановлений на Raspberry Pi OS, але можливо вам знадобиться оновитися до останньої версії. Відкрийте термінал (або натиснувши на відповідну іконку у верхньому лівому кутку екрану, або натиснувши Ctrl+Alt+T на клавіатурі). В терміналі введіть наступну команду для оновлення вашої операційної системи та Thonny
Thonny на інших операційних системах Для інших операційних систем (Windows, macOS та Linux) відкрийте ваш улюблений браузер та перейдіть за адресою thonny.org. В правому верхньому кутку ви побачите посилання для скачування, виберіть посилання для вашої операційної системи, скачайте та запустіть інсталяційний файл Thonny.
Після встановлення запустіть редактор Thonny, він має виглядати приблизно так:
Тепер можна спробувати написати стандартний код на Python. Вбийте в головному вікні наступну команду і натисніть кнопку Run (Thonny запропонує зберегти файл).
Тепер ми готові перейти до наступного кроку і підключитись до нашої Raspberry Pi Pico Встановимо прошивку MicroPython в Raspberry Pi PicoЯкщо раніше ви ніколи не використовували MicroPython на вашій Raspberry Pi Pico вам знадобиться встановити в неї прошивку MicroPython. Знайдіть кнопку BOOTSEL на вашій Raspberry Pi Pico
Натисніть кнопку BOOTSEL та утримуйте її доки підключаєте інший кінець кабелю мікро-USB до вашого компьютера. На картинці знизу зображено як підключатись до Raspberry Pi, якщо у вас звичайний комп'ютер просто встроміть кабель у вільний USB роз'єм.
У такий спосіб ви переведете ваш Raspberry Pi Pico у режим флешки. В нижньому правому кутку вікна Thonny ви можете бачити версію Python, яка наразі використовується.
Натисніть на неї і виберіть MicroPython (Raspberry Pi Pico):
Якщо ви не бачите цієї опції перевірте чи підключили ви вашу Raspberry Pi Pico до цього компьютера. Після вибору версії MicroPython ви побачите діалогове вікно, яке запропонує вам встановити останню версію прошивки MicroPython на вашу Raspberry Pi Pico.
Натисніть кнопку Install після чого почнеться встановлення прошивки на вашу Raspberry Pi Pico. В подальшому відкрити це діалогове вікно можливо, якщо натиснути на MicroPython (Raspberry Pi Pico) в рядку статусу і обрати 'Configure interpreter …'.
Відкриється вікно з налаштуваннями інтерпретатора:
Натисніть на Install or update firmware
Натисніть Install
Дочекайтеся доки встановлення завершиться і натисніть Close. Вам не потрібно встановлювати прошивку при кожному використанні Raspberry Pi Pico. Наступного разу просто підключіть її до вашого комп'ютера без необхідності затискання BOOTSEL. Використання оболонки
На цьому кроці ми будемо використовувати командний рядок Thonny для запуску простого коду написанному на мові Python на нашій Raspberry Pi Pico.
Наразі Thonny готовий для комунікації з вашою Raspberry Pi Pico за допомогою REPL (read–eval–print loop), який дозволяє друкувати команди Python в командному рядку і бачити результат Спробуйте ввести наступну команду:
і натисніть Enter, ви побачите результат роботи команди:
MicroPython має апаратно-залежні модулі, такі як machine, які можуть бути використані для програмування вашої Raspberry Pi Pico. Якщо встановити значення цього виводу в 1, то світлодіод загориться. Спробуйте набрати наступний код, не забувайте натискати Enter після кожного рядка
Ви побачите, що світлодіод загорівся
Встановіть значення у 0 і світлодіод погасне:
Спробуйте самостійно ще раз увімкнути, а потім вимкнути його. Порада: ви можете використовувати стрілки на клавіатурі для швидкого доступу до попередніх команд Блимання світлодіодом
Командний рядок зручний для перевірки або тестування нових команд, але для більш складних програм краще зберігати програму у файлі. Thonny дозволяє зберігати і запускати програми MicroPython напряму з Raspberry Pi Pico. Перейдіть у головну панель редактора Thonny та вбийте наступний код, який буде переключати світлодіод:
Натисніть кнопку Run для запуску вашого коду. Thonny запитає вас чи хочете ви зберегти файл на ваш комп'ютер, або на MicroPython пристрій. Виберіть пристрій MicroPython.
Введіть blink.py в якості імені файлу. Порада: вам необхідно вказувати .py в якості розширення файлу, щоб Thonny розумів, що це програма на мові Python. Thonny збереже вашу програму на Raspberry Pi Pico і запустить її. Тепер ви можете бачити, що світлодіод вмикається і вимикається кожного разу, як ви натискаєте кнопку Run. Підемо далі - будемо використовувати модуль Timer для запуску таймеру, який буде запускати функцію через рівні інтервали. Обновіть код вашої програми наступним чином:
Натисніть Run і ваша програма буде по черзі вмикати і вимикати світлодіод аж доки ви не натиснете кнопку Stop Використання цифрових входів та виходівТепер, коли ми вивчили базові речи, давайте спробуємо контролювати зовнішній світлодіод вашою Raspberry Pi Pico та отримувати вхідні дані від кнопки. Використовуйте резистор спротивом від 50 до 330 Ом, світлодіод та пару перемичок мама-мама для підключення до вашої Raspberry Pi Pico, як показано на малюнку:
На цьому прикладі світлодіод підключений до виводу 15. Якщо ви хочете використати інший вивід подивіться його номер на малюнку з діаграмою всіх виводів Raspberry Pi Pico на початку цієї статті. Використаємо той самий код, який блимав світлодіодом розташованим на платі, але змінимо номер виводу на 15:
Запустіть вашу програму і світлодіод почне блимати. Якщо ні - перевірте схему підключення, щоб впевнитись, що все правильно. Встановіть кнопку на вашу макетну плату як зазначено на схемі:
Кнопка підключена до виводу 14 і до напруги 3.3В на вашій Raspberry Pi Pico. Це означає, що коли ми будемо налаштовувати цей вивід, нам необхідно сказати MicroPython, що він буде працювати на вхід і буде притягнутий до землі (pull down). Створіть новий файл і додайте в нього наступний код:
Запустіть свій код кнопокю Run, і тепер, якщо ви натиснете на кнопку стан світлодіоду зміниться, а якщо ви затиснете кнопку світлодіод почне блимати. Управління яскравістю світлодіоду за допомогою ШІМШІМ або широтно-імпульсна модуляція це спосіб емулювати аналогову поведінку на цифрових пристроях, якими є світлодіоди. Це означає, що замість простого вмикання і вимикання світлодіоду ми можемо управляти його яскравістю. Для цього прикладу ми будемо використовувати схему з попереднього кроку. Відкрийте новий файл в Thonny і додайте в нього наступний код:
Збережіть та запустіть файл. Ви побачите, що світлодіод плавно розгоряється, а потім гасне і так по колу. Частота (pwm.freq) вказує Raspberry Pi Pico як часто треба вмикати і вимикати живлення на світлодіоді, а робочий цикл вказує, як довго світлодіод має бути в тому чи іншому стані. Для Raspberry Pi Pico MicroPython, це значення може коливатись від 0 до 65025. 65025 означає 100% часу, таким чином світлодіод буде горіти. Значення 32512 означає, що живлення буде подаватись приблизно половину цього часу. Ви можете погратися зі значеннями pwm.freq() та pwm.duty_u16, щоб міняти яскравість і темп горіння світлодіоду. Управління світлодіодом за допомогою аналогового вводуВаша Raspberry Pi Pico має вхідні виводи, які можуть сприймати аналогові сигнали. Це означає, що замість отримання на вході просто 0 або 1 ви можете зчитувати значення між ними. Потенціометр добре підійде в якості аналогового пристрою. Замість кнопки підключіть потенціометр як показано на діаграмі:
Спочатку ми прочитаємо значення потенціометру. Додайте цей код в новий файл Thonny і запустіть його:
Покрутіть ручкою потенціометра, щоб побачити його мінімальні та максимальні показники. Вони мають бути приблизно біля 0 та 65025 відповідно. Тепер ми можем використовувати ці значення щоб міняти робочий цикл ШІМ для нашого світлодіоду. Змініть програму як зазначено нижче. Коли ви запустите її покрутіть потенціометр, щоб змінити яскравість світлодіоду.
Підключимо живлення до нашого Raspberry Pi PicoЯкщо ви хочете запускати ваш Raspberry Pi Pico без підключення до комп'ютеру необхідно використовувати блок живлення USB. Безпечна напруга становить від 1.8 до 5.5В. Щоб автоматично запустити програму на MicroPython збережіть її на вашій Raspberry Pi Pico у файл з ім'ям main.py
В редакторі Thonny натисніть меню File та Save. У вікні, яке з'явиться виберіть 'MicroPython device'. Введіть ім'я main.py Що далі?Спробуйте підключити інші компоненти до вашої Raspberry Pi Pico, такі як динамік, датчик світла або контролер мотору.
Благодарим Вас за обращение! Ваш отзыв появится после модерации администратором.
Тарас
13.10.2022 16:25:57
Драйвер под COM port в W7 волучилось поставить, но Tonny не видит Pico
Taras
16.09.2022 18:59:17
Драйвер под COM port в W7 получилось поставить с прошивкой под Micro Python - в системе обнаружилось устройство CDC и zabig поставил дрова под Pico
Вадим
10.02.2022 09:10:05
Исправлюсь,все же смогут владельцы новой винды пользоватся,надо(кто бы мог подумать) установить драйвер с помощью zadig и после,в ней же,установить из списка драйвер board cdc
Ivan
30.12.2021 15:33:52
Вы с начало скажите что нужно подключить библиотеку
Вадим
25.05.2021 23:10:00
автор забыл добавить что владельцы win7 и win8(на 10 не проверял) не смогут юзать микропитон,только circuit и то после установки адафрюитовских драйверов ,я так понял полноценно пользоватся могут только линуксоиды
Андрей
28.03.2021 22:44:04
Проверил осциллографом скважность ШИМ сигнала. При значении 65025 ШИМ не достигает 100% заполненности.При приближении значения к 65535, скважность увеличивается, а при достижении - ШИМ превращается в постоянное напряжение (скважность - 100%).Так что, у Pico полноценное 16 битное разрешение ШИМ сигнала.Другое дело, что яркость светодиода, что при 65025, что при 65535 на глаз незаметна.
admin
23.03.2021 18:53:09
65025 тому що рахується і 0. Тобто не 256*256, а 255*255
Андрей
20.03.2021 01:43:33
Уже не на первом ресурсе натыкаюсь, но объяснения так и не нашел. Почему 65025? Откуда взялось это число?16 бит = 65535.15 бит = 32767.
Константин
17.03.2021 10:55:22
Гарна стаття
Сергей
16.03.2021 14:57:19
Статья очень полезная для знакомства с Raspberry Pi Pico. Можно точно также оформить статью для Visual Studio для языка Си?
|