A firmware fejlesztéséhez az STM32CubeIDE fejlesztőkörnyezetet használjuk, mely regisztráció után letölthető az STMicroelectronics weboldaláról. FONTOS: figyeljünk arra, hogy letöltéskor az 1.10.1
-es verziót kell választani, máskülönben igen körülményes a projekt indítása!
Jelenleg erőforrások hiánya miatt sajnos csak Windows 10/11-en teszteljük a szoftvert. Más platformokon is valószínűleg működni fog, a feltöltő scriptet leszámítva.
A robotra a firmware letöltése virtuális soros porton történik, a roboton az USB csatlakozó egy FT232RL
chiphez kapcsolódik.
Előfordulhat, hogy a Windows nem telepíti automatikusan a virtuális soros port driverét. Ebben az esetben le kell töltenünk azt az FTDI weboldaláról, majd pedig kibontani és telepíteni.
A kiinduló projektet a GitHub repojából tudjuk letölteni, ehhez az oldal megnyitása után jobb oldalt a Releases
fül alatt kell kiválasztanunk a firmware v2.0
nevű fájlt.
A letöltött fájlt helyezzük el egy kényelmes helyre, például Documents/Lego Tanfolyam
mappába, majd bontsuk ki. Ezek után nyissuk meg a CubeIDE-t, ez először kérni fog tőlünk egy workspace
-t. Válasszuk azt a mappát, amin belül található a TanfolyamRobot mappa. FONTOS: figyeljünk arra, hogy a workspace
-nek választott mappán belül ez legyen az eredményül kapott fájlszerkezet: ./TanfolyamRobot/firmware/...
.
A CubeIDE-ben belül zárjuk be az indításkor megnyílt Information Center
ablakot, majd importáljuk be a projektünket a következő módon: File -> Import... -> General -> Existing Projects into Workspace -> Next
, a felugró ablakban pedig válasszuk ki a Root directory
-ként a fentebb említett firmware
mappát.
A robot különböző futásidejű adatait, debug üzeneteit egy webes felületen tudjuk nyomonkövetni. Ehhez mindössze annyit kell tennünk, hogy egy WiFi hálózatra csatlakozunk fel a robottal, majd pedig duplán klikkelünk a TanfolyamRobot/start_telemetry.bat
fájlra. Ez utóbbit végezzük el egyszer otthon, mivel első alkalommal sok függőséget fog letölteni a script (miután ezzel megvagyunk és megnyílt a weboldal nyugodtan zárjuk be a megnyílt konzolokat és a weboldalt).
Az imént megnyitott projektünk fájljait az IDE bal oldalán láthatjuk. A kód számunkra lényegi része a tanfolyamrobot/Application/application.c
fájl lesz. Itt kell majd megoldanunk a tanfolyam során a feladatokat. Az itt található application()
függvény gombnyomásra indul. Ha ebből a függvényből visszatér a programunk, akkor a robot leáll és a kijelzőn megjeleníti a visszatérési értéket.
Amennyiben ki szeretnénk próbálni az általunk írt kódot a roboton, úgy nyomjunk rá a CubeIDE tetején látható kis táskás zöld play gombra, a felnyíló ablakban pedig válasszuk ki az Upload with DFU 2.0 - Debug
és nyomjunk rá a Run
gombra (ezt a kiválasztást csak első alkalommal kell megcsinálnunk).