Współczesne oprogramowanie dla mikrokontrolerów staje się coraz bardziej skomplikowane. Użytkownicy systemów coraz częściej oczekują graficznego interfejsu użytkownika, obsługi sieci itp. Wiele czynności w rozbudowanych aplikacjach musi być wykonywane „jednocześnie”.
Kategoria: Artykuł
ISIX-RTOS – przykład 1 – sterowanie LED w wątkach
Pokażemy w jaki sposób stworzyć kod startowy dla systemu oraz dwa nowe zadania (wątki).
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.
ISIX-RTOS – przykład 2 – kolejki FIFO i obsługa graficznego wyświetlacza LCD
W przykładzie pokażemy komunikację pomiędzy procesami z wykorzystaniem wątków. Działanie aplikacji będzie sprowadzać się do migania diody LED D1 z częstotliwością 2 Hz (jeden wątek) oraz wyświetleniu napisu lub grafik odpowiadających kierunkom joysticka zamontowanego na płytce.
Przykład 1 – wykorzystanie linii GPIO (LED)
Celem niniejszego ćwiczenia będzie migotanie diodami LED.
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).
Rdzenie z serii Cortex
Cortex to rodzina nowoczesnych rdzeni mikrokontrolerowych i mikroprocesorowych opracowanych przez firmę ARM, będąca następcą popularnych rozwiązań opartych na ARM7 i pochodnych.
Cyfrowy, audiofilski potencjometr i regulator balansu
Prostotę układu uzyskano dzięki zastosowaniu nowoczesnego układu MAX5440, produkowanego przez firmę Maxim.
PanuWorld Nokia Cable
Projekt powstał na bazie popularnego rozwiązania PanuWorld Nokia Cable, czyli dwustandardowego interfejsu zgodnego z protokołami Mbus oraz Fbus. Wejścia i wyjścia interfejsu (od strony telefonu) są przystosowane do współpracy ze wszystkimi telefonami, także tymi, których interfejsy są przystosowane do sygnałów w standardzie napięciowym 3,3 V.
Wskaźnik położenia z czujnikiem przyspieszenia MEMS
Miniaturowy czujnik MEMS oznaczony symbolem FC30 należy do nowej kategorii układów, określanych mianem „czujników funkcjonalnych”. Rozpoznaje on i sygnalizuje na 3-bitowym wyjściu cyfrowym 6 kierunków, umożliwia wykrywanie także pozycji pośrednich pomiędzy „sąsiadującymi” kierunkami.