Daftar Isi:

Kalkulator Arduino Menggunakan Keypad 4X4: 4 Langkah (dengan Gambar)
Kalkulator Arduino Menggunakan Keypad 4X4: 4 Langkah (dengan Gambar)

Video: Kalkulator Arduino Menggunakan Keypad 4X4: 4 Langkah (dengan Gambar)

Video: Kalkulator Arduino Menggunakan Keypad 4X4: 4 Langkah (dengan Gambar)
Video: Arduino Calculator using Keypad and LCD - Tinkercad Calculator using 4x4 Keypad and LCD 2024, Juli
Anonim
Image
Image

Dalam tutorial ini kita akan membuat kalkulator sendiri dengan Arduino. Nilai dapat dikirim melalui keypad (keypad 4x4) dan hasilnya dapat dilihat pada layar LCD. Kalkulator ini dapat melakukan operasi sederhana seperti Penambahan, Pengurangan, Perkalian dan Pembagian dengan bilangan bulat. Tetapi begitu Anda memahami konsepnya, Anda bahkan dapat mengimplementasikan fungsi ilmiah dengan fungsi bawaan Arduino.

Perlengkapan

Arduino Uno

Layar LCD 16 × 2

Papan tombol 4×4

Papan tempat memotong roti

Kabel jumper

Kabel Arduino

Langkah 1: Skema

Langkah 2: Instalasi Perpustakaan:

Seperti yang telah dijelaskan sebelumnya, kita akan menghubungkan LCD dan keypad dengan Arduino menggunakan library. Jadi mari kita tambahkan ke Arduino IDE kita terlebih dahulu. Pustaka untuk LCD sudah disertakan dalam Arduino Anda secara default sehingga kami tidak perlu khawatir tentang hal itu. Untuk pustaka Keypad (klik tautan untuk mengunduhnya dari Github). Anda akan mendapatkan file ZIP, lalu tambahkan lib ini ke Arduino dengan Sketch -> Include Library -> Add. ZIP file dan arahkan lokasi ke file yang diunduh ini. Setelah selesai kita siap untuk pemrograman.

Langkah 3: Kode Sumber:

/*

© Techtronic Harsh

*/

#termasuk

#termasuk

LiquidCrystal lcd(0, 1, 2, 3, 4, 5);

const byte BARIS = 4; const byte COLS = 4;

kunci karakter [ROWS] [COLS] = {

{'1', '2', '3', '+'}, {'4', '5', '6', '-'}, {'7', '8', '9', ' *'}, {'C', '0', '=', '/'} }; byte rowPins[ROWS] = {13, 12, 11, 10}; byte colPins[COLS] = {9, 8, 7, 6};

Keypad myKeypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);

boolean presentValue = salah;

boolean berikutnya = salah; boolean akhir = salah; String angka1, angka2; int jawaban; karakter;

batalkan pengaturan()

{ lcd.begin(16, 2); lcd.setCursor(0, 0); lcd.print("Tektronik Keras"); lcd.setCursor(0, 1); lcd.print("Kalkulator"); penundaan(3000); lcd.clear(); lcd.setCursor(0, 0); lcd.print("Suka Dan"); lcd.setCursor(0, 1); lcd.print("Berlangganan Kami"); penundaan(3000); lcd.clear(); }

lingkaran kosong(){

kunci karakter = myKeypad.getKey();

if (kunci != NO_KEY && (kunci=='1'||key=='2'||key=='3'||key=='4'||key=='5'||key= ='6'||kunci=='7'||kunci=='8'||kunci=='9'||kunci=='0'))

{ if (nilai sekarang != true) { angka1 = angka1 + kunci; int numLength = num1.length(); lcd.setCursor(15 - angkaPanjang, 0); //untuk mengatur satu spasi untuk operator lcd.print(num1); } else { angka2 = angka2 + kunci; int numLength = num2.length(); lcd.setCursor(15 - angkaPanjang, 1); lcd.print(bil2); akhir = benar; } }

else if (presentValue == false && key != NO_KEY && (key == '/' || key == '*' || key == '-' || key == '+'))

{ jika (nilai sekarang == salah) { nilai sekarang = benar; op = kunci; lcd.setCursor(15, 0); lcd.print(op); } }

else if (final == true && key != NO_KEY && key == '='){

if (op == '+'){ jawaban = num1.toInt() + num2.toInt(); } else if (op == '-'){ jawaban = num1.toInt() - num2.toInt(); } else if (op == '*'){ jawaban = num1.toInt() * num2.toInt(); } else if (op == '/'){ jawaban = num1.toInt() / num2.toInt(); } lcd.clear(); lcd.setCursor(15, 0); lcd.autoscroll(); lcd.print(jawaban); lcd.noAutoscroll(); } else if (kunci != NO_KEY && kunci == 'C'){ lcd.clear(); presentValue = salah; akhir = salah; angka1 = ""; bilangan2 = ""; jawaban = 0; op = ' '; } }

/*

© Techtronic Harsh

*/

Langkah 4: Bekerja:

Buat koneksi sesuai diagram sirkuit dan unggah kodenya. Jika itu menunjukkan kesalahan, pastikan Anda telah menambahkan perpustakaan sesuai instruksi yang diberikan di atas.

Karakter pada Keypad dan Asumsi:

  • "A" - Penambahan (+)
  • "B" - Pengurangan (-)
  • “C” - Perkalian (*)
  • "D" - Divisi (/)
  • “*” - Hapus (C)
  • “#” - Sama dengan (=)

Direkomendasikan: