Mengenal Input Output (I/O) Arduino: Panduan Dasar untuk Pemula

Mengenal Input Output (I/O) Arduino: Panduan Dasar untuk Pemula

Pembelajaran Arduino tidak cukup hanya memahami bahasa pemrogramannya saja. Setelah tahu tentang variabel, fungsi, dan struktur dasar kode, langkah penting berikutnya adalah memahami Input/Output (I/O) — karena di sinilah Arduino benar-benar “hidup” dan berinteraksi dengan dunia nyata.

Mulai dari membuat LED berkedip, membaca tombol, hingga mengontrol sensor dan motor, semuanya berawal dari konsep I/O.

Pada artikel ini kamu akan mempelajari:

  • Apa itu I/O pada Arduino
  • Perbedaan pin digital dan pin analog
  • Mode pin: INPUT, INPUT_PULLUP, OUTPUT
  • Cara membaca input (tombol/sensor)
  • Cara mengontrol output (LED, buzzer, relay)
  • Contoh kode lengkap pemula

Mari kita mulai!

1. Apa Itu I/O pada Arduino?

Arduino memiliki banyak pin (kaki) yang digunakan untuk berkomunikasi dengan komponen eksternal. Pin-pin tersebut terbagi menjadi dua fungsi utama:

Input — menerima sinyal

Digunakan untuk membaca nilai dari perangkat seperti:

  • Tombol (push button)
  • Sensor cahaya (LDR)
  • Sensor suhu
  • Sensor ultrasonik
  • Potensiometer
  • dan lain-lain

Output — mengirim sinyal

Digunakan untuk mengontrol perangkat seperti:

  • LED
  • Buzzer
  • Motor DC
  • Relay
  • Display 7 segment
  • Servo

Semua proyek Arduino pasti berhubungan dengan Input dan Output.

2. Perbedaan Pin Digital dan Pin Analog

Arduino, terutama tipe Uno, memiliki dua jenis pin:

A. Pin Digital (D0–D13)

Pin digital hanya mengenal dua kondisi:

  • HIGH → 1 → 5V
  • LOW → 0 → 0V

Contoh penggunaan:

  • Kirim sinyal ke LED
  • Baca kondisi tombol
  • Trigger relay
  • Kontrol buzzer

B. Pin Analog (A0–A5)

Pin analog dapat membaca nilai 0–1023 (10-bit ADC).

Biasanya digunakan untuk:

  • Sensor yang menghasilkan tegangan variatif
  • Potensiometer
  • Sensor cahaya / suhu analog

Contoh pembacaan:

int nilai = analogRead(A0); 
// hasilnya 0 - 1023

3. Mode Pin pada Arduino

Sebelum digunakan, pin harus disetel di setup().

OUTPUT

Digunakan untuk mengirim sinyal – misalnya untuk menyalakan LED.

pinMode(13, OUTPUT);

INPUT

Untuk membaca sinyal dari tombol atau sensor.

pinMode(2, INPUT);

INPUT_PULLUP

Mode input dengan resistor internal pull-up.

Fungsinya: mencegah input “mengambang” (floating).

pinMode(2, INPUT_PULLUP);

Jika memakai INPUT_PULLUP, logika tombol menjadi terbalik:

  • Lepas → HIGH
  • Ditekan → LOW

4. Contoh Output: Mengontrol LED

Ini adalah dasar paling penting dalam Arduino.

Skema:

  • LED + resistor ke pin 13
  • GND ke kaki resistor

Kode: LED berkedip (blink)

void setup() {
  pinMode(13, OUTPUT);  
}

void loop() {
  digitalWrite(13, HIGH);  // LED on
  delay(1000);             // 1 detik
  digitalWrite(13, LOW);   // LED off
  delay(1000);
}

5. Contoh Input: Membaca Tombol

Skema:

  • Tombol ke pin digital 2
  • Resistor pull-down ke GND

Kode membaca tombol

int tombol = 2;

void setup() {
  pinMode(tombol, INPUT);
  Serial.begin(9600);
}

void loop() {
  int nilai = digitalRead(tombol);

  if (nilai == HIGH) {
    Serial.println("Tombol ditekan");
  } else {
    Serial.println("Tombol dilepas");
  }

  delay(200);
}

6. Contoh Input + Output: LED menyala saat tombol ditekan

Kode sederhana dan paling sering diajarkan ke pemula.

int tombol = 2;
int led = 13;

void setup() {
  pinMode(tombol, INPUT);
  pinMode(led, OUTPUT);
}

void loop() {
  int status = digitalRead(tombol);

  if (status == HIGH) {
    digitalWrite(led, HIGH);
  } else {
    digitalWrite(led, LOW);
  }
}

7. Contoh Membaca Sensor Analog

Misal memakai potensiometer di A0:

int nilai;

void setup() {
  Serial.begin(9600);
}

void loop() {
  nilai = analogRead(A0);
  Serial.println(nilai); // 0 - 1023
  delay(100);
}

8. Mengontrol Perangkat Output Lainnya

✔ Buzzer

digitalWrite(8, HIGH);

✔ Relay

digitalWrite(7, LOW);  // biasanya LOW = ON

✔ Servo (butuh library Servo.h)

servo.write(90);

9. Kesimpulan

Dalam pembelajaran Arduino, memahami Input dan Output adalah fondasi utama untuk membuat berbagai proyek elektronik interaktif.

Dengan memahami:

  • Jenis pin Arduino
  • Cara membaca input
  • Cara mengontrol output
  • Mode pin (INPUT, OUTPUT, INPUT_PULLUP)
  • Perbedaan digital & analog

Kamu sudah memiliki dasar kuat untuk lanjut ke materi yang lebih dalam seperti sensor ultrasonik, LCD, modul WiFi, IoT, hingga robotik.

Comments

No comments yet. Why don’t you start the discussion?

Leave a Reply

Your email address will not be published. Required fields are marked *