Arduino Nano to popularna płytka prototypowa wykorzystywana w elektronice, automatyce i robotyce. Nie jest samym mikrokontrolerem, lecz kompletnym modułem z mikrokontrolerem, układem zasilania, interfejsem USB i wyprowadzonymi sygnałami. Znajomość układu pinów pozwala prawidłowo podłączać czujniki, moduły komunikacyjne i elementy wykonawcze.

Co to jest układ wyprowadzeń Arduino Nano?

Arduino Nano to niewielka płytka rozwojowa z mikrokontrolerem ATmega328P, o wymiarach 4,5 cm na 1,8 cm. Ze względu na funkcjonalne podobieństwo do Arduino Uno często stanowi jego bardziej kompaktową alternatywę. 

Jedną z różnic jest obudowa mikrokontrolera: Arduino UNO może wykorzystywać układ w obudowie przewlekanej PDIP, natomiast Nano — w płaskiej obudowie TQFP. Płytka Nano ma 30 pinów, a sam układ w obudowie TQFP ma 32 wyprowadzenia. Klasyczne Arduino Nano korzysta ze złącza USB Mini-B i nie ma gniazda zasilania prądu stałego typowego dla Uno.

Arduino Nano Pinout 1

(Obudowa PDIP z tworzywa sztucznego)

Arduino Nano Pinout 2

(Cienka, czterostronna obudowa TQFP)

Arduino Nano sprawdza się szczególnie dobrze tam, gdzie liczą się niewielkie wymiary i możliwość montażu na płytce stykowej. Oferuje przy tym funkcje zbliżone do Arduino UNO.

Arduino Nano Pinout 3

(Arduino Nano — widok z przodu, z tyłu i z boku)

Cechy Arduino Nano

Mikrokontroler ATmega328P ma wgrany program rozruchowy, który ułatwia przesyłanie kodu do płytki. Należy do 8-bitowej rodziny AVR.

Napięcie robocze wynosi 5 V.

Napięcie zasilania doprowadzone przez VIN lub VCC może wynosić od 7 V do 12 V.

 Pamięć Flash ma pojemność 32KB, z czego 2 kB zajmuje program rozruchowy.

Częstotliwość zegara z oscylatorem kwarcowym wynosi 16 MHz.

Pamięć 2KB SRAM.

1KB pamięci EEPROM.

Arduino Nano ma 30 pinów: osiem wejść analogowych, 14 cyfrowych pinów wejścia/wyjścia, 6 pinów zasilania i 2 piny resetowania.

Pobór prądu przez samą płytkę wynosi około 19 mA.

Wartość 40 mA to absolutne maksimum prądu pojedynczego pinu I/O, a nie prąd zalecany do pracy ciągłej — bezpiecznie przyjmuje się około 20 mA na pin (szczegóły w sekcji o limitach prądu poniżej).

Niewielkie Arduino Nano mieści się na standardowej płytce stykowej, dlatego jest chętnie wybierane do prototypowania.

Obsługuje interfejsy SPI (szeregowy interfejs urządzeń peryferyjnych), USART (uniwersalny synchroniczny i asynchroniczny nadajnik-odbiornik) oraz I2C.

Arduino Nano Pinout 4

Podstawowy przykład magistrali SPI)

Używa Micro USB typu B, w przeciwieństwie do Arduino Uno.

Interfejs programowania szeregowego w układzie (ICSP) umożliwia programowanie mikrokontrolera bez wyjmowania go z płytki.

Arduino Nano Pinout 5

 (Programator ICSP ze złączem RJ11)

Specyfikacje Arduino Nano

Arduino nanoSPECYFIKACJA
MikrokontrolerATMEGA328P 
Pamięć Flash CPU32 kb (2 kb używane przez bootloader) pamięć flash
Architektura / procesorAVR 8-bit
Sram2 kb
EEPROM1 kb
Szybkośc zegaraPrędkość zegara 16 MHz
Źródło napięcia roboczego5v
Analogowe piny we/wy8
Napięcie wejściowe7v-12v
Prąd DC na piny I/O40 Ma
Cyfrowe szpilki we/wy22
Wyjście modulacji o szerokości impulsów (PWM)6
Pobór energii19 Ma
Rozmiar PCB1,8 cm x 4,5 cm
USBMicro USB typu B.
Nagłówek ICSPTAK
KomunikacjaIIC, SPI Communication, USART
Waga7 gramów
ProgramowalneArduino Ide

Rozmieszczenie wyprowadzeń Arduino Nano

W tej części opisujemy podstawowe i alternatywne funkcje poszczególnych wyprowadzeń.

Funkcje pinów Arduino Nano — tabela

