Programovanie Arduino (a derivátov) bez Arduino IDE #5

01.05 | 16:07 | Richard | Richard

Dnes si stručne povieme, o malom rozdiele pri programovaní Raspbery Pi Pico (vs dosky Arduino).

Opis dosky

Raspberry Pi Pico je lacná vývojová doska s mikrokontrolérom od Raspberry Pi Foundation; má vlastný SoC (System on Chip je integrovaný obvod, ktorý integruje väčšinu alebo všetky komponenty počítača alebo iného elektronického systému, t.j. CPU, pamäť, vstupné/výstupné zariadenia, modem, GPU) RP2040, ktorý je vybavený procesorom Arm Cortex M0+ pracujúcim na frekvencii až 133 MHz, 264 KB pamäte SRAM a 2 MB pamäte Flash.

Na tomto SoC RP2040 je postavených viac vývojových dosiek, napríklad:

Ako funguje pripojenie dosiek Arduino k PC?

Ak pripojíme "klasické" arduino k PC, tak sa reprezentuje ako sériové zariadenie (/dev/ttyACM*), pretože majú na sebe čip - UART (univerzálny asynchrónny prijímač/vysielač), ktorý mu umožňuje komunikovať cez sériové rozhranie.
Je to buď samostatný čip (napr. ATmega16U2 v prípade UNO), alebo je to priamo vlastnosť hlavného procesora (napr. ATmega32U4 v prípade Leonardo, ATmega 2560 v prípade Mega, podobne aj ESP32, ESP8266).

… a ako je to v prípade RP2040?

RP2040 sa správa ako "mass storage", teda nejaké pripojiteľné úložisko. A teda je možné týmto spôsobom interagovať so súbormi.

Dosky s RP2040, napríklad spomínané Pico majú tlačidlo "boot sel". Po jeho podržaní a privedení napájania, sa zariadenie prepne do bootovacieho režimu z úložiska USB. Ako bolo spomínané, v tomto režime sa zariadenie Pico správa ako veľkokapacitné pamäťové zariadenie USB, ktoré vám umožní prekopírovať na úložisko firmvér.

Po úspešnom načítaní firmvéru sa zariadenie reštartuje do nového firmvéru a bude fungovať ako sériové zariadenie. To znamená, že ho možno pripojiť k počítaču cez USB a komunikovať s počítačom prostredníctvom sériového pripojenia, tak, ako to poznáme z dosiek Arduino a podobných.

Jedným z populárnych firmvérov je Raspberry Pi Pico core, ktorý možno nainštalovať do prostredia Arduino IDE a naprogramovať RP2040.
K dispozícii sú aj ďalšie vlastné firmvéry, ktoré pridávajú RP2040 kompatibilitu s Arduinom, napr.:


Len dodám, že skompilovaný softvér nie je potrebné ručne kopírovať na úložisko, o všetko sa postará arduino-cli.

Pár, t.j. dva obrázky

Obr. 0: Pripojené Raspberry Pi Pico
Obr. 1: Nahratý softvér (súbor NEW.UF2)

Obsah ďalšej časti

V budúcej časti si ukážeme, ako nahradiť arduinovský Serial Monitor a Serial Plotter.