Arduino niewątpliwie stało się niezwykle popularne wśród elektroników, ponieważ może zapewnić wysoce skuteczne rozwiązanie szerokiego zakresu problemów przy minimalnych kosztach. Aby sprostać różnym wymaganiom, dostępnych jest kilka wersji Arduino, umożliwiających integrację mikrokontrolera z systemami praktycznie dowolnej wielkości.
Co zawiera płytka?
Najpopularniejszą wersją Arduino jest niewątpliwie Uno, ale w przypadku mniejszych zastosowań, szczególnie tam, gdzie nie jest potrzebny rezydentny interfejs USB, może to być przesada. Arduino Pro Mini rozwiązuje ten problem, zapewniając atrakcyjną alternatywę w maleńkim opakowaniu wielkości znaczka pocztowego. Podobnie jak jego starszy brat, Pro Mini zawiera praktycznie wszystko, czego potrzebujesz do wdrożenia kompletnego systemu mikrokontrolera. Jedyne dodatkowe elementy to źródło zasilania i możliwość podłączenia urządzenia programującego poprzez interfejs szeregowy oraz kabel USB.
Pro Mini będzie działał bez problemu na zasilaniu akumulatorowym o napięciu znamionowym 3,7 V lub 9 V, co czyni go idealnym w aplikacjach przenośnych, gdzie zasilanie sieciowe jest niedostępne. Alternatywnie Uno może czerpać energię z zewnętrznego źródła prądu stałego o napięciu od 5 V do 12 V lub poprzez zewnętrzny z portu USB.
Pro Mini zapewnia w sumie 14 cyfrowych linii wejścia/wyjścia wraz z sześcioma wejściami analogowymi. W razie potrzeby sygnały na sześciu z 14 cyfrowych linii we/wy mogą generować sygnał z modulacją szerokości impulsu – PWM, co w pewnym stopniu pozwala na uzyskanie sygnałów analogowych.
Procesor Atmega328P
Pro Mini zawiera ten sam procesor ATmega328P, co Arduino Uno i zapewnia wysoki stopień kompatybilności oprogramowania i sprzętu. Procesor ma 32 kB pamięci Flash służącej do przechowywania kodu programu (z czego 2 kB jest zarezerwowane na kod bootloadera). Pro Mini ma również 2 kB statycznej pamięci RAM (SRAM) i 1 kB programowanej z poziomu programu pamięci nieulotnej EEPROM.
ATmega328 zawiera dwa 8-bitowe timery/liczniki z oddzielnym trybem wstępnego skalowania i porównania oraz jeden 16-bitowy timer/licznik z oddzielnym wstępnym skalowaniem. Układ zawiera sześć kanałów z modulacją szerokości impulsu (PWM) dostępnych z podzbioru cyfrowych pinów we/wy. Przy odpowiednim kondycjonowaniu sygnału można je użyć do generowania quasi-analogowych napięć wyjściowych. Procesor zawiera również sześciokanałowy, 10-bitowy przetwornik analogowo-cyfrowy (ADC) i szereg portów komunikacyjnych, w tym programowalny port szeregowy USART, interfejs szeregowy SPI i dwuprzewodowy port szeregowy zgodny z I²C. Jako bonus, chip zawiera również programowalny licznik watchdog.
ATmega328 ma w sumie 23 linie wejścia/wyjścia (I/O). Zanim przejdziemy do omówienia ich możliwości, należy pamiętać, że linie we/wy ATmega328 można skonfigurować programowo do różnych funkcji. Przykładowo, linia oznaczona jako PB3 (tzn. Port B, bit 3) zapewnia wyjście danych urządzenia Master i wejście danych urządzenia Slave, gdy jest uruchomiony sprzętowy kontroler magistrali Serial Peripheral Interface – SPI. Alternatywnie można go skonfigurować tak, aby zapewniał zewnętrzne wyjście dla funkcji timera PWM lub jako zewnętrzne źródło przerwań. Na początku może to wydawać się nieco skomplikowane, ale w znaczący sposób przyczynia się do szerokich możliwości układu i jego ogromnej wszechstronności.