Mikrokontroler - co to jest i do czego służy
Mikrokontroler to typowy przykład urządzenia, z którego korzysta każdy, choć większość nie ma o tym pojęcia. Z uwagi na szerokie zastosowanie cieszy się dużym zainteresowaniem ze strony elektromechaników, informatyków i domowych majsterkowiczów. Co to jest i do czego służy? O mikrokontrolerach i ich ważnej roli w życiu codziennym - zapraszamy do lektury!
Kurs Programowanie mikrokontrolerów od podstaw
Opanuj podstawy programowania mikrokontrolerów na przykładzie układu ESP32 i naucz się tworzyć własne urządzenia korzystające z WiFi i Bluetooth. Dowiedz się więcej
Co to jest mikrokontroler?
Mikrokontrolerem nazywa się miniaturową jednostkę, wbudowaną w urządzenie elektroniczne. Jest to kompletny i autonomiczny układ scalony, odpowiadający za wykonywanie poleceń, zaprogramowanych w jego pamięci. Wyglądem przypomina prostą, niewielką płytkę drukowaną, lecz pomimo niepozornego gabarytu śmiało można go nazwać mikrokomputerem. Z tego też powodu można się czasem spotkać z określeniem MCU, czyli mikrokomputer jednoukładowy.
Podstawowe bloki funkcjonalne, wbudowane w typowy mikrokontroler, to:
- ALU - jednostka obliczeniowa
- CPU - pamięć centralna
- Pamięć RAM
- Układy wejść i wyjść
- Pamięć programu - ROM, Flash, FRAM
Dodatkowo, mikrokontroler może być rozbudowany o komponenty takie, jak przetworniki, zegary, czujniki i inne.
Rodzaje mikrokontrolerów
Na rynku funkcjonuje wiele mikrokontrolerów o różnych parametrach technicznych, mocy obliczeniowej i celu zastosowania. Poniżej przedstawiamy ich najpopularniejsze rodziny, powszechnie stosowane w elektronice i informatyce.
‘51
Jest to jedna z najstarszych grup mikrokontrolerów, mająca swe początki w roku 1980, w pracowni Intela. Pierwsza architektura MCS-51 (stąd potoczna nazwa ‘51) zaprojektowana została dla układów 8-bitowych. Obecnie produkcją tych systemów zajmuje się wiele firm, w tym Infineon Technologies, Atmel, czy też Nuvoton. Ogromną zaletą ‘51 jest prostota budowy, powszechnie dostępne materiały edukacyjne i możliwość korzystania z zewnętrznej pamięci. Z drugiej strony, zarzuca się im przestarzałą architekturą i niską wydajność w stosunku do częstotliwości taktowania.
Poniżej Arduino Nano z mikrokontrolerem:
AVR
Dostępne w wersji 8 i 32- bitowej, oparte na harwardzkiej architekturze RISC. Ich produkcją i dalszym rozwojem zajmuje się firma Atmel. Rodzina AVR dzieli na kolejne podtypy, jak ATiny, ATmega i ATXmega. Niektóre modele zostały wykonane ściśle z myślą o zastosowaniach specjalistycznych - w nich znajdziemy na przykład wbudowany kontroler CAN.
Mikrokontrolery AVR ceni się między innymi za ich przystosowanie do języków wysokiego poziomu, wydajność oraz prostą budowę. Z tego powodu z AVR korzysta na przykład Arduino w budowie swoich produktów. Dużą ich zaletą jest również łatwy dostęp do tutoriali, forów społeczności i gotowych paczek kodu.
PIC
Aktualnie produkowane są w fabrykach firmy Microchip Technology. Opierają się na zmodyfikowanej architekturze harwardzkiej, mającej swe początki w roku 1976. Początkowo PIC produkowano w wersji 8-bitowej, z możliwością samego odczytu. Dopiero po pewnym czasie projekt zmodyfikowano i udostępniono do użytku układy 16 i 32-bitowe z pamięcią Flash.
Użytkownicy PIC chwalą je za dużą wydajność i prostotę w zastosowaniu. Nie są jednak tak popularne, jak AVR lub Intel, przez co amatorom trudniej jest się z nimi zapoznać. Wymagają ponadto pewnej inwestycji finansowej, ponieważ środowisko programowania IDE, jak i inne narzędzia dodatkowe są płatne.
Gdzie stosuje się mikrokontrolery?
Jeśli powiemy, że “jakiś” mikrokontroler znajduje się w każdym urządzeniu elektronicznym, to nie będziemy daleko od prawdy. Tak istotnym komponentem są w świecie techniki. Znajdziemy je w urządzeniach AGD (pralki, piekarniki, kuchenki mikrofalowe), samochodach, telefonach komórkowych, elektronarzędziach, a nawet zabawkach. Tutaj jednak ich zastosowanie się nie kończy, ponieważ wykorzystywane są również w budowie sprzętu medycznego, implantów i automatyki przemysłowej.
Słowem, każde urządzenie, które pozwala na sterowanie określonym zasobem funkcji, w swej budowie zawiera mikrokontroler.
Programowanie
Wszystkie te możliwości mikrokontroler zyskuje dzięki sekwencjom kodu, które trzeba mu dostarczyć. Do programowania najczęściej wykorzystuje się język Asembler, uznawany za najbardziej efektywny w wykonywaniu tego zadania. Jest to język niskiego poziomu, pozwalający na pisanie dosyć mocno skompilowanego kodu. Drugim językiem, po który często się sięga, jest C.
Warto wspomnieć również o języku BASCOM, który powstał z myślą o mikrokontrolerach. Okazał się jednak mniej efektywny niż C, ma też bardzo wąski zakres zastosowań. Z tego względu korzysta się z niego sporadycznie, choć nie należy do trudnych.
Mikrokontroler czy mikroprocesor?
Pomiędzy mikrokontrolerami a mikroprocesorami istnieje wiele różnic. Po pierwsze, mikrokontrolery są układami o minimalnym zapotrzebowaniu na elementy pomocnicze - najlepiej jest je porównać do komputerów o mikroskopijnej wielkości, które pracują autonomicznie. Są przy tym również tańsze i konsumują mniej energii. Mikroprocesor natomiast nie jest w stanie pracować samodzielnie, będąc jedynie cząstką składową większej całości.