Obsługa interfejsu CAN w mikrokontrolerach STM32

Magistrala CAN jest zbudowana z dwóch przewodów, oznaczonych symbolami CANH (zazwyczaj czerwony) i CANL. Przesyłana informacja jest kodowana sygnałem różnicowym. Gdy pomiędzy dwoma urządzeniami nie występuje zbyt duża różnica potencjałów mas (mniejsza od 7 V według normy), można wtedy pominąć przewód wspólny, dzięki czemu interfejs fizyczny staje się faktycznie dwuprzewodowy.

Funkcje API w obsłudze przerwań

Aby system mikroprocesorowy poprawnie radził sobie z zewnętrznymi zdarzeniami muszą być one obsługiwane za pomocą przerwań. Ma to szczególne znaczenia dla zadań krytycznych, w których nie może być mowy o zbyt dużych opóźnieniach w wykonaniu owego zadania, ani tym bardziej o pominięciu zdarzenia. Często nie zauważa się tego problemu, ponieważ wydaje się, że na przykład cykliczne sprawdzanie w pętli stanu danego wejścia jest wystarczające. Niestety takie podejście prędzej czy później powoduje generowanie błędów w pracy systemu. Jeżeli mamy do czynienia z projektem hobbistycznym, to nie jest to specjalnie dotkliwe, jednakże w przypadku rozwiązań komercyjnych nie można już sobie na takie błędy pozwolić.

Obsługa FAT w mikrokontrolerach STM32 – obsługa kart

Współcześnie najpopularniejsze i najbardziej uniwersalne są karty SD (Secure Digital). Standard obejmuje karty o pojemności do 4 GB, a jego rozsfzerzenie, czyli SDHC (Secure Digital High Capacity), aż do 32 GB. Standard kart SD został opracowany przez trzy firmy: Matsushita, SanDisk i Toshiba. Pierwsze nośniki danych tego typu pojawiły się pod koniec 2000 roku. Początkowo dokumentacja stfandardu SD była dosyć trudno dostępna, jednak sytuacja uległa zmianie wraz z nadejściem roku 2006, kiedy to stały się dostępne informacje m.in. na temat interfejsu SDIO, co w efekcie pozwoliło na implementację w mikrokontrolerach sprzętowych sterowników kart SD. Przedstawiciele najbardziej zaawansowanej grupy układów z rodziny STM32 mają wfbudowany właśnie taki sterownik.

Motylowy termometr

Jest to prosty projekt ilustrujący pomiar temperatury za pomocą czujnika wbudowanego w strukturę mikrokontrolera STM32F107 (zamontowanego na płytce STM32Butterfly) i wyświetlenie jej dziesiętnej wartości na graficznym wyświetlaczu LCD z telefonu Nokia 3310.

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.