Platformy
Platforma je prostředí, pro které program píšeme. U běžného počítače to může být například Linux nebo Windows. U embedded vývoje je platformou často konkrétní rodina desek, mikrokontrolérů, knihoven a nástrojů.
Platforma ovlivňuje, jak program přeložíme, jak ho spustíme, jak komunikujeme s hardwarem a jaké knihovny máme k dispozici.
Co všechno platforma zahrnuje
Platforma obvykle není jen jeden čip. Může zahrnovat:
- procesor nebo mikrokontrolér,
- desku a její zapojení,
- překladač a nástroje pro nahrávání,
- knihovny pro práci s hardwarem,
- dokumentaci,
- způsob ladění.
Proto nestačí říct jen: "Píšu v C." Důležité je také: "Píšu v C pro ATtiny" nebo "Píšu v C++ pro Arduino".
Příklady platforem
Arduino je pohodlná platforma pro rychlé pokusy a výuku.
Schovává hodně detailů,
takže se dá rychle rozblikat LED nebo číst senzor.
ESP32 je platforma pro projekty,
kde se hodí Wi-Fi, Bluetooth nebo větší výpočetní výkon.
Raspberry Pi Pico používá mikrokontrolér RP2040
a hodí se pro projekty,
kde chceme dostupnou desku,
dobrou dokumentaci a slušný výpočetní výkon.
ATtiny je malá a úsporná platforma pro jednoduché úlohy,
kde nechceme velký čip,
ale chceme mít kontrolu nad hardwarem.
Proč na platformě záleží
Práce se stejným programovacím jazykem může na různých platformách vypadat velmi odlišně. Na počítači máte operační systém, souborový systém, hodně paměti a obrazovku. Na malém mikrokontroléru často nemáte nic z toho. Máte jen čip, pár pinů, omezenou paměť a přesný úkol.
Výběr platformy proto není drobnost. Rozhoduje o tom, co bude jednoduché, co bude složité a co vůbec nepůjde rozumně na určité platformě udělat.