W trzecim odcinku naszego kursu skupimy się na przygotowaniu i uruchomieniu prostej aplikacji, której celem będzie miganie diodą LED na płytce ewaluacyjnej. Jest to program mający za zadanie tylko i wyłącznie pokazanie procedury uruchomienia kodu na dodatkowym rdzeniu, która odbywa się w zupełnie inny sposób niż w przypadku popularnych układów z serii STM32, gdzie wystarczy wgrać kod z poziomu IDE do wbudowanej pamięci Flash mikrokontrolera.
Przygotowanie
W przypadku pisania kodu na mikroprocesory z serii STM32MP nie mamy zbyt dużego pola manewru w zakresie wyboru IDE, w jakim możemy ów kod napisać (o ile rozważamy tylko i wyłącznie darmowe środowiska programistyczne). Najlepiej sprawdza się w tym przypadku pakiet STM32CubeIDE, uruchomiony pod kontrolą systemu operacyjnego Ubuntu (choć osobiście używam Arch Linuksa, który także doskonale radzi sobie z tym zadaniem).
Ważne jest, aby wybrać odpowiednią płytkę, z której korzystamy – w przeciwnym razie nasz kod nie będzie miał szansy poprawnie zadziałać. Równie istotne jest wskazanie ścieżki do folderu, w którym znajdzie się nasz kod – później zapisywany będzie tam skompilowany kod naszego programu. Na kolejnym etapie konfiguracji zaznaczamy opcję generowania osobnych plików dla poszczególnych peryferiów. Jest to wygodne rozwiązanie ze względu na przejrzystość głównej części kodu, znajdującej się w pliku main.c.
W trakcie wybierania odpowiednich pinów mikrokontrolera ważne jest nie tylko samo wskazanie wyprowadzenia i opcjonalne ustawienie jego nazwy – kluczowe okazuje się bowiem zaznaczenie, który rdzeń będzie mógł korzystać z portu. Pozostawiając to ustawienie bez zmian, nie przypiszemy bowiem linii GPIO do żadnego z rdzeni, a co za tym idzie – nie będziemy mogli z tego wyprowadzenia korzystać.