Choć 8-bitowe mikrokontrolery są obecne na rynku już od prawie pięćdziesięciu lat, to nowe aplikacje – takie jak samochody i rowery elektryczne, automatyka domowa czy też urządzenia Internetu Rzeczy (IoT) – w wykładniczym tempie napędzają popyt na małe, niedrogie procesory. W rezultacie mikrokontrolery 8-bitowe znacznie wyewoluowały, aby dotrzymać kroku funkcjonalnościom wymaganym w nowoczesnych aplikacjach. Przeanalizujemy trzy typowe zastosowania, w których nowa klasa 8-bitowych MCU z zaawansowanymi funkcjami analogowymi wspiera budowę nowoczesnych systemów.
Zarządzanie baterią, monitorowanie i optymalizacja
W przypadku wielu systemów wbudowanych używanych w odległych lokalizacjach (np. w sensorach IoT) głównym źródłem zasilania jest bateria lub akumulator. Monitorowanie żywotności i stanu naładowania źródła energii jest niezwykle ważną funkcją, zapewniającą bezpieczną i niezawodną pracę urządzenia przez wiele tygodni, miesięcy, a nawet lat.
W klasycznych aplikacjach problem monitorowania stanu baterii lub akumulatora jest rozwiązywany na drodze pomiaru podstawowych parametrów źródła energii (napięcia i prądu) oraz obliczania na ich podstawie pozostałego czasu pracy urządzenia. Zadania te realizuje najczęściej sam mikrokontroler, a ich celem jest zarówno informowanie użytkownika (lub nadrzędnego urządzenia) o stanie naładowania, jak i optymalizacja wydajności zasilania. Mikrokontroler ze zintegrowanym przetwornikiem analogowo-cyfrowym (ADC) próbkuje zatem wartości prądu i napięcia akumulatora oraz konwertuje je na dane cyfrowe, które odpowiedni program może wykorzystać do oszacowania stanu baterii. Jeśli potrzebne jest ponadto równoczesne monitorowanie temperatury akumulatora, zintegrowany w strukturze mikrokontrolera wzmacniacz operacyjny może zostać użyty jako bufor napięcia polaryzującego czujnik temperatury. Wbudowane wzmacniacze operacyjne są dostępne w szerokiej gamie nowoczesnych 8-bitowych mikrokontrolerów i mogą nie tylko obniżyć koszty implementacji systemu, ale także zredukować powierzchnię płytki drukowanej w aplikacjach wymagających dodatkowego stopnia wzmocnienia przed wejściem przetwornika ADC.
Aby zoptymalizować wydajność źródła zasilania i wydłużyć czas pracy systemu, mikrokontroler powinien oferować różne tryby zarządzania zużyciem energii – co pozwoli zrównoważyć zapotrzebowanie na wydajność, przy jednoczesnej redukcji poboru mocy. Kluczem do długiej żywotności baterii w systemie wbudowanym jest możliwość ograniczenia aktywności systemu, gdy nie jest on aktywny. Elastyczne poziomy konfiguracji pozwalają systemowi zużywać minimalną ilość energii do realizacji bieżących zadań, często bez nadzoru ze strony rdzenia. Funkcje takie, jak tryby IDLE, DOZE lub SLEEP, zapewniają daleko idące oszczędności energetyczne. Dodatkowo w najnowszych mikrokontrolerach Microchip (PIC i AVR) przetworniki ADC, wzmacniacze operacyjne oraz przetworniki DAC można również włączać i wyłączać programowo lub ustawić tak, aby uruchamiały rdzeń MCU i cyfrowe bloki peryferyjne po osiągnięciu określonych progów, co zapewnia dodatkową elastyczność i oszczędność energii w aplikacjach bateryjnych. Dzięki funkcjom niskiego poboru mocy, dostępnym w nowoczesnych mikrokontrolerach, żywotność baterii jest maksymalizowana – jednocześnie zmniejsza się zużycie prądu, rozpraszanie mocy, a więc i... koszty.
Wbudowane funkcje zarządzania systemem
Konstrukcje aplikacji wbudowanych z biegiem czasu ulegają coraz większemu skomplikowaniu. Konieczne okazuje się zatem rozdzielenie zadań przetwarzania danych w sposób zapewniający błyskawiczną reakcję systemu, aby zmaksymalizować wygodę użytkownika czy też przestrzegać rygorystycznych norm bezpieczeństwa. Aby to osiągnąć, złożone systemy często korzystają z nowoczesnych 8-bitowych mikrokontrolerów ze względu na zintegrowane w ich strukturach peryferia analogowe, wykonujące zadania „porządkowe”, w tym: sterowanie szynami zasilającymi, monitorowanie jakości środowiska, wykrywanie błędów i awarii czy też arbitraż komunikacji między kilkoma chipami na płycie głównej. Funkcje te mają kluczowe znaczenie w wielu zastosowaniach, m.in. w infrastrukturze centrów danych, systemach zarządzania budynkami, punktach końcowych inteligentnych sieci i zastosowaniach związanych z zapewnieniem bezpieczeństwa, np. w niektórych sprzętach AGD.
Jedną z takich aplikacji może być serwer znajdujący się w centrum danych. Chociaż na każdej płycie głównej umieszczony został wydajny procesor CPU i szeroka gama procesorów aplikacyjnych do obsługi różnych zadań, wiele współczesnych serwerów korzysta także z nowoczesnych mikrokontrolerów 8-bitowych jako układów do zarządzania rozmaitymi funkcjami systemowymi. „Małe” mikrokontrolery stanowią zazwyczaj interfejs czujników środowiskowych (temperatury, wilgotności, napięcia na szynach zasilania, etc.) i są zaprogramowane do raportowania stanu na magistrali systemowej podczas sekwencjonowania zasilania innych urządzeń na płycie głównej. W takich przypadkach 8-bitowe mikrokontrolery doskonale nadają się do tych prostszych zadań. Niektóre układy, takie jak PIC i AVR firmy Microchip, oferują niezależne od rdzenia bloki peryferyjne (CIP), które współpracują z blokami analogowymi procesora. Wzmacniacze operacyjne lub przetworniki ADC zapewniają możliwość wstępnego kondycjonowania sygnałów wejściowych (wzmocnienie, filtracja analogowa, etc.). Natomiast bloki CIP zaprojektowano tak, by automatyzowały zadania systemowe bez konieczności angażowania rdzenia ani nawet nadzoru z jego strony, co umożliwia zredukowanie ilości kodu, który trzeba napisać, zdebugować i przetestować. Poszczególne peryferia CIP komunikują się ze sobą, co dodatkowo pomaga zwiększyć wydajność i responsywność systemu, umożliwiając jednoczesną obsługę wielu zadań.
Mikrokontrolery PIC i AVR idą o krok dalej i używają wyrafinowanych peryferiów analogowych, aby umożliwić zaawansowane obliczenia niezależne od rdzenia, takie jak uśrednianie, nadpróbkowanie czy filtracja dolnoprzepustowa. Funkcje te pomagają przyspieszyć reakcję systemu i zapewniają efektywną eliminację zakłóceń podczas pracy w najbardziej wymagających środowiskach. Mało tego – peryferia analogowe można łączyć z wieloma innymi sygnałami wewnątrz mikrokontrolera (w tym z timerami, źródłami sygnału zegarowego, cyfrowymi sygnałami peryferyjnymi itp.) w celu automatycznego wyzwalania określonych procesów lub generowania przerwań, powiadamiających procesor o konieczności podjęcia określonych zadań.
Interfejs użytkownika
Technologia wykrywania dotyku jest stosowana w szerokiej gamie produktów elektronicznych, od smartfonów, poprzez urządzenia RTV i AGD, aż po wyposażenie samochodów. W projektowaniu kierownic i desek rozdzielczych stopniowo odchodzi się od klawiszy mechanicznych na rzecz eleganckich, elastycznych interfejsów użytkownika. Przyciski dotykowe muszą natychmiast reagować na interakcję użytkownika, gwarantować odporność na fałszywe wyzwalacze i dostosowywać się do wielu różnych warunków środowiskowych, w tym szybkich wahań temperatury czy nadmiernej wilgotności, a dodatkowo powinny prawidłowo reagować nawet na dotyk dłoni w rękawiczkach.
We współczesnych interfejsach pojemnościowych sama tylko moc obliczeniowa 32-bitowych procesorów nie jest w stanie zastąpić specjalnie zaprojektowanych interfejsów analogowych, które można znaleźć w nowoczesnych mikrokontrolerach 8-bitowych. Nowe układy z oferty firmy Microchip, w tym rodziny produktów PIC18-Q71 i AVR EA, są wyposażone w różnicowe przetworniki ADC z zaawansowanymi możliwościami filtrowania, pozwalającymi na znaczną redukcję ilości wymaganych interwencji rdzenia, potrzebnych do wdrożenia niezawodnej detekcji dotyku. Te wysoko wyspecjalizowane przetworniki ADC odznaczają się doskonałą charakterystyką tłumienia zewnętrznych zaburzeń i oferują wbudowane funkcje automatycznego dostrajania oraz kalibracji w celu zwiększenia odporności na zakłócenia, a także tolerancji na wilgoć i wodę. W połączeniu z łatwymi w użyciu narzędziami programistycznymi firmy
Microchip mikrokontrolery te zapewniają kompletne rozwiązanie do tworzenia wymagających interfejsów dotykowych, narażonych na trudne warunki otoczenia.
Podsumowanie
W miarę wzrostu wymagań, dotyczących mikrokontrolerów na przestrzeni ostatnich 50 lat, w systemach wbudowanych zacierają się granice pomiędzy tym, co musi być „analogowe”, a tym, co może pozostać w domenie cyfrowej. Wraz z ewolucją projektów systemów wbudowanych, 8-bitowy mikrokontroler ewoluował od prostych układów obliczeniowych, do pełnoprawnych rozwiązań typu System-on-Chip (SoC), zbudowanych z myślą o obsłudze większości współczesnych zadań, jakie stawia się przed systemami embedded. Począwszy od prostego monitorowania napięć zasilania, a skończywszy na obowiązkach głównego sterownika w złożonych projektach, mikrokontrolery ze zintegrowanymi peryferiami analogowymi umożliwiają projektantom przeniesienie niektórych funkcji, wykonywanych zwykle poza chipem, na główny procesor. Takie rozwiązanie znakomicie poprawia responsywność systemu i zmniejsza koszty BOM. Inteligentne analogowe bloki peryferyjne, dostępne w 8-bitowych mikrokontrolerach PIC i AVR, płynnie integrują się z peryferiami cyfrowymi, zapewniając jeszcze większą funkcjonalność i elastyczność dla konstruktorów wyrafinowanych systemów wbudowanych.
za: Stephanie Pinteric, Wayne Freeman
Ewolucja funkcjonalności analogowej w 8-bitowym mikrokontrolerze i jej nowa, innowacyjna rola w elektronice