Pinout Arduino Nano: Diagram Pin, A6/A7, Daya, dan Old Bootloader
Pinout Arduino Nano dalam satu panduan: D0–D13, A0–A7 (A6/A7 hanya analog), pin PWM, VIN/5V/3V3, driver CH340, Old Bootloader, dan peta pin Uno ke Nano.
Pinout Arduino Nano terdiri dari 30 pin yang berjajar di sepanjang dua sisi panjang board berukuran 45 × 18 mm: 14 pin input/output digital (D0–D13), 6 di antaranya bisa mengeluarkan PWM (~3, 5, 6, 9, 10, 11), 8 input analog (A0–A7), serta pin daya dan kontrol: VIN, 5V, 3V3, AREF, dua GND, dan dua RST. Karena Nano memakai prosesor ATmega328P yang sama dengan Arduino Uno, nomor dan fungsi pinnya juga sama: sketch yang ditulis untuk Uno berjalan tanpa perubahan apa pun, selain memilih Nano di menu board.
Meski begitu, ada beberapa detail penting yang membedakan Nano dari Uno, dan justru di situlah pemula sering mentok: A6 dan A7 hanya analog, tidak ada jack DC, pin 3V3 hanya memberi arus yang sangat kecil, board klon menangani USB dengan chip CH340, dan kamu sering perlu memilih ATmega328P (Old Bootloader) untuk meng-upload kode. Di panduan ini kamu akan mengenal setiap pin, belajar menempatkan Nano di breadboard dengan benar, melihat pemetaan pin Uno ke Nano, dan mengetahui perbedaan Nano Every dan Nano ESP32 dengan Nano klasik.

