Mikrokontrolery i mikrokomputery – z czym to się je?

Pewnie dużo z was słyszało o Arduino albo Raspberry Pi. Są to (odpowiednio) μKontroler i μKomputer (μ to grecka litera oznaczająca przedrostek mikro). Więc, od początku, jakie mają możliwości?
Arduino jest mikrokontrolerem, zależnie od wersji opakowanym w specyficznego rodzaju shielda, zawierającego m. in.

  • regulator napięcia 5V
  • gniazdo usb
  • gniazdo zasilaczowe (tzw. DC Jack)
  • wyprowadzone headery (żeńskie wersje goldpinów)
  • diody sygnalizujące zasilanie, odbiór danych, wysył danych i diodę, która może być przez nasz programowana

Mikrokontroler zastosowany w Arduino różni się w zależności od wybranej wersji, np. w Arduino Mega rev. 3 znajduje się chip ATmega 2560.
Każdy mikrokontroler ma kilka lub kilkanaście wyjść-wejść zwanych popularnie pinami, część z nich może być tylko cyfrowa (potrafi dawać na wyjściu oraz przyjmować na wejściu tylko 2 stany – HIGH i LOW, odpowiadające maksymalnemu napięciu, które w Arduino wynosi 5V, oraz jego brakowi), analogowa (przyjmuje na wejściu dowolne napięcie od 0 do napięcia płytki, które zależnie od modelu wynosi 5 lub 3.3V, alternatywnie można wykorzystać napięcie odniesienia z mikrokontrolera, które wynosi zależnie od wybranej płytki 1.1V lub 2.56V, w Arduino Mega dostępne są oba te poziomy, można też użyć pinu AREF [Analog Reference – Napięcie znamionowe pinów analogowych], do którego doprowadzamy napięcie z zakresu od 0 do 5V) oraz PWM (Pulse Width Modulation – piny te mają możliwość modulacji szerokości sygnału, by imitować wyjście analogowe).
Mikrokontroler po podłączeniu do komputera nasłuchuje na porcie szeregowym, jednak po wyjęciu z pudełka będzie tylko migał diodą. By coś na nim zrobić, trzeba go zaprogramować. Najprostszym sposobem na to jest użycie Arduino IDE oraz języka C++.
Kolejnym urządzeniem na naszej liście jest Raspberry Pi, także dostępne w kilku wersjach (A, B A+, B+, 2A, 2B). Jest to pełnoprawny (mikro) komputer, postawiony na procesorze znanym z telefonów i tabletów, czyli Cortex-A7, taktowany zegarem 900MHz, który można podkręcić nawet do 1,1-1,2GHz z chłodzeniem! Posiada także:

  • 1 GB RAM-u,
  • 4 porty USB,
  • 40 pinów GPIO,
  • port HDMI,
  • port Ethernet,
  • 3.5mm jack, który służy za wyjście audio z wbudowanej karty dźwiękowej i wideo kompozytowego,
  • CSI (Camera Interface),
  • DSI (Display Interface),
  • Slot na kartę microSD, która jest używana w charakterze dysku systemowego,
  • układ graficzny VideoCore IV 3D.
Dzięki temu procesorowi, malinka może uruchamiać praktycznie wszystko, co zostało stworzone z myślą o ARM, w tym najnowszego Windowsa! Dzięki temu, że jest to komputer, może być wykorzystywany do pracy, szczególnie polecam tu programowanie 😀 Posiada on także 40 goldpinów, ale tu niestety musimy się zadowolić samymi pinami cyfrowymi (No dobra, jest jeden PWM :P), magistralą SPI, UART i I2C, tyle że nie w tym objawia się jego siła. Jego siła polega bowiem na dużej mocy obliczeniowej udostępnianej przez procesor. Dzięki temu możliwe jest zrobienie bardzo skomplikowanych, wielowątkowych systemów, które implementują wiele rozwiązań, których Arduino nie obsłuży bez dodatkowych modułów, które i tak mają bardzo małe możliwości. Jednym z najpopularniejszych zastosowań malinki jest system inteligentnego domu, co pokazuje, co potrafi ta platforma.
Którą platformę polecam? To wszystko zależy od tego, co chcemy z nią robić. Jeżeli bardziej pasjonujemy się elektroniką to dobrym wyborem będzie Arduino. Jakie, napiszę w kolejnym poście. Jeżeli za to chcemy robić bardziej ambitne, programistyczne projekty to w pełni mogę polecić Raspberry Pi. Ja posiadam oba i nie żałuję, bo pasjonuję się i elektroniką, i programowaniem (bardziej tym drugim 😉 ) Dzięki temu mam więcej tematów na kolejne posty 🙂