STM32CUBE + STM32STUDIO: jak używać tych narzędzi?

 

 

W artykule na prostych przykładach przedstawimy jak wykorzystać bezpłatne narzędzia udostępnione przez firmę STMicroelectronics dla mikrokontrolerów STM32.

 UWAGA: Aby pobrać niezbędne narzędzia należy zarejestrować się zarówno na stronie www.st.com, jak i www.openstm32.org

Pod tym linkiem znajdują się sterowniki, należy je pobrać i zainstalować ręcznie jeżeli komputer nie zrobi tego automatycznie po podłączeniu płytki.

Jeżeli mamy już sterowniki pobieramy program ST-Link Utility, znajduje się on również na stronie producenta (link). Po zainstalowaniu programu podłączamy naszą płytkę do komputera za pomocą złącza mini USB służącego do programowania. Uruchamiamy program ST-Link Utility i wybieramy opcję Target>Connect.

Przykładowa aplikacja przedstawiona w artykule została wykonana na zestawie KA-NUCLEO-F411CE z dołączonym shieldem KA-NUCLEO-WEATHER firmy KAMAMI.pl.


Jeżeli wszystko przebiegło jak należy program powinien wyglądać następująco:

Jeżeli program w dolnym oknie napisał:

Old ST-Link firmware detected!

Please upgrade…

Należy wybrać opcje ST-LINK>Firmware update i postepować zgodnie z poleceniami.

Po tych krokach jesteśmy pewni, że nasza płytka łączy się z komputerem i jest gotowa do programowania.

Kolejnymi narzędziami koniecznymi do wykonania projektu są:

Pobieramy je i instalujemy.

Na początek otwieramy STM32CubeMX i wybieramy opcję New Project. Otworzy nam się okno w którym musimy wybrać płytkę z którą pracujemy, bądź sam mikrokontroler. Wybieramy nasz mikrokontroler z listy (STM32F411CE będący „sercem” zestawu KA-NUCLEO-F411CE):


Po wybraniu powinien ukazać się nam nasz mikrokontroler:

Na początku powinniśmy skonfigurować zegar. Na powyższym obrazku jest już pokazany pierwszy krok – wybranie z sekcji Pinout>RCC>High Speed Clock (HSE)>Crystal/Ceramic Resonator.

Po wybraniu tych opcji PH0 i PH1 na mikrokontrolerze powinny zaswiecić się na zielono. Przechodziny do Clock configuration i ustawiamy input frequency = 8, oraz zaznaczamy HSE w sekcji PLL Source Mux. Nasza konfiguracja powinna wyglądać następująco:

Powróćmy teraz do Pinout i dokonajmy pierwszej konfiguracji pinów. Z dokumentacji KA-NUCLEO-Weather odczytujemy piny GPIO do których podłączone są diody LED-RGB. Widzimy również istotną informacje o tym, że diody świecą, jeżeli na linii sterującej jest stan logiczny “0”.
Klikamy prawym klawiszem myszy na odpowiednie piny i ustawiamy je na GPIO_Output:

 

Analogicznie ustawiamy pozostałe piny:

Następnie sprawdzamy w dokumentacji do jakich pinów podłączony jest Joystick umieszczony na naszym shieldzie.

Tym razem ustawiamy piny jako GPIO_EXTI. Umożliwi to obsługę przerwań.