Apa itu Arduino Nano, dan apa bedanya dengan Uno?
Arduino Nano mengemas semua fitur inti Uno ke dalam board berukuran 45 × 18 mm dengan berat sekitar 7 gram. Pin-pinnya menghadap ke bawah, jadi bisa langsung ditancapkan ke breadboard; artinya kabel jumper lebih sedikit, dan begitu rangkaian selesai, board ini mudah dipindahkan ke dalam kotak atau ke papan sirkuit permanen. Di dalamnya ada ATmega328P 16 MHz yang sama seperti di Uno, level logikanya 5 V, dan library yang sama bekerja tanpa perubahan. Di Nano original, komunikasi USB-ke-serial ditangani chip FT232RL; hampir semua klon murah di pasaran memakai CH340G atau CH340C di sisi bawah board sebagai gantinya. Untuk mobil robot, perangkat wearable, remote, dan rangkaian apa pun yang harus muat di dalam kotak, Nano adalah pilihan yang lebih praktis daripada Uno.
| Fitur | Arduino Nano (V3) |
|---|---|
| Mikrokontroler | ATmega328P, 8-bit, 16 MHz (kemasan TQFP-32) |
| Tegangan logika (kerja) | 5 V |
| Tegangan input VIN | 7–12 V disarankan |
| Input/output digital | 14 pin (D0–D13); 20 jika termasuk A0–A5 |
| Output PWM | 6 pin: D3, D5, D6, D9, D10, D11 |
| Input analog | 8 pin (A0–A7), 10-bit (0–1023) |
| Arus per pin | 20 mA disarankan, 40 mA maksimum mutlak |
| Memori | Flash 32 KB (30.720 byte bisa dipakai di IDE), SRAM 2 KB, EEPROM 1 KB |
| USB | Mini-B; FT232RL (original) atau CH340 (klon) |
| Ukuran dan berat | 45 × 18 mm, sekitar 7 g |
Diagram pin Arduino Nano: pin mana ada di mana?
Ke-30 pin Nano tersusun dalam dua baris berhadapan, masing-masing 15 pin, dengan jarak antarbaris 15,24 mm (0,6 inci). Letakkan board di depanmu dengan soket mini USB paling dekat denganmu, dan kamu akan melihat dua pin berhadapan tepat di sebelah soket: D12 dan D13. Baris dengan D13 berisi 3V3, AREF, A0–A7, dan pin daya; baris dengan D12 berisi pin digital dari D11 turun sampai D2, diikuti GND, RST, RX0 (D0), dan TX1 (D1). Di ujung kedua baris yang paling jauh dari USB, VIN dan TX1 saling berhadapan, dan header ICSP 2×3 juga ada di ujung ini. Di sekitar tombol reset di tengah kamu akan menemukan LED daya (POW atau ON), LED L yang terhubung ke D13, serta LED TX dan RX yang berkedip selama upload.
| Posisi (dari USB) | Baris analog dan daya | Baris digital | Catatan |
|---|---|---|---|
| 1 | D13 (SCK, LED L) | D12 (MISO) | Tepat di sebelah soket USB |
| 2 | 3V3 | ~D11 (MOSI) | 3V3 hanya memberi arus yang sangat kecil |
| 3 | AREF | ~D10 (SS) | - |
| 4 | A0 | ~D9 | - |
| 5 | A1 | D8 | - |
| 6 | A2 | D7 | - |
| 7 | A3 | ~D6 | - |
| 8 | A4 (SDA) | ~D5 | Jalur data I2C |
| 9 | A5 (SCL) | D4 | Jalur clock I2C |
| 10 | A6 | ~D3 (INT1) | A6 hanya analog |
| 11 | A7 | D2 (INT0) | A7 hanya analog |
| 12 | 5V | GND | 5V dan GND saling berhadapan |
| 13 | RST | RST | Keduanya jalur reset yang sama |
| 14 | GND | D0 (RX0) | D0 tersambung ke chip USB-serial |
| 15 | VIN | D1 (TX1) | Header ICSP ada di ujung ini |
Pin digital (D0–D13), PWM, dan fungsi khusus
Setiap pin digital diatur sebagai input atau output dengan pinMode(); sebagai output, HIGH memberi sekitar 5 V dan LOW memberi 0 V. Supaya input tidak dibiarkan mengambang, kamu bisa menyalakan resistor internal chip sebesar 20–50 kΩ dengan INPUT_PULLUP. Arus aman per pin adalah 20 mA; LED merah dengan resistor 220 Ω menarik sekitar 13 mA, dan kamu bisa menemukan resistor yang tepat dengan kalkulator resistor LED. Beberapa pin punya fungsi tambahan, dan mengetahuinya sejak awal mencegah bentrokan begitu proyekmu membesar:
| Pin | Fungsi tambahan | Yang perlu diperhatikan |
|---|---|---|
| D0 (RX), D1 (TX) | Port serial hardware (Serial) | Tersambung ke chip USB-serial lewat resistor 1 kΩ; biarkan kosong selama upload |
| D2, D3 | Interrupt eksternal INT0, INT1 | attachInterrupt() hanya bekerja di dua pin ini |
| ~D3, ~D11 | PWM, Timer2 (sekitar 490 Hz) | PWM di pin ini rusak selama tone() berbunyi |
| ~D5, ~D6 | PWM, Timer0 (sekitar 980 Hz) | Timer yang sama dengan millis() dan delay() |
| ~D9, ~D10 | PWM, Timer1 (sekitar 490 Hz) | Library Servo mematikan PWM di dua pin ini |
| D10–D13 | SPI: SS, MOSI, MISO, SCK | D10 harus tetap output ketika memakai SPI |
| D13 | LED L bawaan board | LED dan resistornya tersambung langsung ke pin |
Detail kecil tapi penting yang membedakan Nano dari Uno ada di D13. Di Uno R3, LED L digerakkan lewat op-amp, sedangkan di Nano LED dan resistornya tersambung langsung ke pin. Kalau kamu memakai D13 sebagai input tombol dengan INPUT_PULLUP, LED itu menarik pin ke bawah dan kamu bisa membaca LOW walaupun tombolnya tidak ditekan; simpan pin ini untuk output atau SPI. Cara kerja PWM dan arti nilai analogWrite() bisa kamu temukan di Apa Itu PWM?, dan interrupt di interrupt Arduino.
Pin analog A0–A7: kenapa A6 dan A7 berbeda?
Delapan input analog Nano mengukur tegangan antara 0 dan 5 V dengan resolusi 10-bit: analogRead() mengembalikan angka dari 0 sampai 1023, dan satu langkahnya sekitar 4,9 mV. Kalau perlu, A0–A5 juga bisa bekerja sebagai pin digital biasa (A0 = 14 … A5 = 19), dan A4 serta A5 merangkap jalur SDA dan SCL bus I2C. A6 dan A7, yang tidak dimiliki Uno, adalah dua channel ADC tambahan yang ada di kemasan surface-mount (TQFP) ATmega328P. Kedua channel ini hanya terhubung ke konverter analog-ke-digital; di belakangnya tidak ada register port, driver output, atau resistor pull-up. Karena itu pinMode(), digitalRead(), digitalWrite(), dan INPUT_PULLUP tidak bekerja di dua pin ini.
A6 dan A7 yang hanya analog mungkin terlihat seperti kekurangan, tapi kamu bisa memanfaatkannya dengan cerdik. Kalau kamu menyambungkan beberapa tombol ke satu pin analog lewat resistor dengan nilai berbeda, setiap tombol menghasilkan tegangan yang berbeda; dengan begitu kamu membaca empat tombol dengan satu pin dan menyisakan pin digital untuk motor dan layar. Di rangkaiannya, sambungkan A6 ke 5V lewat resistor 10 kΩ; sambungkan tombol pertama langsung antara A6 dan GND, dan tiga tombol lainnya ke GND lewat resistor 2,2 kΩ, 4,7 kΩ, dan 10 kΩ secara berurutan.
1// A6'da 4 buton: 10 kΩ pull-up + farklı seri dirençler / 4 buttons on A6: 10 kΩ pull-up + different series resistors
2const byte LADDER_PIN = A6; // yalnız analog pin / analog-only pin
3
4byte readButton() {
5 int v = analogRead(LADDER_PIN);
6 if (v < 92) return 1; // 0 Ω -> yaklaşık 0 / about 0
7 if (v < 256) return 2; // 2,2 kΩ -> yaklaşık 184 / about 184
8 if (v < 419) return 3; // 4,7 kΩ -> yaklaşık 327 / about 327
9 if (v < 767) return 4; // 10 kΩ -> yaklaşık 512 / about 512
10 return 0; // basılı değil -> 1023 / not pressed -> 1023
11}
12
13void setup() {
14 Serial.begin(9600);
15}
16
17void loop() {
18 static byte lastButton = 0;
19 byte b = readButton();
20 if (b != lastButton) {
21 delay(20); // kontak sıçramasını bekle / wait out contact bounce
22 b = readButton(); // değeri doğrula / confirm the value
23 if (b != lastButton) {
24 lastButton = b;
25 if (b != 0) {
26 Serial.print(F("Buton / Button: "));
27 Serial.println(b);
28 }
29 }
30 }
31}| Tombol | Resistor seri ke GND | analogRead yang diharapkan | Rentang yang diterima di kode |
|---|---|---|---|
| Tombol 1 | 0 Ω (langsung) | 0 | 0–91 |
| Tombol 2 | 2,2 kΩ | Sekitar 184 | 92–255 |
| Tombol 3 | 4,7 kΩ | Sekitar 327 | 256–418 |
| Tombol 4 | 10 kΩ | Sekitar 512 | 419–766 |
| Tidak ada | - | 1023 | 767–1023 |
Nilai-nilai itu berasal dari rumus analogRead = 1023 × R / (10 kΩ + R), dan setiap ambang berada tepat di tengah antara dua nilai yang bersebelahan. Karena resistor pull-up dan ADC diberi daya dari jalur 5 V yang sama, hasil pembacaan tidak berubah walaupun catu dayanya turun ke 4,7 V; ini disebut pengukuran rasiometrik. Kalau dua tombol ditekan bersamaan, resistornya menjadi paralel dan pembacaannya turun: kode melihat tombol bernomor lebih kecil, bahkan menekan 3 dan 4 bersamaan terbaca sebagai 2. Karena itu tangga resistor cocok untuk menu yang hanya menekan satu tombol dalam satu waktu. Kamu bisa mencoba hitungan pembaginya dengan kalkulator pembagi tegangan dan membaca lebih lanjut soal pembacaan analog di artikel ADC.
Pin daya: VIN, 5V, 3V3, dan GND
| Pin | Fungsinya | Batas dan peringatan |
|---|---|---|
| VIN | Memberi daya ke board dengan 7–12 V; regulator menurunkannya ke 5 V | AMS1117 di klon tahan paling tinggi 15 V dan cepat panas di 12 V |
| 5V | Jalur 5 V board: sebagai output memberi daya ke sensor, sebagai input menerima 5 V yang sudah diregulasi | Sekitar 4,7 V lewat USB; jangan pernah memberinya lebih dari 5 V dari luar |
| 3V3 | Output 3,3 V | Berasal dari FT232RL di board original dan dari CH340 di klon; arusnya sangat terbatas |
| GND (2 pin) | Ground bersama | GND setiap catu daya eksternal harus tersambung ke sini |
| RST (2 pin) | Me-restart board ketika ditarik ke LOW | Untuk tombol reset eksternal; keduanya jalur yang sama |
| AREF | Input referensi eksternal untuk pengukuran analog | Panggil analogReference(EXTERNAL) sebelum memakainya |
Kamu bisa memberi daya ke Nano dengan tiga cara. Ketika diberi daya lewat USB, 5 V datang dari komputer melalui dioda Schottky; dioda ini menurunkan sekitar 0,3 V, jadi biasanya kamu akan mengukur 4,6–4,8 V di pin 5V, dan dioda MBR0520 di board original diberi rating paling tinggi 500 mA. Kalau kamu memberi 7–12 V ke pin VIN, regulator di sisi bawah (LM1117 di board original, biasanya AMS1117 di klon) menurunkannya ke 5 V. Regulator mengubah kelebihan tegangan menjadi panas: daya yang dibuangnya adalah (VIN − 5 V) × arus, jadi menarik 150 mA dari input 12 V membuat regulator kecil itu membakar sekitar 1 W dan terlalu panas untuk disentuh. Karena itu 7–9 V ideal untuk VIN. Cara ketiga adalah memberi 5 V yang sudah diregulasi ke pin 5V dari luar; regulatornya kemudian dilewati, dan dioda di sisi USB mencegah arus mengalir balik ke komputermu. Kalau kamu memakai catu daya 12 V, memakai buck converter LM2596 untuk membuat 5 V lalu memasukkannya ke pin 5V adalah solusi yang jauh lebih adem; semua pilihan pemberian daya dibahas di Cara Memberi Daya Arduino.
Pin 3V3 adalah pin Nano yang paling sering disalahpahami. Di Uno pin ini berasal dari regulator terpisah, tapi Nano klasik tidak punya regulator 3,3 V terpisah. Di Nano original, 3,3 V berasal dari regulator kecil di dalam chip FT232RL (paling tinggi 50 mA), dan menurut dokumentasi lama Arduino output ini tidak tersedia ketika board tidak diberi daya lewat USB. Di kebanyakan klon, pin ini tersambung ke regulator internal milik CH340 sendiri dan hanya aman untuk beban beberapa mA. Jadi jangan beri daya modul 3,3 V seperti nRF24L01, ESP-01, atau RC522 dari pin ini; pakai regulator AMS1117-3.3 terpisah yang diberi daya dari pin 5V. Dan ketika menyambungkan output Nano 5 V ke input modul 3,3 V, pasang level shifter atau pembagi tegangan di antaranya.
Pin 5V yang berada di sekitar 4,7 V lewat USB juga memengaruhi pengukuran analog: analogRead() memakai tegangan catu sebagai batas atasnya, jadi kalau kamu memasukkan 5,0 V ke perhitunganmu, hasilnya meleset 4–6 persen. Kamu bisa menghitung tegangan catu sebenarnya dengan mengukur referensi tetap internal ATmega328P yang sekitar 1,1 V. Sketch uji pertama di bawah melakukan persis hal itu, mengubah kedelapan input analog menjadi volt memakai tegangan catu sebenarnya, dan mengedipkan LED L di D13:
1// Arduino Nano: A0-A7'yi ve gerçek besleme gerilimini oku / read A0-A7 and the real supply voltage
2const byte ANALOG_PINS[8] = {A0, A1, A2, A3, A4, A5, A6, A7};
3
4long readVccMillivolts() {
5 // Referans AVcc, ölçülen kanal dahili 1,1 V / reference AVcc, measured channel internal 1.1 V
6 ADMUX = _BV(REFS0) | _BV(MUX3) | _BV(MUX2) | _BV(MUX1);
7 delay(2); // referansın oturmasını bekle / let the reference settle
8 ADCSRA |= _BV(ADSC); // dönüşümü başlat / start the conversion
9 while (bit_is_set(ADCSRA, ADSC)) {} // bitmesini bekle / wait until it finishes
10 unsigned int raw = ADC; // 10 bit sonuç / 10-bit result
11 return 1125300L / raw; // 1,1 V x 1023 x 1000 / 1.1 V x 1023 x 1000
12}
13
14void setup() {
15 Serial.begin(9600);
16 pinMode(LED_BUILTIN, OUTPUT); // D13'teki L LED'i / L LED on D13
17}
18
19void loop() {
20 long vcc = readVccMillivolts();
21 analogRead(A0); // kanal değişti, ilk okumayı at / channel changed, discard the first reading
22 Serial.print(F("Vcc: "));
23 Serial.print(vcc);
24 Serial.print(F(" mV |"));
25 for (byte i = 0; i < 8; i++) {
26 int raw = analogRead(ANALOG_PINS[i]); // A6 ve A7 de okunur / A6 and A7 are read too
27 Serial.print(F(" A"));
28 Serial.print(i);
29 Serial.print(F("="));
30 Serial.print(raw * (vcc / 1000.0) / 1023.0, 2); // gerçek Vcc ile volta çevir / convert to volts using the real Vcc
31 }
32 Serial.println();
33 digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN)); // L LED'ini çevir / toggle the L LED
34 delay(1000);
35}Setelah meng-upload, buka Serial Monitor di 9600 baud. Nilai Vcc seharusnya sekitar 4600–4800 mV lewat USB dan sekitar 5000 mV ketika diberi daya lewat VIN. Pin analog yang tidak tersambung menunjukkan nilai acak; kalau kamu menyambungkan potensiometer ke A0 lalu memutarnya, nilainya akan berubah mulus antara 0 dan Vcc. Referensi internal bisa berbeda ±10% dari chip ke chip; untuk hasil yang lebih akurat, ukur pin 5V dengan multimeter lalu kalikan konstanta 1125300 di kode dengan rasio nilai hasil ukurmu / nilai yang ditampilkan kode. Karena sketch ini memakai register ATmega328P secara langsung, ia tidak akan bekerja di Nano Every atau Nano ESP32.
Mini USB, CH340, dan instalasi driver
Nano klasik punya soket USB Mini-B; kabel Micro-USB atau USB-C yang dipakai untuk ponsel tidak akan muat. Beberapa klon baru punya soket Micro-USB atau USB-C, tapi kebanyakan masih mini USB. Alasan paling umum board sama sekali tidak muncul di daftar port adalah kabel khusus pengisian daya tanpa kabel data: LED daya menyala, tapi komputer tidak melihat board-nya. Kalau kabelnya baik, balik board-nya dan lihat chip di dekat soket USB. Kalau tertulis FT232RL, kamu punya Nano original dan driver-nya biasanya sudah ada di sistem operasi; kalau tertulis CH340G atau CH340C, kamu punya klon.
Windows 10 dan 11 sering menginstal driver CH340 sendiri lewat Windows Update, dan board-nya muncul di Device Manager dengan nama seperti USB-SERIAL CH340 (COM3). Kalau kamu melihat USB2.0-Serial dengan tanda seru kuning di bawah Other devices, instal driver CH341SER dari pembuat chip WCH, lalu cabut board-nya dan colokkan lagi. Versi macOS terbaru sudah menyertakan driver-nya; port muncul sebagai /dev/cu.usbserial-…, dan menginstal driver lama di atasnya bisa menimbulkan bentrokan. Di Linux driver-nya sudah ada di kernel; kalau port langsung hilang begitu board dicolokkan di Ubuntu 22.04 atau yang lebih baru, paket pembaca layar brltty sedang merebut CH340, dan kalau kamu tidak memakainya, kamu bisa menghapusnya dengan sudo apt remove brltty. Semua masalah port dan driver dibahas di Arduino Gagal Upload, dan perbedaan antar-chip USB-serial di konverter USB-TTL.
Meng-upload kode: ATmega328P atau Old Bootloader?
- Di Arduino IDE, pilih Tools > Board > Arduino AVR Boards > Arduino Nano.
- Colokkan board-nya dan pilih port yang baru muncul di Tools > Port (seperti COM3 di Windows atau /dev/cu.usbserial-… di macOS).
- Di Tools > Processor, coba dulu meng-upload contoh Blink dengan opsi ATmega328P.
- Kalau output mengulang programmer is not responding atau not in sync selama sepuluh percobaan, atur Processor ke ATmega328P (Old Bootloader) lalu upload lagi.
- Kalau masih gagal, coba port USB lain, lepaskan kabel apa pun dari D0 dan D1, dan cek apakah LED L berkedip cepat ketika kamu menekan tombol reset.
- Catat opsi mana yang berhasil; Nano lain dari penjual yang sama kemungkinan besar butuh pengaturan yang sama.
Alasan kebingungan ini adalah perubahan yang dibuat pada 2018. Arduino mengganti bootloader lama Nano berukuran 2 KB (ATmegaBOOT) dengan Optiboot 512 byte yang dipakai di Uno. Optiboot menerima kode di 115200 baud, sedangkan bootloader lama mengharapkan 57600 baud; ketika kecepatannya tidak cocok, board terlihat sama sekali tidak merespons. Karena pembuat klon terus mengirim board dengan bootloader lama selama bertahun-tahun, IDE menawarkan kedua opsi, dan salah memilih tidak merusak board. Kalau mau, kamu bisa memakai Arduino kedua sebagai ArduinoISP untuk menanamkan bootloader baru ke Nano: upload jadi lebih cepat dan loop reset tanpa akhir milik bootloader lama setelah reset watchdog juga hilang.
| Opsi Processor | Bootloader | Kecepatan upload | Ruang untuk kode |
|---|---|---|---|
| ATmega328P | Optiboot (sejak 2018) | 115200 baud | 30.720 byte |
| ATmega328P (Old Bootloader) | ATmegaBOOT (lama) | 57600 baud | 30.720 byte |
| ATmega168 | ATmegaBOOT (lama) | 19200 baud | 14.336 byte |
Penempatan di breadboard dan penyolderan

