Digital I/O
Setiap pin GPIO dapat dikonfigurasi sebagai Input berguna untuk membaca status logika dari perangkat eksternal (misal tombol atau sensor) dan Output berguna untuk mengirim sinyal logika untuk mengendalikan perangkat (misal LED atau relay). Fungsionalitas I/O Digital terbagi menjadi tiga langkah utama yaitu:

Seluruh sinyal dikategorikan menjadi dua kondisi logika, yaitu HIGH dan LOW. Logika HIGH menunjukan kondisi aktif atau ON dengan tegangan sekitar 3,3 V, sedangkan logika LOW merepresentasikan kondisi tidak aktif atau OFF dengan tegangan mendekati 0 V (GND). Ketika sebuah pin GPIO dikonfigurasi sebagai input, ESP32 akan membaca level tegangan pada pin tersebut dan menerjemahkannya menjadi logika 1 atau 0. Sebaliknya. Konsep logika biner ini banyak diterapkan dalam sistem digital. Sebagai output, mikrokontroler dapat mengontrol LED, relay, buzzer, dan solenoid. Sebagai input, mikrokontroler dapat membaca status tombol, sensor proximity, sensor magnetik, atau limit switch. ESP32 juga mendukung beberapa mode konfigurasi pin, seperti INPUT, OUTPUT, INPUT_PULLUP, dan INPUT_PULLDOWN, yang memberikan fleksibilitas dalam desain sistem.
Perhatian Khusus Pin GPIO pada ESP32
Walaupun ESP32 memiliki hingga 34 pin GPIO, tidak semua pin dapat digunakan secara bebas. Sebagian pin terhubung ke fungsi internal dan harus dipakai hati-hati. Berikut kategori Pin GPIO:
1. Input-Only
- GPIO34, GPIO35, GPIO36, GPIO39
- Hanya mendukung fungsi input, tidak bisa digunakan untuk output.
2. Flash SPI (Internal)
- GPIO6–GPIO11
- Terhubung ke memori Flash internal, tidak boleh digunakan untuk aplikasi umum.
3. UART0 (USB Serial)
- GPIO1 (TX0) dan GPIO3 (RX0)
- Digunakan oleh port serial USB onboard. Jika digunakan, pastikan tidak mengganggu komunikasi Serial Monitor.
4. Strapping / Boot Pin
- GPIO0, GPIO2, GPIO4, GPIO5, GPIO12, GPIO15
- Pin ini menentukan mode booting ESP32. Jika salah tarik logika saat startup, board bisa gagal booting.
5. Pin LED On-board
- Biasanya GPIO2 atau GPIO5, tergantung tipe DevKit.
Dalam beberapa praktik, pin GPIO pada ESP32 dikonfigurasikan sebagai output untuk memberikan sinyal logika HIGH atau LOW, sehingga LED dapat menyala dan mati sesuai perintah program. Contoh ini membantu memahami cara kerja sinyal digital dalam mengendalikan perangkat elektronik secara langsung.








