membuat aplikasi penghitungan menggunakan arduino

ntuk membuat aplikasi penghitungan menggunakan Arduino, kita bisa menggunakan beberapa komponen dasar seperti Arduino board (misalnya Arduino Uno), keypad sebagai input angka, dan display (LCD atau LED) sebagai output hasil penghitungan. Kita juga memerlukan kode program yang akan berjalan pada Arduino untuk menangani operasi dasar seperti penjumlahan, pengurangan, perkalian, dan pembagian.
Berikut langkah-langkah umum untuk membuat aplikasi penghitungan dengan Arduino:
Komponen yang dibutuhkan:
- Arduino Uno (atau yang sejenis)
- Keypad 4×4 atau jenis lainnya
- LCD 16×2 atau LED 7-segmen
- Resistor
- Kabel jumper
- Breadboard (opsional)
Langkah-langkah:
1. Rangkaian Hardware
- Hubungkan Keypad ke pin digital Arduino.
- Hubungkan LCD 16×2 (dengan modul I2C atau tanpa modul I2C) ke pin digital dan pin daya.
- Jika menggunakan LED 7-segmen, sambungkan juga ke pin digital Arduino.
2. Kode Arduino
Contoh kode di bawah ini menggunakan keypad 4×4 sebagai input dan LCD 16×2 untuk menampilkan hasil penghitungan sederhana:
cpp
// Inisialisasi LCDLiquidCrystal lcd(12, 11, 5, 4, 3, 2);
// Konfigurasi keypad
const byte ROWS = 4;
const byte COLS = 4;
char keys[ROWS][COLS] = {
{‘1’, ‘2’, ‘3’, ‘+’},
{‘4’, ‘5’, ‘6’, ‘-‘},
{‘7’, ‘8’, ‘9’, ‘*’},
{‘C’, ‘0’, ‘=’, ‘/’}
};
byte rowPins[ROWS] = {9, 8, 7, 6};
byte colPins[COLS] = {A0, A1, A2, A3};
Keypad keypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);
String input1 = “”, input2 = “”, operation = “”;
bool isInput1Complete = false;
float result;
void setup() {
lcd.begin(16, 2);
lcd.print(“Calculator”);
delay(2000);
lcd.clear();
}
void loop() {
char key = keypad.getKey();
if (key) {
// Jika tombol ‘=’ ditekan
if (key == ‘=’) {
float num1 = input1.toFloat();
float num2 = input2.toFloat();
if (operation == “+”) {
result = num1 + num2;
} else if (operation == “-“) {
result = num1 – num2;
} else if (operation == “*”) {
result = num1 * num2;
} else if (operation == “/”) {
if (num2 != 0) {
result = num1 / num2;
} else {
lcd.clear();
lcd.print(“Error: Zero div”);
delay(2000);
lcd.clear();
input1 = “”;
input2 = “”;
operation = “”;
return;
}
}
lcd.clear();
lcd.print(“Result: “);
lcd.print(result);
delay(5000);
lcd.clear();
input1 = “”;
input2 = “”;
operation = “”;
}
// Jika tombol ‘C’ ditekan (clear)
else if (key == ‘C’) {
input1 = “”;
input2 = “”;
operation = “”;
isInput1Complete = false;
lcd.clear();
}
// Jika tombol operator (+, -, *, /) ditekan
else if (key == ‘+’ || key == ‘-‘ || key == ‘*’ || key == ‘/’) {
if (input1 != “”) {
operation = key;
isInput1Complete = true;
lcd.setCursor(0, 1);
lcd.print(key);
}
}
// Input angka
else {
if (!isInput1Complete) {
input1 += key;
lcd.setCursor(0, 0);
lcd.print(input1);
} else {
input2 += key;
lcd.setCursor(1, 1);
lcd.print(input2);
}
}
}
}
Penjelasan:
- Keypad digunakan untuk memasukkan angka dan operator matematika.
- LCD 16×2 akan menampilkan angka yang dimasukkan, operator, dan hasil perhitungan.
- Kode di atas menangani operasi dasar seperti penjumlahan, pengurangan, perkalian, dan pembagian.
- Tombol
Cdigunakan untuk menghapus input.
3. Simulasi dan Pengujian
- Setelah memasang komponen dan meng-upload kode ke Arduino, uji dengan memasukkan angka dan operator.
- Pastikan fungsi penghitungan bekerja dengan benar dan hasil ditampilkan di LCD.

