A CircuitPython programozási nyelvet azzal a céllal hozták létre, hogy egyszerűsítse a kísérletezést és a programozás tanulását, ha különféle mikrokontrollereket szeretnél használni projektjeidben. A programkörnyezet minden eddiginél könnyebbé teszi a kezdést, nincs szükséged bonyolult előkészületekre, előtanulmányokra! Miután kiválasztottad az alkalmazni kívánt kontrollert, indíts el egy megfelelő kódszerkesztőt, és kezdődhet a programozás!

A CircuitPython és a Python.

A Python az egyik leggyorsabban fejlődő programozási nyelv. Tanulhatod az középiskolától az egyetemig… és tovább! A Python un. magas szintű programozási nyelv, amit úgy terveztek, hogy könnyű legyen olvasni, írni és karbantartani a vele készült kódjaidat. Támogatja a modulokat (könyvtárakat) és csomagokat, ami azt jelenti, hogy a kódot könnyen újra tudod használni más-más projektedhez. Beépített értelmezővel rendelkezik, így a kódod működéséhez nem szükségesek extra lépések, mint például a fordítás. És természetesen a Python nyílt forráskódú szoftver, ami azt jelenti, hogy bárki szabadon használhatja, módosíthatja vagy fejlesztheti.
A CircuitPython az “alap” Python mindezen remek funkcióit hardveres támogatással egészíti ki. Ha már rendelkezel Python ismeretekkel, akkor azt könnyen felhasználhatod a CircuitPython alkalmazásakor. Ha nincs korábbi tapasztalatod, ne aggódj, akkor is nagyon egyszerű lesz a kezdés!

Miért / mikor használjunk CircuitPython-t?

A CircuitPython-t mikrokontroller lapkákon való futtatásra tervezték. A mikrokontroller panel egy mikrokontroller chipet tartalmazó áramkör, amely lényegében egy miniatűr “minden egyben” számítógép. A CircuitPython használata egyszerű, mert csak a mikrokontrollerre, egy USB-kábelre és egy USB-csatlakozóval rendelkező számítógépre van szükség hozzá. De ez még csak a kezdet.

További okok a CircuitPython használatára:

  • Gyorsan akarsz eredményt elérni? Létrehozod a programfájlt, szerkeszted a kódot, mented a fájlt, és az azonnal fut. Nincs szükség fordításra, letöltésre és feltöltésre.
  • Új vagy a programozásban? A CircuitPython az oktatást és a kezdők igényeit szem előtt tartva készült. Könnyen elkezdheted az ismerkedést a programozással, és azonnali visszajelzést kapsz a kontrollertől.
  • A kód könnyen frissíthető. Mivel a kódod a lemezmeghajtón van mentve, bármikor szerkesztheted, vagy több verziót is tárolhatsz a könnyű kísérletezéshez.
  • A soros konzol és a REPL. Ezek az eszközök lehetővé teszik az élő visszajelzést a kódodról és az interaktív programozást az online monitorozás segítségével. (A Read-Eval-Print Loop vagy REPL egy olyan számítógépes környezet, ahol a felhasználói adatok azonnal beolvasásra és kiértékelésre kerülnek, majd az eredmények visszakerülnek a felhasználóhoz.)
  • Fájlok tárolása. A CircuitPython belső tárhelye kiválóan alkalmas adatrögzítésre, hangklipek lejátszására, és egyéb módon a fájlokkal való interakcióra.
  • Erős hardvertámogatás. A CircuitPython beépített támogatással rendelkezik a különböző típusú mikrokontrollerek hardveres jellemzőihez, mint például a digitális I/O csatornák, hardveres kommunikációs buszok (UART, I2C, SPI), audio I/O és egyéb lehetőségek. Számos könyvtár és illesztőprogram is rendelkezésre áll érzékelőkhöz, breakout panelekhez és egyéb külső komponensekhez.
  • Ez Python! A Python a leggyorsabban fejlődő programozási nyelv. Iskolákban és egyetemeken tanítják. A CircuitPython szinte teljesen kompatibilis a Pythonnal. Ez a változat pedig a hardvertámogatás széles skáláját adja az alap környezethez!
  • Ez még csak a kezdet. A CircuitPython folyamatosan fejlődik, és folyamatosan frissül. Az Adafruit üdvözli és bátorítja a közösség visszajelzéseit, és beépíti azokat a CircuitPython fejlesztésébe. Ez a nyílt forráskódú koncepció lényege. Ezáltal a CircuitPython jobbá válik számodra és mindenki számára is, aki használja a tanulásban, illetve az otthoni barkácsolásban, fejlesztésben!

Szükséged lesz egy szerkesztőre… – a MU editor

A Mu egy egyszerű kódszerkesztő, amely együttműkődik az Adafruit CircuitPython mikrokontrollerekkel. Python nyelven íródott, és Windows, MacOS, Linux és Raspberry Pi rendszereken működik. Beépített soros konzolt tartalmaz, így segítségével azonnali visszajelzést kapsz a kontroller működéséről a soros kimeneten!
A Mu az Adafruit ajánlott szerkesztője – kérjük, hogy ezt használd, hacsak nem tapasztalt kódoló vagy, akinek már van másik kedvenc szerkesztőprogramja!
Mu letöltése és telepítése a https://codewith.mu oldalról lehetséges.

Kattints a Letöltés linkre a letöltési és telepítési utasításokért. Ezt követően kattints a Start Here gombra, ha rengeteg egyéb információt szeretnél találni, beleértve a részletes oktatóanyagokat és a “hogyan kell használni” típusú útmutatókat.
Amikor először indítod el a Mu-t, a rendszer kérni fogja, hogy válassz “üzemmódot” – de ezt később is bármikor meggondolhatod. Most kérjük, válasszad a CircuitPython-t!
Az aktuális mód az ablak jobb alsó sarkában, a “fogaskerék” ikon mellett látható. Ha a módban “Microbit” vagy valami más szerepel, kattints a bal felső sarokban lévő Mód gombra, majd a megjelenő párbeszédpanelen válaszd a “CircuitPython” lehetőséget.
A Mu indításkor megpróbálja automatikusan felismerni a mikrokontrollert, így ha nincs csatlakoztatva CircuitPython kompatibilis eszköz, amelyhez CIRCUITPY nevű meghajtó tartozik, a Mu tájékoztat, hogy hol fogja tárolni a mentett kódot, amíg nem csatlakoztatsz egy alkalmas kontrollert.
Ennek a figyelmeztetésnek a kiküszöbölése érdekében csatlakoztass egy kontrollert, valamint a Mu indítása előtt győződj meg róla, hogy a CIRCUITPY meghajtó megjelent és elérhető!
Kódolás Raspberry Pi-n
A CircuitPython programjaidat RPi-n is megírhatod, és könnyen feltöltheted a csatlakoztatott kontrollerre. Ehhez a legjobb megoldás a Thonny editor, ami része az RPi image-nek, így géped indítása után azonnal rendelkezésedre áll. A CircuitPython használatához a szerkesztő indítása után a Tools > Options > Interpreter elérési út mentén be tudod állítani a szükséges bővítményt.
A beállítás után programod az alábbihoz hasonlóan fog kinézni:

Következő cikkeinkben két CircuitPythonos eszköz programozását vizsgáljuk meg közelebbről, az egyik a Raspberry Pi Pico, a másik az Adafruit Ciruit Playground lesz.