Ketika menancapkan Nano ke breadboard, tempatkan sehingga kedua baris pinnya berada di kedua sisi kanal tengah. Dengan begitu setiap pin masuk ke jalurnya sendiri, dan kamu bisa menyambungkan kabel ke pin itu lewat lubang kosong di jalur tersebut. Karena board-nya menutupi kanal dan lubang di antara pin, hanya tersisa beberapa lubang di sebelah setiap pin; di breadboard 830 titik yang umum, kalau board-nya diletakkan di tengah kanal, kamu mendapat 2 lubang kosong di satu sisi dan 3 di sisi lain. Menghadapkan soket USB ke sisi pendek breadboard memudahkan kabel dicolokkan. Lalu sambungkan pin 5V dan GND Nano ke jalur daya merah dan biru breadboard supaya kamu bisa memberi daya ke sensor dari sana. Untuk menyegarkan ingatan soal koneksi di dalam breadboard, lihat Apa Itu Breadboard?.
- Menyolder header: Di klon yang datang dengan pin lepas, tancapkan dulu header male ke breadboard, letakkan Nano di atasnya, lalu solder dalam posisi itu; breadboard menahan header tetap lurus dan berjarak tepat 0,6 inci. Tekniknya bisa kamu temukan di Cara Menyolder.
- Mencabutnya: Mengangkat board dari satu ujung membuat pinnya bengkok; angkat kedua ujungnya sedikit demi sedikit, atau selipkan obeng pipih di bawahnya dan tarik keluar secara merata.
- Kontak longgar: Di breadboard lama atau murah, pegasnya aus; Nano sesekali reset atau sebuah sensor kadang terputus. Coba pindahkan board ke area lain di breadboard.
- Board ekspansi Nano: Di proyek permanen, shield I/O Nano dengan terminal sekrup atau header 3 pin yang memberi sinyal, 5V, dan GND untuk setiap pin sangat mengurangi kekusutan kabel.
- Breadboard mini: Breadboard kecil 170 titik tidak punya jalur daya; arahkan 5V dan GND ke jalur terpisah dan tandai dengan warna kabel.
Tabel pemetaan pin Arduino Uno ke Nano
| Fungsi | Arduino Uno R3 | Arduino Nano | Catatan |
|---|---|---|---|
| I/O digital | D0–D13 | D0–D13 | Nomor dan fungsi sama |
| PWM | ~3, 5, 6, 9, 10, 11 | ~3, 5, 6, 9, 10, 11 | Frekuensi dan timer sama |
| Input analog | A0–A5 | A0–A7 | A6 dan A7 hanya ada di Nano dan hanya analog |
| I2C SDA / SCL | A4 / A5 (salinan di sebelah AREF) | A4 / A5 | Tidak ada pin SDA/SCL terpisah di Nano |
| SPI SS / MOSI / MISO / SCK | 10 / 11 / 12 / 13 | 10 / 11 / 12 / 13 | Keduanya juga punya di header ICSP |
| Interrupt eksternal | D2, D3 | D2, D3 | Sama |
| LED bawaan | D13 (dengan buffer op-amp) | D13 (tersambung langsung ke pin) | Hati-hati memakai D13 sebagai input di Nano |
| Input daya | Jack DC dan Vin, 7–12 V | Hanya pin VIN, 7–12 V | Tidak ada jack di Nano |
| USB | USB-B; ATmega16U2 atau CH340 | Mini-B; FT232RL atau CH340 | Kabelnya berbeda |
| Output 3.3V | Regulator terpisah, 50 mA | Dari chip USB, sangat terbatas | Di Nano jangan beri daya modul dari pin ini |
| IOREF | Ada | Tidak ada | Untuk kompatibilitas shield |
| Ruang untuk kode | 32.256 byte | 30.720 byte | IDE mencadangkan 2 KB di Nano |
| Memasang shield | Langsung | Dengan adaptor atau board ekspansi | - |
Seperti terlihat di tabel, memindahkan rangkaian yang dibuat untuk Uno ke Nano hanya berarti menyambungkan kabel ke pin dengan nomor yang sama: servo di D9 Uno pindah ke D9 di Nano, dan layar I2C di A4/A5 tetap ke A4/A5. Satu-satunya perubahan di kode adalah memilih Arduino Nano di Tools > Board. Namun shield yang langsung ditancapkan ke Uno tidak akan muat di Nano; untuk itu ada board adaptor yang mengubah Nano ke tata letak pin Uno. Peran rinci setiap pin di Uno bisa kamu temukan di Pinout Arduino Uno, dan bantuan memilih board di Arduino Mana yang Sebaiknya Kubeli?.
Nano Every dan Nano ESP32: apa bedanya dengan Nano klasik
| Fitur | Nano klasik (V3) | Nano Every | Nano ESP32 |
|---|---|---|---|
| Prosesor | ATmega328P, 8-bit, 16 MHz | ATmega4809, 8-bit, 16 MHz di IDE (sampai 20 MHz) | ESP32-S3, dua inti, 32-bit, 240 MHz |
| Flash / SRAM | 32 KB / 2 KB | 48 KB / 6 KB | 16 MB / 512 KB (+8 MB PSRAM) |
| Tegangan logika | 5 V | 5 V | 3,3 V (tidak tahan 5 V) |
| USB | Mini-B | Micro-B | USB-C |
| Rentang VIN | 7–12 V disarankan | 7–21 V | 6–21 V |
| Pin PWM | D3, D5, D6, D9, D10, D11 | D3, D5, D6, D9, D10 (tidak di D11) | Hampir semua pin digital |
| A6 / A7 | Hanya analog | Analog dan digital | Analog dan digital |
| Interrupt eksternal | Hanya D2, D3 | Semua pin digital | Semua pin |
| Jalur serial D0 / D1 | Berbagi dengan USB (Serial) | Terpisah dari USB (Serial1) | Terpisah dari USB (Serial0) |
| Nirkabel | Tidak ada | Tidak ada | Wi-Fi dan Bluetooth LE |
| Paket board IDE | Arduino AVR Boards | Arduino megaAVR Boards | Arduino ESP32 Boards |
Nano Every adalah versi Nano klasik yang lebih bertenaga dengan ukuran dan tata letak pin yang sama. Di dalamnya ada ATmega4809, bekerja di 5 V, dan menawarkan flash 48 KB serta SRAM 6 KB, jadi proyek OLED dan LED strip yang kewalahan dengan RAM Nano klasik mendapat ruang bernapas. Di sisi USB, chip SAMD11 berperan sebagai jembatan dan kode di-upload lewat antarmuka UPDI, jadi tidak ada repot soal Old Bootloader. Untuk memakai board ini, instal paket Arduino megaAVR Boards dari Boards Manager. Perbedaan yang perlu diperhatikan: PWM hanya ada di D3, D5, D6, D9, dan D10 (D11 tidak punya PWM), A6 dan A7 juga bekerja sebagai pin digital, setiap pin digital bisa dipakai sebagai interrupt eksternal, dan D0 serta D1 adalah port Serial1 yang terpisah dari USB. Pengaturan Tools > Registers emulation > ATMEGA328 mengemulasi register port seperti PORTB, tapi kode lama yang menulis langsung ke register timer atau ADC tetap tidak akan bekerja. Sketch di bawah menunjukkan dua perbedaan Every sekaligus: ia berkomunikasi dengan modul di D0/D1 selama Serial Monitor terbuka, dan memakai A7 sebagai input tombol dengan pull-up internal.
1// Nano Every: Serial = USB, Serial1 = D0 (RX) ve D1 (TX) / Serial = USB, Serial1 = D0 (RX) and D1 (TX)
2const byte BUTTON_PIN = A7; // Every'de A7 dijital de çalışır / A7 also works as digital on the Every
3
4bool lastState = HIGH;
5
6void setup() {
7 Serial.begin(9600); // Seri Monitör / Serial Monitor
8 Serial1.begin(9600); // D0/D1'deki modül, ör. HC-05 / module on D0/D1, e.g. HC-05
9 pinMode(BUTTON_PIN, INPUT_PULLUP); // klasik Nano'nun A7'sinde çalışmaz / does not work on the classic Nano's A7
10}
11
12void loop() {
13 if (Serial1.available()) {
14 Serial.write(Serial1.read()); // modülden bilgisayara / module to computer
15 }
16 if (Serial.available()) {
17 Serial1.write(Serial.read()); // bilgisayardan modüle / computer to module
18 }
19 bool state = digitalRead(BUTTON_PIN);
20 if (state != lastState) { // durum değişince bildir / report when the state changes
21 lastState = state;
22 Serial1.println(state == LOW ? "Buton basildi / Button pressed" : "Buton birakildi / Button released");
23 delay(20); // kontak sıçraması / contact bounce
24 }
25}Sebaliknya, Nano ESP32 adalah dunia yang sama sekali berbeda dalam ukuran board yang sama: prosesor ESP32-S3 di modul u-blox NORA-W106 berjalan di 240 MHz dan menawarkan Wi-Fi serta Bluetooth LE. Perbedaan terpentingnya adalah tegangan: semua pin bekerja di 3,3 V dan tidak tahan 5 V, jadi sensor dengan output 5 V yang biasa kamu sambungkan langsung ke Nano klasik bisa merusak Nano ESP32. Di tempat pin 5V Nano klasik ada pin VBUS, yang hanya memberi 5 V selama board diberi daya lewat USB; ketika diberi daya lewat VIN, pin ini mati. Di tempat AREF dan pin RST di sisi analog kamu akan menemukan BOOT0 dan BOOT1. Board ini diprogram dengan paket Arduino ESP32 Boards, dan menu Tools > Pin Numbering punya dua opsi: di pengaturan default By Arduino pin berlaku nama D dan A yang tercetak di board, sedangkan di By GPIO number nomornya adalah nomor GPIO ESP32. Misalnya, D2 sebenarnya GPIO5; di mode GPIO, menulis pinMode(2, OUTPUT) justru mengatur pin A1. Kalau kamu selalu menulis pin dengan namanya, seperti D2 dan A0, kodemu bekerja dengan benar di kedua mode.
1// Nano ESP32: Araçlar > Pin Numbering > By Arduino pin (default)
2// Nano ESP32: Tools > Pin Numbering > By Arduino pin (default)
3bool ledOn = false;
4
5void setup() {
6 Serial.begin(115200); // USB-C üzerinden / over USB-C
7 pinMode(LED_BUILTIN, OUTPUT); // D13 = GPIO48
8 pinMode(LED_RED, OUTPUT);
9 pinMode(LED_GREEN, OUTPUT);
10 pinMode(LED_BLUE, OUTPUT);
11 digitalWrite(LED_RED, HIGH); // RGB LED ters mantık: HIGH = sönük / active low: HIGH = off
12 digitalWrite(LED_GREEN, HIGH);
13 digitalWrite(LED_BLUE, HIGH);
14 analogReadResolution(12); // 0-4095 arası / range 0-4095
15}
16
17void loop() {
18 int raw = analogRead(A0); // 12 bit ham değer / 12-bit raw value
19 int mv = analogReadMilliVolts(A0); // kalibre edilmiş milivolt / calibrated millivolts
20 Serial.printf("A0: %d (%d mV)\n", raw, mv);
21 digitalWrite(LED_GREEN, mv > 1650 ? LOW : HIGH); // 1,65 V üstünde yeşil / green above 1.65 V
22 digitalWrite(LED_RED, mv > 1650 ? HIGH : LOW); // altında kırmızı / red below
23 ledOn = !ledOn;
24 digitalWrite(LED_BUILTIN, ledOn ? HIGH : LOW); // D13 LED'ini yakıp söndür / blink the D13 LED
25 delay(500);
26}Input analog Nano ESP32 membaca dengan resolusi 12-bit dan mengembalikan nilai dari 0 sampai 4095, sedangkan analogReadMilliVolts() memakai data kalibrasi chip untuk memberi hasil langsung dalam milivolt. LED RGB bawaan board bekerja dengan logika terbalik, jadi menyala ketika kamu menulis LOW. Kalau kode tidak mau ter-upload dan board hilang dari daftar port, kamu bisa memasukkannya ke mode bootloader dengan menekan tombol reset dua kali berturut-turut dengan cepat. Untuk mempelajari sisi Wi-Fi ESP32, lihat Apa Itu ESP32?, dan untuk memutuskan board, baca Arduino vs ESP32. Di antara anggota keluarga lainnya, Nano R4 membawa prosesor Renesas RA4M1 48 MHz yang sama dengan Uno R4 ke format Nano 5 V tapi hanya memberi 8 mA per pin, sedangkan Nano 33 IoT dan Nano 33 BLE adalah board 3,3 V seperti Nano ESP32.
Ide proyek Arduino Nano
- Termometer saku: Tampilkan suhu yang diukur dengan DHT11 di layar OLED kecil; Nano dan layarnya muat di dalam kotak korek api.
- Mobil robot mini: Ukuran Nano yang kecil menghemat tempat di sasis; gerakkan motornya dengan L298N dan ikuti langkah di Mobil Robot Arduino.
- Robot pengikut garis: Delapan input analog lebih dari cukup untuk membaca deretan lima sensor; detailnya ada di Robot Pengikut Garis.
- Remote Bluetooth: Sambungkan modul HC-05 ke D8 dan D7 dengan SoftwareSerial lalu kendalikan LED atau relay dari ponselmu; D0 dan D1 tetap kosong untuk upload.
- Lampu wearable: Buat lampu lencana atau tas dengan Nano bertenaga baterai dan beberapa LED WS2812B.
- Keypad di satu pin: Rakit tangga resistor di atas di A6 dan A7 sekaligus untuk menu delapan tombol, dan simpan pin digital untuk layar dan motor.
- Mau keyboard USB? ATmega328P di Nano klasik tidak punya USB bawaan, jadi tidak bisa tampil di komputer sebagai keyboard atau mouse; untuk itu kamu butuh board ATmega32U4 seperti Leonardo dan Pro Micro.
Kesalahan umum dan cara mengatasinya
| Gejala | Penyebab | Solusi |
|---|---|---|
| Nano tidak muncul di daftar port | Kabel khusus pengisian daya atau driver CH340 belum ada | Pakai kabel data, instal driver CH341SER; hapus brltty di Linux |
| Upload berhenti dengan error “not in sync” | Board-nya memakai bootloader lama | Tools > Processor > ATmega328P (Old Bootloader) |
| Tombol di A6 atau A7 sama sekali tidak merespons | Pin ini tidak punya digitalRead atau pull-up internal | Tambahkan pull-up eksternal 10 kΩ dan pakai ambang dengan analogRead |
| Tombol di D13 selalu terbaca ditekan | LED L dan resistornya menarik pin ke bawah | Pindahkan tombolnya ke pin lain |
| Modul yang diberi daya dari 3V3 tidak stabil atau mati | Pin 3V3 hanya memberi arus yang sangat kecil | Pakai regulator 3,3 V terpisah yang diberi daya dari 5V |
| Pembacaan analog kelebihan beberapa persen | Lewat USB pin 5V hanya sekitar 4,7 V | Ukur Vcc sebenarnya atau beri daya ke board lewat VIN |
| Board jadi sangat panas dengan 12 V di VIN | Regulator membuang (12 − 5) × arus sebagai panas | Beri 7–9 V ke VIN atau beri daya ke pin 5V dari modul buck |
| Dengan servo terpasang, LED di D9/D10 tidak mau meredup | Library Servo memakai Timer1 | Pindahkan LED ke D3, D5, D6, atau D11 |
Arduino Nano adalah cara termudah membawa semua yang sudah kamu pelajari di Uno ke proyek kecil yang permanen; selama kamu tahu perbedaan seputar A6/A7, 3V3, dan bootloader, tidak akan ada kejutan. Kalau ingin kembali ke dasar, mulai dari Apa Itu Arduino?. Di aplikasi BlueGrays kamu akan menemukan proyek langkah demi langkah dengan skema rangkaian dan kode siap pakai untuk LED berkedip, LED dengan tombol, mengukur cahaya dengan LDR, jarak dengan HC-SR04, suhu dan kelembapan dengan DHT11, LED RGB, servo dengan potensiometer, dan komunikasi serial antara dua Arduino; semuanya bekerja di Nano dengan nomor pin yang sama.
Pertanyaan umum
Berapa jumlah pin Arduino Nano?
Arduino Nano klasik punya 30 pin dalam dua baris. 14 di antaranya input/output digital (D0–D13), 8 input analog (A0–A7), dan sisanya pin VIN, 5V, 3V3, AREF, dua GND, dan dua RST. Karena A0–A5 juga bisa dipakai sebagai pin digital, kamu mendapat 20 pin digital; A6 dan A7 hanya bisa membaca nilai analog.
Pin mana yang PWM di Arduino Nano?
Pin PWM-nya adalah D3, D5, D6, D9, D10, dan D11; di board atau di diagram pinout pin ini ditandai ~ di sebelah nomornya. D5 dan D6 bekerja di sekitar 980 Hz, sisanya di sekitar 490 Hz. Library Servo memengaruhi PWM di D9 dan D10, dan fungsi tone() memengaruhi D3 dan D11.
Apakah A6 dan A7 di Arduino Nano bisa dipakai sebagai pin digital?
Tidak. A6 dan A7 adalah dua channel ATmega328P yang hanya terhubung ke konverter analog-ke-digital; pinMode, digitalRead, digitalWrite, dan pull-up internal tidak bekerja di pin ini. Untuk membaca tombol, tambahkan resistor pull-up eksternal 10 kΩ dan bandingkan nilai analogRead() dengan sebuah ambang. Namun di Nano Every dan Nano ESP32, A6 dan A7 juga bisa dipakai sebagai pin digital.
Tegangan berapa yang bisa kuberikan ke Arduino Nano?
Kamu bisa memberi daya ke Nano lewat USB, dengan 7–12 V di pin VIN, atau dengan 5 V yang sudah diregulasi di pin 5V. Regulator AMS1117 di board klon bisa rusak di atas 15 V dan cepat panas bahkan di 12 V, jadi 7–9 V ideal untuk VIN. Jangan pernah memberi lebih dari 5 V ke pin 5V.
Apa arti Old Bootloader di Arduino Nano?
Pada 2018 Arduino mengganti bootloader Nano dengan Optiboot yang lebih kecil dan lebih cepat; bootloader baru berkomunikasi di 115200 baud dan yang lama di 57600 baud. Kebanyakan Nano klon di pasaran masih memakai bootloader lama, jadi kalau kamu tidak memilih ATmega328P (Old Bootloader) di Tools > Processor, upload berhenti dengan error not in sync. Salah memilih opsi tidak merusak board, jadi kamu bisa mencoba keduanya saja.
Apa perbedaan Arduino Nano dan Uno?
Keduanya memakai ATmega328P 16 MHz, jadi nomor pin, pin PWM, jalur I2C (A4/A5) dan SPI (D10–D13), serta kodenya sama. Nano lebih kecil, bisa ditancapkan ke breadboard, dan punya dua input analog tambahan (A6, A7), tapi tidak punya jack DC dan header shield. Nano juga memakai mini USB dan IDE memberinya 30.720 byte untuk kode, sedangkan batas Uno 32.256 byte.
Proyek untuk dibuat setelah membaca ini
Lihat semua proyek
LED Berkedip
"Halo" pertama di dunia elektronika: menyalakan dan mematikan satu LED. Arduino menyalakan dan mematikan LED dengan jeda singkat, sehingga cahayanya berkedip cepat. Kamu melihat dengan cara paling sed

