Pojďme programovat elektroniku | Raspberry Pi

Programování elektroniky: Nejmenší ze všech britských malin Raspberry Pi Pico

  • Elektrokutilové dostali do nového roku nečekaný dárek
  • Rodina destiček se rozrostla o novou britskou malinu
  • Dnes si ji naprogramujeme v Pythonu a C/C++

Pokud jste ještě v prosinci loňského roku někomu řekli, že jste si koupili nové Raspberry Pi, každý ajťák okamžitě věděl, že máte na mysli malý a laciný linuxový mikropočítač ve formě základní desky s relativně výkonným armovým procesorem. Od letošního ledna to už neplatí.

Nadace Raspberry Pi totiž vyrukovala s nejnovější, nejmenší a také nejlevnější destičkou Pico, kterou na oficiálním českém e-shopu rpishop.cz seženete zhruba za stokorunu.

54321c48-4c0c-4e3d-ae11-334d07439bb6
Raspberry Pi Pico. Prototypovací lišty si budete muset připájet sami.

Výkonný armový procesor tentokrát nahradil drobný armový mikrokontroler, který můžete programovat v MicroPythonu a C/C++ (dokumentace Doxygen) podobným způsobem, jak jsme to v našem seriálu doposud dělali třeba s Wi-Fi čipy ESP8266/32 a populární prototypovací stavebnicí Arduino.

Dvoujádrový řídící čip RP2040

Raspberry Pi Pico pohání dvoujádrový čip RP2040 s taktem do 133 MHz, který si nadace sama navrhla. První dvě písmena jsou zkratkou Raspberry Pi a následující čísla značí architekturu, RAM a velikost integrovaného úložiště:

  • číslo 2 znamená, že má čip dvě jádra
  • číslo 0 znamená, že se jedná o architekturu ARM Cortex M0+
  • číslo 4 je zkratkou pro 264kB operační paměť SRAM
  • číslo 0 na úplném závěru znamená, že čip nemá vlastní úložiště. O to se totiž stará na destičce Pico sekundární obvod flashové paměti Winbond W25Q16 s kapacitou 2 MB na obvyklé sběrnici SPI.
16d56548-1e1a-4443-98ee-a09f16bdc20304a621b5-d559-4d30-b79a-2e3e2a4d64a0
Mikrokontroler RP2040 je rychlý, má dostatek RAM a také dvě jádra, takže můžete na každém z nich spustit jinou část programu a chytře rozdělit práci

Na drobné destičce se našlo místo ještě pro čip napěťového step-up/step-down měniče Richtek RT6150B, díky kterému ji můžete vedle standardního 5V MicroUSB konektoru napájet libovolným zdrojem stejnosměrného napětí v rozsahu 1,8 V až 5,5 V. Mohou to být třeba dvě tužkové baterie, 4,2V lithiový článek, malý solární panýlek, který nabídne dostatečný proud – prostě téměř cokoliv.

c3969b21-b6b9-4d7c-ad53-9cbc0a309ed2
Termosnímek za běhu programu, který čte údaje z externího I²C teploměru SHT3x

Součástí mnoha prototypovacích destiček je čip UART/USB převodníku, ten však v případě Raspberry Pi Pico není potřeba, mikrokontroler RP2040 totiž nativně podporuje rozhraní USB 1.1 a to i v režimu host, čili k destičce můžete připojit USB periferie a naprogramovat si třeba vstup z klávesnice.

26 multifunkčních GPIO

Každý kutil, který pracuje s hromadou nejrůznějších čidel a aktuátorů, obvykle zápasí s nedostatkem volných digitálních pinů. Drobná destička Pico jich nabízí rovnou 26 a to s 3,3V logikou. Vedle základních GPIO budete mít k dispozici ještě:

  • sběrnici I²C
  • sběrnici SPI
  • sériovou linku UART
  • 12bitový analogový vstup ADC
  • 16× generátor pulzně-šířkové modulace PWM
ce5685cd-1876-4930-a0ed-0bac54cc044d
Pinout desky Raspberry Pi Pico

Nejpokročilejší kutilové si nakonec mohou vyzkoušet nízkoúrovňové programování digitálních a velmi přesných signálů PIO (Programmable I/O) v jazyku symbolických adres třeba pro ovládání populárních RGB LED proužků, aniž by zatěžovali hlavní procesor mikrokontroleru. Pomocí PIO lze ale emulovat i mnohem složitější signály. Třeba VGA video. K dispozici jsou nakonec také časovače, DMA, obvod reálného času RTC a rozhraní SWD pro ladění za běhu.

Příklady ke všem zmíněným technologiím najdete na GitHubu

Chybí Wi-Fi a BT, už na nich ale pracuje Arduino

Raspberry Pi Pico bohužel nenabízí žádný obvod rádiové konektivity. Chybí jak Wi-Fi, tak Bluetooth/BLE a je to velká škoda, destička by totiž mohla přímo soupeřit s tolik oblíbenými stavebnicemi s Wi-Fi čipy ESP8266/32. Na stranu druhou, Pico je pouhý začátek mnohem širšího plánu a vlastní desky s RP2040 postupně chystají i další hráči včetně Arduina!

9227b212-d342-44d8-9dfa-d28860d271da ef14ae2b-27e9-403f-90f0-2aa2c1eb149e0a1f51bd-b217-4cec-bf7c-803e4442698d45d31fb4-2dc1-4d86-9cc0-701d509e35b5
Desky od ostatních výrobců:  Pimoroni Tiny 2040Adafruit Feather RP2040SparkFun Thing Plus - RP2040 a chystané Seedstudio RP2040 Wireless s rádiovou komunikací

Právě italská nadace zastřešující nejznámější rodinu prototypovacích desek se totiž na svém blogu už zkraje roku pochlubila, že nad RP2040 postaví vlastní desku s hromadou čidel. Arduino Nano RP2040 Connect s Wi-Fi/BT modulem NINA-W102 od Ubloxu tu bude snad už co nevidět a nabídne vývoj v nám dobře známém prostředí s jeho tradičními knihovnami.

Pokračování článku patří k prémiovému obsahu pro předplatitele

Chci Premium a Živě.cz bez reklam Od 41 Kč měsíčně
Diskuze (2) Další článek: Vyzkoušeli jsme chytré čidlo a čističku vzduchu z Ostravy. S výpary lepidla si poradila za pár sekund

Témata článku: , , , , , , , , , , , , , , , , , , , , , , ,