Podłączenie diody, czujnika albo wyświetlacza do Arduino Uno zaczyna się od poprawnego rozpoznania wyprowadzeń. Schemat Arduino Uno, często opisywany angielskim określeniem arduino uno pinout, pokazuje nie tylko numery pinów, lecz także ich dodatkowe funkcje, ograniczenia prądowe i role w komunikacji z modułami.
Najważniejsze informacje o wyprowadzeniach Arduino Uno
- 14 pinów cyfrowych, w tym 6 wyjść PWM.
- 6 wejść analogowych A0-A5 z przetwornikiem 10-bitowym.
- Piny 0 i 1 obsługują komunikację szeregową UART.
- Piny 10-13 tworzą interfejs SPI, a A4 i A5 obsługują I²C.
- Maksymalny prąd pojedynczego pinu I/O wynosi 20 mA, ale silników i przekaźników nie należy zasilać bezpośrednio.

Jak czytać schemat wyprowadzeń Arduino Uno
Arduino Uno R3 ma 14 pinów cyfrowych, oznaczonych numerami od 0 do 13, oraz sześć wejść analogowych A0-A5. Każdy pin cyfrowy może pracować jako wejście lub wyjście, ale część z nich ma również dodatkowe funkcje sprzętowe.
Najprościej traktować płytkę jak zestaw kilku grup. Po jednej stronie znajdują się piny cyfrowe, niżej analogowe, a osobny blok zawiera zasilanie, masę, reset i napięcie odniesienia. Taki podział nie jest przypadkowy. Ułatwia prowadzenie przewodów i pozwala szybko znaleźć właściwe połączenie bez zgadywania.
| Grupa | Liczba pinów | Najważniejsze zastosowanie |
|---|---|---|
| Piny cyfrowe | 0-13 | Odczyt stanów logicznych i sterowanie wyjściami |
| Piny PWM | 3, 5, 6, 9, 10, 11 | Regulacja jasności, prędkości i współczynnika wypełnienia |
| Wejścia analogowe | A0-A5 | Pomiar napięcia za pomocą przetwornika ADC |
| Zasilanie | VIN, 5V, 3.3V, GND | Zasilanie płytki i podłączonych układów |
| Interfejsy | UART, SPI, I²C | Komunikacja z komputerem, czujnikami i modułami |
W praktyce najczęstszy błąd polega na utożsamianiu numeru pinu z jego jedyną funkcją. Pin 11 jest zwykłym wyjściem cyfrowym, może generować PWM, a dodatkowo pełni rolę MOSI w SPI. O tym, która funkcja będzie aktywna, decyduje program oraz używana biblioteka.
Piny cyfrowe i wyjścia PWM w codziennych projektach
Na pinach cyfrowych Arduino rozpoznaje dwa podstawowe poziomy logiczne. Stan LOW oznacza zwykle 0 V, a stan HIGH około 5 V. Jako wyjście pin może sterować diodą LED, wejściem układu logicznego albo niewielkim elementem wykonawczym.
Piny 3, 5, 6, 9, 10 i 11 mają symbol tyldy i obsługują PWM. Funkcja PWM nie wytwarza prawdziwego napięcia analogowego. Szybko przełącza pin między 0 i 5 V, a zmiana współczynnika wypełnienia daje na przykład wrażenie płynnej regulacji jasności diody.
| Piny | Funkcja dodatkowa | Typowe użycie |
|---|---|---|
| 0 RX i 1 TX | UART | Komunikacja z komputerem lub modułem szeregowym |
| 2 | Przerwanie zewnętrzne | Reakcja na przycisk, impuls lub czujnik |
| 3 | Przerwanie i PWM | Sterowanie jasnością oraz obsługa zdarzeń |
| 5 i 6 | PWM | Silniki, serwomechanizmy i diody przez odpowiedni układ |
| 9 i 10 | PWM | Regulacja mocy i komunikacja SPI |
| 11 | PWM i MOSI | Wyświetlacze, karty pamięci i inne urządzenia SPI |
| 13 | SCK i wbudowana dioda LED | Test programu oraz zegar magistrali SPI |
Wbudowana dioda na pinie 13 jest bardzo wygodna podczas testów, ale nie traktuję tego wyprowadzenia jako całkowicie neutralnego. Podczas komunikacji SPI jego stan zmienia się zgodnie z zegarem, więc podłączony element może reagować miganiem lub zakłóceniami.
Każdy pin I/O może dostarczyć najwyżej 20 mA. To wartość graniczna, a nie zalecany prąd roboczy dla każdego projektu. Diodę LED należy podłączyć przez rezystor, natomiast silnik, przekaźnik lub pasek LED powinien być sterowany przez tranzystor albo dedykowany sterownik.
Wejścia analogowe A0-A5 i pomiar napięcia
Wejścia A0-A5 współpracują z 10-bitowym przetwornikiem analogowo-cyfrowym. Przy domyślnym odniesieniu 5 V odczyt 0 odpowiada około 0 V, a wartość 1023 około 5 V. Program nie otrzymuje więc napięcia w woltach, tylko liczbę z zakresu 0-1023, którą trzeba odpowiednio przeliczyć.
Do tych pinów podłącza się między innymi potencjometry, fotorezystory, czujniki temperatury i moduły pomiarowe. Nie wolno jednak przekraczać napięcia zasilania mikrokontrolera. Podanie napięcia wyższego niż 5 V może uszkodzić wejście, dlatego przy sygnałach z układów 12 V stosuje się dzielnik napięcia lub konwerter poziomów.
Wejścia analogowe mogą też działać jak zwykłe piny cyfrowe. W kodzie odpowiadają im numery 14-19, więc A0 można wykorzystać jako dodatkowe wejście cyfrowe, gdy zabraknie pinów 0-13.
Przeczytaj również: BMP280 Arduino - Jak podłączyć i uzyskać sensowne odczyty?
AREF, SDA i SCL
Pin AREF służy do podłączenia zewnętrznego napięcia odniesienia dla przetwornika ADC. To rozwiązanie ma sens wtedy, gdy potrzebna jest większa dokładność pomiaru w określonym zakresie, ale wymaga ostrożności. Nie należy podawać zewnętrznego napięcia na AREF podczas korzystania z domyślnego odniesienia bez właściwego ustawienia w programie.
Piny A4 i A5 mają podwójną rolę. A4 działa jako SDA, czyli linia danych I²C, a A5 jako SCL, czyli linia zegara. Na płytkach Uno R3 znajdują się też osobne oznaczenia SDA i SCL obok AREF. Są elektrycznie połączone z A4 i A5, więc nie dają dwóch niezależnych kanałów I²C.
Zasilanie, masa i napięcia, których nie wolno pomylić
Pin 5V zasila układy pracujące z napięciem 5 V, a pin 3.3V może dostarczyć maksymalnie około 50 mA. To wystarcza dla prostych czujników i niewielkich modułów, ale nie dla większych wyświetlaczy, taśm LED ani silników.
| Pin lub złącze | Rola | Praktyczna uwaga |
|---|---|---|
| VIN | Wejście napięcia z zewnętrznego źródła | Najlepiej stosować około 7-12 V przy zasilaniu przez VIN lub gniazdo |
| 5V | Linia zasilania 5 V | Może zasilać płytkę z regulowanego źródła 5 V, ale wymaga poprawnej polaryzacji |
| 3.3V | Wyjście 3,3 V | Limit prądu wynosi około 50 mA |
| GND | Masa układu | Wspólna masa Arduino i podłączonego modułu jest zwykle konieczna |
| IOREF | Informacja o poziomie logicznym płytki | W Uno R3 odpowiada napięciu 5 V i pomaga shieldom dopasować logikę |
| RESET | Restart mikrokontrolera | Zwarcie do GND uruchamia ponownie program |
Przy zasilaniu przez gniazdo DC lub VIN napięcie przechodzi przez stabilizator, który może się mocno nagrzewać. Z tego powodu 12 V nie jest dobrym wyborem dla dużego obciążenia podłączonego do 5V. Do prostych projektów najbezpieczniejsze jest zasilanie USB albo dobrej jakości stabilizowane 5 V.
Arduino Uno używa logiki 5 V. Moduł pracujący wyłącznie z napięciem 3,3 V może wymagać konwertera poziomów logicznych, szczególnie gdy jego wejścia nie są odporne na 5 V. Sam fakt, że moduł da się fizycznie włożyć w płytkę stykową, nie oznacza jeszcze, że połączenie jest bezpieczne.
UART, SPI i I²C bez pomyłek
Trzy interfejsy sprzętowe odpowiadają za większość połączeń Uno z innymi urządzeniami. Różnią się liczbą przewodów, sposobem adresowania oraz tym, czy mogą współdzielić magistralę.
| Interfejs | Piny | Charakterystyka |
|---|---|---|
| UART | 0 RX, 1 TX | Połączenie szeregowe z komputerem i modułami |
| SPI | 10 SS, 11 MOSI, 12 MISO, 13 SCK | Szybka komunikacja z wyświetlaczami i kartami pamięci |
| I²C | A4 SDA, A5 SCL | Dwa przewody i adresowanie wielu urządzeń na jednej magistrali |
UART jest najprostszy, ale piny 0 i 1 są połączone z układem USB. Gdy podłączę do nich zewnętrzny moduł, na przykład GPS albo Bluetooth, może on zakłócać wgrywanie programu i komunikację z monitorem portu szeregowego.
SPI działa szybko, lecz każde urządzenie zwykle potrzebuje osobnego pinu SS. Linie MOSI, MISO i SCK mogą być wspólne dla kilku modułów, natomiast wybór konkretnego urządzenia odbywa się przez jego własny sygnał CS lub SS. I²C potrzebuje tylko SDA i SCL, ale urządzenia muszą mieć różne adresy, a magistrala wymaga poprawnych rezystorów podciągających.
Jak podłączać elementy, żeby nie uszkodzić płytki
Przed podaniem zasilania sprawdzam trzy rzeczy: napięcie modułu, wspólną masę oraz kierunek sygnałów. Ta krótka kontrola eliminuje większość kosztownych pomyłek początkujących, zwłaszcza zamianę 5V z GND albo podanie napięcia na pin skonfigurowany jako wyjście.
- Ustal, czy element potrzebuje 5 V czy 3,3 V.
- Połącz masę modułu z jednym z pinów GND Arduino.
- Wybierz pin zgodnie z potrzebną funkcją, na przykład PWM, ADC, SPI lub I²C.
- Dodaj rezystor, tranzystor, sterownik albo konwerter poziomów, jeśli obciążenie tego wymaga.
- Uruchom najpierw prosty test, zamiast od razu podłączać cały układ.
Typowy przykład to dioda LED. Łączę ją z pinem cyfrowym przez rezystor o wartości około 220-330 Ω, a drugi koniec prowadzę do GND. Przy przycisku często stosuję rezystor podciągający, na przykład przez INPUT_PULLUP, dzięki czemu nie pozostawiam wejścia w stanie przypadkowym.
Nie podłączam bezpośrednio do pinów Arduino silników, cewek przekaźników ani dużych odbiorników. Potrzebny jest tranzystor lub moduł sterownika, a przy obciążeniach indukcyjnych także dioda zabezpieczająca. To właśnie te elementy, a nie sam program, najczęściej decydują o tym, czy układ będzie działał stabilnie.
Trzy zasady, które ratują większość projektów z Uno
Najważniejsza zasada brzmi prosto: numer pinu to dopiero początek informacji. Zawsze sprawdzam, czy wybrane wyprowadzenie nie jest jednocześnie używane przez UART, SPI, I²C albo wbudowaną diodę LED.
Druga sprawa to napięcie i prąd. Pin logiczny nie jest zasilaczem, a limit 20 mA nie oznacza, że można bezpośrednio sterować dowolnym urządzeniem. Gdy obciążenie jest większe, stosuję osobne źródło zasilania i element wykonawczy.
Na koniec warto pamiętać, że schemat dotyczy konkretnej wersji płytki. Arduino Uno R3, klony oraz nowsze warianty z rodziny Uno mogą mieć inne mikrokontrolery, złącza lub poziomy logiczne. Przed montażem sprawdzam oznaczenie wersji na płytce, a dopiero potem dobieram połączenia i kod.