Oszczędzanie energii w mikrokontrolerach STM32

Zmniejszenie poboru energii przez mikrokontroler można osiągnąć poprzez zmniejszenie częstotliwości jego taktowania (co wiąże się ze spowolnieniem działania) lub przez selektywne wyłączanie układy peryferyjnych wbudowanych w jego strukturę. Ten drugi mechanizm doskonale sprawdza się w mikrokontrolerach STM32, które są konstrukcyjnie przystosowane do selektywnego włączania i wyłączania większości wbudowanych bloków peryferyjnych.

Funkcje API w obsłudze GPIO

Operowanie bezpośrednio na rejestrach 32–bitowego procesora lub mikrokontrolera nie należy do zadań prostych. Mimo, iż samo napisanie (stosunkowo zaawansowanych) aplikacji przy użyciu nazw rejestrów jest możliwe, to wprowadzanie zmian do istniejącego kodu po upływie na przykład kilku miesięcy, dodatkowo przez osobę, która nie jest autorem programu, jest w zasadzie niemożliwe do wykonania w sensownym czasie. Z tego powodu do takich operacji programiści wykorzystują funkcje o mniej lub bardziej kojarzących się nazwach. Jeżeli mamy do czynienia z bardzo skomplikowanym projektem wykorzystującym wiele peryferiów mikrokontrolera, to napisanie stosownych funkcji jest pracochłonne i wymaga dobrej znajomości architektury mikrokontrolera.

Przykład 0 – wspólna biblioteka do wszystkich przykładów

Mimo, że układy z rodziny STM32 są bardzo rozbudowanymi mikrokontrolerami, pisanie dla nich programów jest stosunkowo łatwe. Dzieje się tak dzięki udostępnieniu przez firmę STMicroelectronics odpowiednich bibliotek ułatwiających stosowanie licznych i rozbudowanych układów peryferyjnych wbudowanych w mikrokontrolery. Najczęściej stosowaną biblioteką jest STM32F10x Standard Peripherals Library. Kompletna biblioteka wraz z obszerną dokumentacją jest do pobrania ze strony firmy STMicroelectronics – jest to plik o wielkości 12MB (wersja 3.1.2).