Daftar Isi:
- Langkah 1: Hal-hal yang Diperlukan
- Langkah 2: Diagram Sirkuit
- Langkah 3: Program Kalkulator Arduino
- Langkah 4:
- Langkah 5: Kerja Kalkulator Arduino
- Langkah 6: Kode
Video: Kalkulator Arduino: 6 Langkah
2024 Pengarang: John Day | [email protected]. Terakhir diubah: 2024-01-30 09:56
Pemrograman selalu menyenangkan dan Arduino adalah platform yang luar biasa jika Anda baru memulai dengan pemrograman Tertanam. Dalam tutorial ini kita akan membuat kalkulator sendiri dengan Arduino. Nilai dapat dikirim melalui keypad (keypad 4x4) dan hasilnya dapat dilihat pada layar LCD (16x2 Dot-matrix). 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. Di akhir proyek ini Anda akan mengetahui cara menggunakan LCD 16x2 dan Keypad dengan Arduino dan juga betapa mudahnya memprogramnya dengan menggunakan perpustakaan yang tersedia. Anda juga akan memahami cara memprogram Arduino Anda untuk menyelesaikan tugas tertentu.
Langkah 1: Hal-hal yang Diperlukan
Arduino Uno (Versi apa pun bisa digunakan) Layar LCD 16×2 Papan tombol 4×4 Baterai 9V Papan tempat memotong roti dan Kabel penghubung
Langkah 2: Diagram Sirkuit
Langkah 3: Program Kalkulator Arduino
Program Arduino lengkap untuk proyek ini diberikan di akhir proyek ini. Kode ini dibagi menjadi potongan-potongan kecil yang bermakna dan dijelaskan di bawah ini. Seperti yang telah dijelaskan sebelumnya, kita akan menghubungkan LCD dan keypad dengan Arduino menggunakan perpustakaan. 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 perpustakaan 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, kami siap untuk pemrograman. Meskipun kami telah menggunakan perpustakaan untuk menggunakan keypad, kami harus menyebutkan beberapa detail (ditampilkan di bawah) tentang keypad ke Arduino. Variabel ROWS dan COLS akan memberi tahu berapa banyak baris dan kolom yang dimiliki keypad kita dan keymap menunjukkan urutan tombol yang ada di keyboard. Keypad yang saya gunakan dalam proyek ini terlihat seperti di bawah ini ke peta kunci juga mewakili hal yang sama. Lebih lanjut di bawah ini kami telah menyebutkan pin mana yang terhubung dengan Keypad menggunakan array variabel rowPins dan colPins.const byte ROWS = 4; // Empat barisconst byte COLS = 4; // Tiga kolom// Tentukan kunci Keymapchar[ROWS][COLS] = { {'1', '2', '3', 'A'}, {'4', '5', '6', ' B'}, {'7', '8', '9', 'C'}, {'*', '0', '#', 'D'}};byte rowPins[ROWS] = { 0, 1, 2, 3 };// Hubungkan keypad ROW0, ROW1, ROW2 dan ROW3 ke pin Arduino ini.byte colPins[COLS] = { 4, 5, 6, 7 }; // Hubungkan keypad COL0, COL1 dan COL2 ke pin Arduino ini. Setelah kita menyebutkan jenis keypad apa yang kita gunakan dan bagaimana cara menghubungkannya, kita dapat membuat keypad menggunakan detail tersebut menggunakan baris di bawah ini Keypad kpd = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS); // Buat Keypad Demikian pula kita juga harus memberi tahu pin Arduino yang terhubung ke LCD. Menurut diagram sirkuit kami definisinya akan seperti di bawah ini const int rs = 8, en = 9, d4 = 10, d5 = 11, d6 = 12, d7 = 13; //Menyematkan LCD yang terhubungLiquidCrystal lcd(rs, en, d4, d5, d6, d7); //membuat LCDDi dalam fungsi setup, kita hanya menampilkan nama proyek dan kemudian melanjutkan ke while loop di mana proyek utama berada. Pada dasarnya, kita harus memeriksa apakah ada yang diketik di keypad, jika diketik kita harus mengenali apa yang sedang diketik dan kemudian mengubahnya menjadi variabel ketika "=" ditekan kita harus menghitung hasilnya dan akhirnya menampilkannya di LCD. Inilah yang dilakukan di dalam fungsi loop seperti yang ditunjukkan di bawah ini key = kpd.getKey(); //menyimpan nilai kunci yang ditekan dalam charif (key!=NO_KEY)DetectButtons();if (result==true)CalculateResult();DisplayResult(); Apa yang terjadi di dalam setiap fungsi dijelaskan menggunakan baris komentar, baca kode lengkap di bawah ini, mainkan untuk memahami cara kerjanya. Jika Anda memiliki keraguan pada baris tertentu, jangan ragu untuk menggunakan bagian komentar atau forum.
Langkah 4:
Langkah 5: Kerja Kalkulator Arduino
Buat koneksi sesuai diagram sirkuit dan unggah kode di bawah ini. Jika itu menunjukkan kesalahan, pastikan Anda telah menambahkan perpustakaan sesuai instruksi yang diberikan di atas. Anda juga dapat mencoba simulasi untuk memeriksa apakah masalahnya ada pada perangkat keras Anda. Jika semuanya dilakukan sebagaimana mestinya, maka perangkat keras Anda akan terlihat seperti di bawah ini dengan LCD yang menampilkan Kalkulator Arduino ini menggunakan Keypad 4x4 yang sedang bekerja Karena keypad yang digunakan di sini tidak memiliki tanda yang sesuai, saya menganggap Abjad sebagai operator sebagai tercantum di bawah iniKarakter pada Keypad Diasumsikan sebagai “A” Penambahan (+) “B” Pengurangan (-) “C” Perkalian (*) “D” Pembagian (/) “*” Hapus (C) “#” Sama dengan (=)Anda dapat gunakan spidol untuk menuliskan apa yang sebenarnya diwakili oleh setiap tombol. Setelah selesai, Anda dapat langsung mulai menggunakan kalkulator. Ketik nomor dan akan muncul di baris kedua tekan operan dan ketik nomor kedua Anda akhirnya tekan tombol "#" untuk mendapatkan hasil Anda. Anda juga dapat mencoba membuat kalkulator Arduino berbasis Layar Sentuh ini.
Langkah 6: Kode
/* * Program kalkulator Keypad Arduino */#include //File header untuk LCD dari https://www.arduino.cc/en/Reference/LiquidCrystal#include //File header untuk Keypad dari https://github.com/ Chris--A/Keypadconst byte ROWS = 4; // Empat barisconst byte COLS = 4; // Tiga kolom// Tentukan kunci Keymapchar[ROWS][COLS] = { {'7', '8', '9', 'D'}, {'4', '5', '6', ' C'}, {'1', '2', '3', 'B'}, {'*', '0', '#', 'A'}};byte rowPins[ROWS] = { 0, 1, 2, 3 };// Hubungkan keypad ROW0, ROW1, ROW2 dan ROW3 ke pin Arduino ini.byte colPins[COLS] = { 4, 5, 6, 7 }; // Hubungkan keypad COL0, COL1 dan COL2 ke pin Arduino ini. Keypad kpd = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS); // Buat Keypadconst int rs = 8, en = 9, d4 = 10, d5 = 11, d6 = 12, d7 = 13; //Menyematkan LCD yang terhubungLiquidCrystal lcd(rs, en, d4, d5, d6, d7); angka panjang1, angka2, angka; kunci karakter, tindakan; hasil boolean = false;pengaturan batal() { lcd.begin(16, 2); //Kami menggunakan layar LCD 16*2 lcd.print("Kalkulator DIY"); //Menampilkan pesan intro lcd.setCursor(0, 1); // atur kursor ke kolom 0, baris 1 lcd.print("-CircuitDigest"); //Menampilkan penundaan pesan intro(2000); //Tunggu tampilan menampilkan info lcd.clear(); //Lalu bersihkan}void loop() {key = kpd.getKey(); //menyimpan nilai kunci yang ditekan dalam charif (key!=NO_KEY)DetectButtons();if (result==true)CalculateResult();DisplayResult(); }void DetectButtons(){ lcd.clear(); //Kemudian bersihkan if (key=='*') //If cancel Button ditekan {Serial.println("Button Cancel"); Angka=Bilangan1=Bilangan2=0; result=false;} if (kunci == '1') //Jika Tombol 1 ditekan {Serial.println ("Tombol 1"); if (Angka==0) Angka=1; else Angka = (Nomor*10) + 1; //Ditekan dua kali } if (kunci == '4') //Jika Tombol 4 ditekan {Serial.println ("Tombol 4"); if (Angka==0) Angka=4; else Angka = (Nomor*10) + 4; //Ditekan dua kali } if (tombol == '7') //Jika Tombol 7 ditekan {Serial.println ("Tombol 7"); if (Angka==0) Angka=7; else Angka = (Nomor*10) + 7; //Tekan dua kali } if (kunci == '0') {Serial.println ("Tombol 0"); //Tombol 0 Ditekan jika (Angka==0) Angka=0; else Angka = (Nomor*10) + 0; //Tekan dua kali } if (kunci == '2') //Tombol 2 Ditekan {Serial.println ("Tombol 2"); if (Angka==0) Angka=2; else Angka = (Nomor*10) + 2; //Tekan dua kali } if (kunci == '5') {Serial.println ("Tombol 5"); if (Angka==0) Angka=5; else Angka = (Nomor*10) + 5; //Tekan dua kali } if (kunci == '8') {Serial.println ("Tombol 8"); if (Angka==0) Angka=8; else Angka = (Nomor*10) + 8; //Tekan dua kali } if (kunci == '#') {Serial.println ("Tombol Sama"); Angka2=Angka; hasil = benar; } if (kunci == '3') {Serial.println ("Tombol 3"); if (Angka==0) Angka=3; else Angka = (Nomor*10) + 3; //Tekan dua kali } if (kunci == '6') {Serial.println ("Tombol 6"); if (Angka==0) Angka=6; else Angka = (Nomor*10) + 6; //Tekan dua kali } if (kunci == '9') {Serial.println ("Tombol 9"); if (Angka==0) Angka=9; else Angka = (Nomor*10) + 9; //Tekan dua kali } if (key == 'A' || key == 'B' || key == 'C' || key == 'D') //Mendeteksi Tombol pada Kolom 4 { Num1 = Number; Nomor = 0; if (kunci == 'A') {Serial.println ("Penambahan"); aksi = '+';} if (kunci == 'B') {Serial.println ("Pengurangan"); tindakan = '-'; } if (kunci == 'C') {Serial.println ("Perkalian"); aksi = '*';} if (kunci == 'D') {Serial.println ("Pengembangan"); tindakan = '/';} delay(100); }}void HitungResult(){ if (action=='+') Number = Num1+Num2; if (aksi=='-') Angka = Angka1-Num2; if (aksi=='*') Angka = Angka1*Num2; if (aksi=='/') Angka = Angka1/Bilangan2; }void DisplayResult(){ lcd.setCursor(0, 0); // atur kursor ke kolom 0, baris 1 lcd.print(Num1); lcd.print(aksi); lcd.print(Bilangan2); if (hasil==benar) {lcd.print(" ="); lcd.print(Number);} //Menampilkan hasil lcd.setCursor(0, 1); // atur kursor ke kolom 0, baris 1 lcd.print(Number); //Tampilkan hasilnya}
Direkomendasikan:
Kalkulator Berikutnya/Arduino: 3 Langkah
Nextion/Arduino Calculator: Kalkulator yang berguna untuk Arduino Uno. Kalkulator ini memiliki gaya yang mirip dengan kalkulator standar yang disertakan dengan Windows 10. Catatan: Ini tidak mencakup fungsi ilmiah dan pemrogram yang dilakukan oleh kalkulator Windows 10, tetapi fungsi ini
Kalkulator Arduino Menggunakan Keypad 4X4: 4 Langkah (dengan Gambar)
Kalkulator Arduino Menggunakan Keypad 4X4: 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
Emulator Kalkulator Ilmiah HP-35 Dengan Arduino Uno: 4 Langkah
HP-35 Scientific Calculator Emulator Dengan Arduino Uno: Tujuan dari proyek ini adalah untuk menjalankan simulator berikut https://www.hpmuseum.org/simulate/hp35sim/hp35sim….pada Arduino Uno dengan TFTLCD dan Layar Sentuh menyerupai Kalkulator Ilmiah HP-35 asli. Ini mengemulasi kode asli yang disimpan
Kalkulator Arduino DIY Menggunakan 1602 LCD dan Keypad 4x4: 4 Langkah
Kalkulator DIY Arduino Menggunakan LCD 1602 dan Keypad 4x4: Hai teman-teman dalam instruksi ini kami akan membuat kalkulator menggunakan Arduino yang dapat melakukan perhitungan dasar. Jadi pada dasarnya kita akan mengambil input dari keypad 4x4 dan mencetak data pada layar lcd 16x2 dan arduino akan melakukan perhitungan
Cara Menggunakan Keypad & LCD Dengan Arduino untuk Membuat Kalkulator Arduino.: 5 Langkah
Cara Menggunakan Keypad & LCD Dengan Arduino untuk Membuat Kalkulator Arduino.: Dalam tutorial ini saya akan membagikan bagaimana Anda dapat menggunakan keypad matriks 4x4 dan LCD 16x2 dengan Arduino dan menggunakannya untuk membuat Kalkulator Arduino sederhana. Jadi mari kita mulai