Kendali LED dengan Tombol Tekan (Tekan)
Persis seperti bel pintu: lampu tetap menyala selama kamu menekan, dan mati ketika kamu melepasnya. Arduino terus mendengarkan tombol; selama ditekan LED menyala, dan begitu jarimu terangkat LED mati.

Mengukur Intensitas Cahaya dengan LDR
Ingin melihat seberapa terang kamarmu dalam bentuk angka? LDR, komponen kecil yang bereaksi terhadap cahaya, mengukur cahaya di sekitarnya, dan Arduino menulis nilainya ke layar komputermu setiap sete

Pengukuran Jarak HC-SR04 (Tampilan Serial)
Sensor HC-SR04 bekerja persis seperti kelelawar yang mencari jalan dalam gelap: ia mengirim suara yang tidak bisa kamu dengar, mendengarkan pantulannya, dan mengukur seberapa jauh benda di depannya. A

Suhu dan Kelembapan dengan DHT11
Seberapa hangat kamarmu, dan apakah udaranya lembap atau kering? Sensor DHT11 mengukur suhu dan kelembapan, dan Arduino menulis nilainya di layar LCD dua baris, diperbarui setiap beberapa detik. Jika

Menggunakan LED RGB
Tiga warna tersembunyi di dalam satu LED: LED RGB menyala merah, lalu hijau, lalu biru, setiap warna menyala setengah detik dan mati setengah detik, sebelum siklusnya dimulai lagi. Yang kamu butuhkan

Menggerakkan Motor Servo dengan Potensiometer
Ketika kamu memutar kenop potensiometer, lengan motor servo ikut berputar: satu ujung kenop berarti nol derajat, ujung lainnya berarti setengah putaran. Arduino terus membaca posisi kenop dan servo la

Komunikasi Satu Arah Antara 2 Arduino
Kamu membuat dua Arduino berbicara lewat satu kabel: tekan tombol di satu board dan LED di board lain menyala, tekan lagi dan LED mati. Board pengirim melaporkan tekanan tombol dengan pesan singkat, d
Artikel lainnya
Aplikasi BlueGrays
Rakit rangkaian ini langkah demi langkah di ponselmu
Skema pengkabelan, kode, dan daftar komponen dalam satu layar. 200+ proyek Arduino, ESP32, dan Pico siap dibuat.
Pindai dengan ponselmu
Arahkan kamera ke kode ini dan toko aplikasi di ponselmu akan terbuka.
atau buka toko aplikasi

