Dalam dunia elektronika dan Internet of Things (IoT), memahami cara kerja GPIO adalah langkah penting bagi siapa pun yang ingin mengembangkan proyek berbasis papan mini komputer dari Raspberry Pi Foundation. GPIO memungkinkan perangkat untuk berinteraksi langsung dengan komponen eksternal seperti LED, sensor, maupun tombol, sehingga membuka peluang pembuatan sistem otomatisasi sederhana hingga kompleks. Bagi pemula, praktik LED dan tombol termasuk eksperimen dasar yang paling efektif untuk memahami konsep input dan output digital.
Baca juga: Tutorial Remote Raspberry Pi Tanpa Monitor - SSH & VNC Lengkap untuk Pemula
Pada artikel ini, pengguna akan belajar tentang bagaimana cara mengendalikan LED sebagai output dan membaca sinyal dari tombol sebagai input menggunakan pemrograman Python. Pemahaman ini menjadi fondasi penting sebelum melangkah ke proyek yang lebih besar seperti sistem monitoring, kontrol perangkat otomatis, hingga pembuatan prototype IoT. Selain itu, artikel ini juga membantu Anda dalam memahami logika program, alur sinyal listrik, hubungan antara kode dan perangkat keras, dasar kontrol digital pada Raspberry Pi serta siap mengembangkan berbagai proyek elektronika interaktif berbasis GPIO.
Raspberry Pi memiliki deretan pin GPIO (General Purpose Input Output) yang berfungsi untuk mengendalikan perangkat output seperti LED, maupun membaca input seperti tombol. Pin GPIO ini dapat diprogram menggunakan bahasa Python melalui library RPi.GPIO yang sudah tersedia di Raspberry Pi OS. Dengan pemrograman ini, Anda bisa merespons kondisi tertentu atau memberikan sinyal ke perangkat eksternal.
Pada praktik dasar ini, kita akan melakukan dua eksperimen. Pertama, menyalakan dan mematikan LED menggunakan Raspberry Pi sebagai output digital. Kedua, membaca status tombol sebagai input, lalu menggunakannya untuk mengontrol nyala dan mati LED secara interaktif. Praktik ini adalah langkah awal untuk memahami kontrol digital sederhana dengan GPIO.
1. Pemrograman Output LED
- Anoda LED dihubungkan ke GPIO17 (Pin 11) melalui resistor.
- Katoda LED dihubungkan ke GND (Pin 25).
- Fungsi resistor adalah membatasi arus supaya LED tidak rusak.
Untuk mencobanya silahkan ketik kode program seperti gambar dibawah ini. Kemudian klik Run. Seteleh itu, pada terminal akan terlihat hasilnya.
Berikut adalah kode program MicroPython menggunakan library RPi.GPIO untuk menyalakan dan mematikan LED terus-menerus (berkedip) dengan delay 2 detik antara nyala dan mati.
Penjelasan fungsi:
- GPIO.setmode(GPIO.BCM): Menggunakan penomoran berdasarkan sistem Broadcom SOC.
- GPIO.setup(17, GPIO.OUT): Menjadikan GPIO17 sebagai pin output.
- GPIO.output(17, GPIO.HIGH): Memberikan tegangan 3.3V → LED menyala.
- GPIO.output(17, GPIO.LOW): Memberikan tegangan 0V → LED mati.
- time.sleep(2): Memberi jeda waktu 2 detik antara nyala dan mati.
2. Pemrograman Input Tombol + Output LED
- LED tetap di GPIO17 (Pin 11).
- Tombol dihubungkan ke GPIO24 (Pin 18).
- Salah satu kaki tombol dihubungkan ke VCC, satunya ke resistor pull-down ke GND dan ke GPIO24.
Untuk mencobanya silahkan ketik kode program seperti gambar di bawah ini. Kemudian klik Run. Setelah itu, pada terminal akan terlihat hasilnya. Berikut adalah kode program MicroPython menggunakan library RPi.GPIO untuk menyalakan dan mematikan LED dengan menggunakan input dari tombol.
Penjelasan fungsi:
- GPIO.setmode(GPIO.BCM): Mengatur penomoran berdasarkan nama pin GPIO (bukan nomor fisik).
- GPIO.setup(17, GPIO.OUT): Menyiapkan GPIO17 untuk mengendalikan LED.
- GPIO.setup(24, GPIO.IN): Menyiapkan GPIO24 sebagai input tombol.
- GPIO.input(24): Membaca nilai dari tombol.
- GPIO.output(17, ...): Menyalakan atau mematikan LED tergantung kondisi tombol.
- time.sleep(0.2): Memberi waktu tunggu 100 ms agar program tidak terlalu cepat membaca tombol.
Praktik dasar GPIO menggunakan LED dan tombol adalah langkah awal yang sangat penting dalam mempelajari pemrograman perangkat keras berbasis Raspberry Pi. Dari percobaan sederhana ini, pengguna dapat memahami bagaimana perangkat membaca input, memberikan output, serta merespons kondisi tertentu melalui program. Konsep ini menjadi pondasi utama dalam pembuatan sistem otomatisasi, robotika, hingga proyek IoT skala lebih besar.
Dengan menguasai praktik dasar ini, Anda sudah memiliki bekal untuk mengembangkan berbagai proyek lanjutan seperti sensor monitoring, sistem keamanan sederhana, hingga kontrol perangkat berbasis jaringan. Teruslah bereksperimen dengan berbagai komponen GPIO agar pemahaman semakin kuat dan kemampuan membuat proyek elektronik berbasis Raspberry Pi semakin berkembang.
Baca juga: Struktur Dasar MicroPython - Variabel, Percabangan, Perulangan, dan Fungsi
Dalam praktik, hasil dan kendala yang ditemui bisa berbeda tergantung perangkat, konfigurasi, versi library, dan sistem yang digunakan.
- Diskusi umum dan tanya jawab praktik: https://t.me/edukasielektronika
- Kendala spesifik dan kasus tertentu: http://bit.ly/Chatarduino











0 Komentar