Blokové programování pro běžné mikrokontroléry: Přehled nástrojů
Reklama:Úvod
Blokové programování se stalo populární metodou pro výuku i rychlý vývoj aplikací na mikrokontrolérech (MCU). Umožňuje intuitivní skládání programů z grafických bloků bez nutnosti psát kód, což je ideální pro začátečníky i pedagogy. V tomto článku najdete přehled nejběžnějších nástrojů pro blokové programování MCU, které podporují jazyky jako C/C++, MicroPython, JavaScript nebo Lua, včetně informací o podporovaných platformách a mikrokontrolérech.
Přehled nástrojů pro blokové programování mikrokontrolérů
Nástroj | Webová adresa | Podporované jazyky | Podporované MCU/skupiny |
---|---|---|---|
Microsoft MakeCode | makecode.microbit.org | Bloky, JavaScript, MicroPython | BBC micro:bit, Adafruit Circuit Playground Express, Calliope mini, některé Arduino desky1 2 3 |
MicroBlocks | microblocks.fun | Bloky (vlastní jazyk podobný Scratch), částečně JavaScript | BBC micro:bit, Calliope mini, Adafruit Circuit Playground Express, Raspberry Pi Pico, ESP32, ESP8266 a další1 4 5 |
Blockly for PICAXE | picaxe.com/blockly | Bloky, PICAXE BASIC, JavaScript | PICAXE mikrokontroléry (řada PIC)6 7 |
12Blocks | instructables.com/Program-a-microcontroller-With-12Blocks/ | Bloky, Spin | Parallax Propeller8 |
Vizuální programování v Lua/LÖVE | (webová aplikace, více viz VUT Brno) | Bloky, Lua | PC, Android (výukové prostředí, nikoliv přímo MCU)9 |
Microsoft MakeCode
- Popis: Oficiální blokové prostředí pro BBC micro:bit, podporuje také přepínání do JavaScriptu a MicroPythonu. Nabízí simulátor, rozšíření pro různé periferie a jednoduché uživatelské rozhraní1 2 3.
- Podporované MCU: BBC micro:bit, Adafruit Circuit Playground Express, Calliope mini, některé Arduino desky.
- Jazyky: Bloky (vizuální), JavaScript, MicroPython.
MicroBlocks
- Popis: Otevřený blokový jazyk inspirovaný Scratchem, určený pro přímé programování a ladění na různých MCU. Podporuje živé programování a paralelní skripty1 4 5.
- Podporované MCU: BBC micro:bit, Calliope mini, Adafruit Circuit Playground Express, Raspberry Pi Pico, ESP32, ESP8266 a další.
- Jazyky: Bloky (vlastní jazyk podobný Scratch, částečně JavaScript).
Blockly for PICAXE
- Popis: Bezplatný blokový editor pro mikrokontroléry PICAXE. Umožňuje převod blokových programů do jazyka PICAXE BASIC nebo JavaScriptu a jejich nahrání do čipu, včetně simulace6 7.
- Podporované MCU: PICAXE (řada PIC).
- Jazyky: Bloky, PICAXE BASIC, JavaScript.
12Blocks
- Popis: Alternativní blokové IDE pro Parallax Propeller MCU. Umožňuje přepínání mezi bloky a jazykem Spin, nabízí vestavěný debugger a podporu pro různé periferie8.
- Podporované MCU: Parallax Propeller.
- Jazyky: Bloky, Spin.
Vizuální programování v Lua/LÖVE
- Popis: Výuková webová aplikace pro blokové i textové programování v Lua/LÖVE, zaměřená na tvorbu her a výuku programování. Výsledné aplikace lze spouštět na Androidu, nikoliv přímo na MCU9.
- Podporované platformy: PC, Android (ne MCU).
- Jazyky: Bloky, Lua.
Závěr
Blokové programování je dnes dostupné pro širokou škálu běžných mikrokontrolérů, včetně těch, které lze programovat v jazycích C/C++, MicroPython, JavaScript nebo Lua. Největší podporu a rozšíření mají nástroje jako Microsoft MakeCode a MicroBlocks, které pokrývají nejen BBC micro:bit, ale i další populární platformy. Blockly for PICAXE a 12Blocks jsou vhodné pro specifické MCU, zatímco vizuální programování v Lua/LÖVE je zajímavou možností pro výuku a tvorbu her. Výběr vhodného nástroje závisí na konkrétním typu mikrokontroléru a preferovaném programovacím jazyce1 2 4.
-
https://www.gymvr.cz/informatika/05 Blokove vizualni programovani/Jan_Prsala_dp_Microbit.pdf ↩↩↩↩↩
-
https://imysleni.cz/images/vzdelavaci_materialy/microbit_makecode/Microbit_s_Makecode_metodika_pro_ucitele.pdf ↩↩↩
-
https://bastlirna.hwkitchen.cz/uvod-do-programovaciho-prostredi-makecode-microbit/ ↩↩
-
https://www.cnx-software.com/2023/01/30/microblocks-visual-programming-interface-for-32-bit-microcontrollers/ ↩↩
-
https://chromewebstore.google.com/detail/picaxe-blockly/hhdlapnjifkkcpghcapopejopnbpapnb ↩↩
-
https://www.instructables.com/Program-a-microcontroller-With-12Blocks/ ↩↩
-
https://dspace.vut.cz/items/0d479175-87a3-4a43-8c03-e4f6ba97d7df ↩↩
-
https://www.tme.eu/cz/news/library-articles/page/58200/jak-naprogramovat-mikrokontroler-nejoblibenejsi-programovaci-jazyky-pro-mikrokontrolery/ ↩
-
https://www.voxcafe.cz/mindblog/clanky/embedded-systemy/zaklady-mcu.html ↩
-
https://www.voxcafe.cz/mindblog/clanky/arduino/kompletni-pruvodce-mikrokontrolerem-atmega328p.html ↩
-
https://robodoupe.cz/2020/programovanie-microbitu-v-jazyku-python-1-cast/ ↩
-
https://www.dps-az.cz/getFile/id:84165/Programovanie-MicroBitu-Python.pdf ↩
-
https://learn.birdbraintechnologies.com/slpage/hummingbird-bit-with-microblocks/ ↩
-
https://www.reddit.com/r/ProgrammingLanguages/comments/1cufmy1/languages_for_microcontrollers/ ↩
-
https://www.hackster.io/tguneysu/oled-display-driver-written-100-in-microblocks-969cae ↩
-
https://learn.birdbraintechnologies.com/slpage/finch-2-0-with-microblocks/ ↩
-
https://www.vut.cz/www_base/zav_prace_soubor_verejne.php?file_id=40661 ↩
-
https://www.microsoft.com/sk-sk/p/microsoft-makecode-for-micro-bit/9nmqdq2xzkwk ↩