Poniższe zestawienie dotyczy klasycznego Arduino Nano z mikrokontrolerem ATmega328P. Oznaczenia odnoszą się do pinów płytki, a nie do numerów wyprowadzeń obudowy mikrokontrolera. Jeden pin może pełnić kilka funkcji, zależnie od konfiguracji programu.

FunkcjaPinyOpis
Cyfrowe wejścia/wyjściaD0–D1314 pinów do odczytu i ustawiania stanów logicznych.
Wyjścia PWMD3, D5, D6, D9, D10, D11Sześć wyjść z modulacją szerokości impulsu, obsługiwanych przez analogWrite().
Wejścia analogoweA0–A7Osiem wejść do odczytu napięcia za pomocą analogRead(). A6 i A7 służą wyłącznie jako wejścia analogowe.
I2C (TWI)A4 (SDA), A5 (SCL)SDA to linia danych, a SCL — linia zegara.
SPID10 (SS), D11 (MOSI), D12 (MISO), D13 (SCK)SS służy do wyboru urządzenia, MOSI i MISO do przesyłania danych, a SCK przenosi sygnał zegarowy.
UARTD0 (RX), D1 (TX)RX odbiera dane, a TX je wysyła. Piny są również połączone z konwerterem USB–UART na płytce.
Przerwania zewnętrzneD2 (INT0), D3 (INT1)Umożliwiają wywołanie obsługi przerwania po wystąpieniu zdarzenia na wejściu.
Wbudowana dioda LEDD13Dioda korzysta z tego samego pinu co sygnał SCK interfejsu SPI.

Piny A0–A5 można też skonfigurować jako cyfrowe wejścia/wyjścia. Przy planowaniu połączeń trzeba uwzględnić współdzielenie funkcji: użycie A4 i A5 do komunikacji I2C zajmuje te same wyprowadzenia, które służą do pomiarów analogowych.

Arduino Nano Pinout: Specyfikacje, opisy pinów i programowanie

(Rozmieszczenie i funkcje pinów Arduino Nano)

Pin TX / D1 to cyfrowy pin wejścia/wyjścia używany do wysyłania danych przez sprzętowy port szeregowy.

Pin RX / D0 to cyfrowy pin wejścia/wyjścia służący do odbierania danych przez sprzętowy port szeregowy.

2 piny Reset oraz przycisk Reset służą do ponownego uruchomienia mikrokontrolera. Sygnał resetowania jest aktywny w stanie LOW.

Pin D2 i D3. Te cyfrowe piny wejścia/wyjścia obsługują przerwania zewnętrzne. Pozwalają chwilowo przerwać wykonywanie głównego programu i obsłużyć zdarzenie wymagające szybkiej reakcji.

Piny od D0 do D13 tworzą grupę 14 cyfrowych wejść/wyjść Arduino Nano. Konfiguruje się je zależnie od potrzeb za pomocą funkcji pinMode(), digitalRead() i digitalWrite(). Każdy pin ma wewnętrzny rezystor podciągający o wartości od 20Ω do 40Ω, domyślnie wyłączony. Cyfrowe wyjście może dostarczyć prąd o natężeniu do 40 mA.

Piny D3, D5, D6, D9 i D11 obsługują modulację szerokości impulsu. Można ich używać między innymi do regulacji prędkości silnika lub jasności diody LED.

Piny A0 do A7. To osiem wejść analogowych współpracujących z 8-bitowym przetwornikiem analogowo-cyfrowym (ADC). Ich wartości odczytuje się za pomocą funkcji analogRead().

Wyprowadzenia D10 wyboru urządzenia (SS), D11 danych wyjściowych kontrolera (MOSI), D12 danych wejściowych kontrolera (MISO) oraz D13 zegara szeregowego (SCK). 

Są to cyfrowe piny wykorzystywane przez interfejs SPI (Serial Peripheral Interface).

Wbudowana dioda LED (13). Z pinem cyfrowym 13 jest połączona dioda LED wbudowana w płytkę, którą program może włączać i wyłączać.

Piny A4 (SDA) i A5 (SCL). Obsługują komunikację przez interfejs dwuprzewodowy TWI, znany także jako I2C.

AREF to wejście napięcia odniesienia dla przetwornika analogowo-cyfrowego (ADC).

VIN, jeden z pinów zasilania, służy do podłączenia zewnętrznego źródła o napięciu wejściowym 7V - 12V.

3v3 to wyjście napięcia generowanego przez regulator wbudowany w płytkę Nano.

5V to regulowane napięcie zasilania używane przez płytkę Nano do zasilania jej elementów.

Pin GND jest pinem masy na płytce Nano.

Jak zasilić Arduino Nano

