Membuat counter penghitung jumlah dengan Arduino bisa dilakukan dengan berbagai cara, tergantung pada bagaimana jumlah tersebut dihitung. Misalnya, kita bisa membuat counter dengan tombol (push button) atau sensor seperti sensor inframerah atau sensor ultrasonik. Berikut adalah langkah-langkah sederhana untuk membuat counter menggunakan tombol dan menampilkan hasilnya di LCD 16x2.
Bahan yang Dibutuhkan
- 1x Arduino Uno
- 1x LCD 16x2 + I2C module
- 1x Push button
- 1x Resistor 10kΩ
- Kabel jumper
- Breadboard
Rangkaian
- LCD 16x2 dengan I2C
- VCC → 5V Arduino
- GND → GND Arduino
- SDA → A4 Arduino
- SCL → A5 Arduino
- Satu kaki push button ke pin 2 Arduino
- Kaki lainnya ke GND melalui resistor 10kΩ (pull-down resistor)
- Juga sambungkan kaki tersebut ke 5V langsung (tanpa resistor)
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
// Inisialisasi LCD dengan alamat 0x27
LiquidCrystal_I2C lcd(0x27, 16, 2);
const int buttonPin = 2; // Pin push button
int counter = 0; // Variabel penghitung
int lastButtonState = LOW;
void setup() {
pinMode(buttonPin, INPUT);
lcd.begin();
lcd.backlight();
lcd.setCursor(0, 0);
lcd.print("Counter:");
lcd.setCursor(0, 1);
lcd.print(counter);
}
void loop() {
int buttonState = digitalRead(buttonPin);
if (buttonState == HIGH && lastButtonState == LOW) {
counter++; // Tambah 1 setiap tombol ditekan
lcd.setCursor(0, 1);
lcd.print(" "); // Hapus angka lama
lcd.setCursor(0, 1);
lcd.print(counter);
delay(200); // Debounce untuk menghindari pembacaan ganda
}
lastButtonState = buttonState;
}
Cara Kerja
- Setiap kali tombol ditekan, angka counter bertambah 1.
- Angka tersebut ditampilkan pada LCD 16x2.
- Menggunakan debounce sederhana untuk menghindari pembacaan ganda dari satu kali tekan.
Pengembangan Lebih Lanjut
- Menggunakan sensor lain seperti sensor infrared untuk mendeteksi objek yang melewati jalur.
- Menambahkan reset counter dengan tombol tambahan.
- Menggunakan display lain seperti OLED atau 7-segment untuk tampilan yang lebih kecil.
- Mau modifikasi atau tambahan fitur tertentu?