Arduino Nano można zasilać na kilka sposobów. Właściwy wybór wejścia i napięcia chroni płytkę przed uszkodzeniem oraz zapewnia stabilną pracę projektu.

Arduino Nano Pinout: Specyfikacje, opisy pinów i programowanie — ilustracja 2

(Arduino Nano zasilane przez złącze Mini-B USB)

Złącze Mini-B USB — po podłączeniu kabla płytka pobiera zasilanie z komputera lub innego zgodnego źródła USB.  To najwygodniejszy sposób zasilania podczas programowania i testowania.

Pin VIN — służy do doprowadzenia niestabilizowanego napięcia zewnętrznego 6-20V. Wbudowany regulator obniża je następnie do 5V potrzebnych do pracy płytki.

Pin 5V — można do niego podłączyć stabilizowane źródło 5V. Napięcie trafia wtedy bezpośrednio do obwodów płytki z pominięciem regulatora, dlatego przepięcie lub odwrotna polaryzacja mogą uszkodzić Arduino.

Limity prądu i napięcia

Klasyczne Arduino Nano z ATmega328P pracuje nominalnie przy napięciu 5 V i korzysta z logiki 5 V. Do zasilania przez VIN zaleca się typowo 7–12 V. Ten zakres dotyczy wejścia regulatora: napięcia 7–12 V nie wolno podawać na pin 5V ani na piny sygnałowe.

Zalecany prąd pojedynczego pinu wejścia/wyjścia nie powinien przekraczać około 20 mA. Wartość 40 mA to absolutne maksimum dla wyprowadzenia ATmega328P, a nie dopuszczalny prąd ciągłej pracy. Trzeba również przestrzegać łącznych limitów prądu dla grup wyprowadzeń i całego mikrokontrolera — limitu jednego pinu nie można po prostu pomnożyć przez liczbę wyjść.

Wyjście 3,3 V ma wydajność prądową około 50 mA. To limit obciążenia tego wyjścia, a nie prąd dostępny z każdego pinu. Silniki, cewki przekaźników i inne odbiorniki wymagające większego prądu należy sterować przez odpowiedni tranzystor lub sterownik, zamiast zasilać je bezpośrednio z wyprowadzeń mikrokontrolera.

Różnice między Arduino Uno a Arduino Nano

Arduino UNO i Arduino Nano oferują podobne możliwości, ale różnią się wymiarami, obudową mikrokontrolera, liczbą wyprowadzonych sygnałów i sposobem zasilania.

Arduino Nano Pinout: Specyfikacje, opisy pinów i programowanie — ilustracja 3

Arduino Nano i Arduino UNO umieszczone obok siebie

– Arduino Uno ma długość 6,9 cm, natomiast Arduino Nano ma wymiary 1,8 cm x 4.5 cm.

 – Mikrokontroler na Arduino Nano występuje w płaskiej obudowie TQFP, natomiast Arduino UNO może korzystać z układu w dwurzędowej obudowie PDIP z tworzywa sztucznego.

Mikrokontroler w obudowie TQFP ma 32 wyprowadzenia, a płytka Arduino Nano udostępnia 30 pinów. Dwa dodatkowe sygnały wykorzystuje przetwornik ADC.

 – Arduino Uno ma gniazdo zasilania prądem stałym i standardowe złącze USB, natomiast Arduino Nano korzysta z portu USB Mini-B, który służy zarówno do programowania, komunikacji, jak i zasilania.

Arduino Nano Pinout: Specyfikacje, opisy pinów i programowanie — ilustracja 4

Arduino Nano na tablicy eksperymentalnej

Programowanie Arduino Nano odbywa się w środowisku Arduino IDE.

Najpierw pobierz Arduino IDE i potrzebne sterowniki, w tym odpowiedni pakiet obsługi płytki. Po instalacji podłącz Arduino do komputera przez USB; płytka zostanie zasilona, co zasygnalizują wbudowane diody LED.

W Arduino IDE wybierz właściwy model płytki i port, a następnie otwórz wbudowany przykład migania diodą. Skompiluj program i prześlij go do Nano przyciskiem w górnym pasku. Po zakończeniu operacji dioda wbudowana w płytkę zacznie migać, potwierdzając prawidłowe wykonanie kodu. 

Podsumowanie

Arduino Nano łączy niewielkie wymiary z funkcjami potrzebnymi w wielu projektach, od obsługi czujników po systemy śledzenia gestów. 

Znajomość funkcji pinów, interfejsów SPI, I2C i portu szeregowego ułatwia bezpieczne podłączanie modułów oraz programowanie płytki. Jeśli masz pytania techniczne dotyczące Arduino Nano, zapraszamy do kontaktu.