![Kalkulator Arduino: 6 Langkah Kalkulator Arduino: 6 Langkah](https://i.howwhatproduce.com/images/005/image-12218-6-j.webp)
Isi kandungan:
2025 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2025-01-23 15:01
![Kalkulator Arduino Kalkulator Arduino](https://i.howwhatproduce.com/images/005/image-12218-7-j.webp)
Pengaturcaraan selalu menyeronokkan dan Arduino adalah platform yang bagus jika anda baru memulakan dengan pengaturcaraan Terbenam. Dalam tutorial ini kita akan membina kalkulator kita sendiri dengan Arduino. Nilai dapat dikirim melalui papan kekunci (papan kekunci 4 × 4) dan hasilnya dapat dilihat pada layar LCD (16 × 2 Dot-matrix). Kalkulator ini dapat melakukan operasi mudah seperti Penambahan, Pengurangan, Pendaraban dan Pembahagian dengan nombor bulat. Tetapi setelah anda memahami konsepnya, anda boleh melaksanakan fungsi saintifik dengan fungsi terbina dalam Arduino. Pada akhir projek ini, anda akan mengetahui cara menggunakan LCD 16x2 dan Pad Kekunci dengan Arduino dan juga betapa mudahnya memprogram untuk mereka dengan mudah. perpustakaan yang ada. Anda juga akan memahami cara memprogram Arduino anda untuk menyelesaikan tugas tertentu.
Langkah 1: Perkara Yang Diperlukan
Arduino Uno (Sebarang versi akan berfungsi) 16 × 2 Paparan LCD4 × 4 Bateri Keypad 9V Papan roti dan wayar penyambung
Langkah 2: Rajah Litar
![Rajah Litar Rajah Litar](https://i.howwhatproduce.com/images/005/image-12218-8-j.webp)
Langkah 3: Program Kalkulator Arduino
Program Arduino yang lengkap untuk projek ini diberikan pada akhir projek ini. Kod ini dibahagikan kepada potongan kecil yang bermakna dan dijelaskan di bawah. Seperti yang diberitahu sebelumnya, kita akan menghubungkan LCD dan papan kekunci dengan Arduino menggunakan perpustakaan. Oleh itu mari kita tambahkannya ke Arduino IDE kami terlebih dahulu. Perpustakaan untuk LCD sudah termasuk dalam Arduino anda secara lalai, jadi kami tidak perlu risau. Untuk perpustakaan Keypad klik pada pautan untuk memuat turunnya dari Github. Anda akan mendapat fail ZIP, kemudian tambahkan lib ini ke Arduino oleh Sketch -> Sertakan Perpustakaan -> Tambahkan fail. ZIP dan arahkan lokasi ke fail yang dimuat turun ini. Setelah selesai, kami sudah siap untuk pengaturcaraan. Walaupun kami telah menggunakan perpustakaan untuk menggunakan papan kekunci, kami harus menyebutkan beberapa butiran (ditunjukkan di bawah) mengenai papan kekunci ke Arduino. Pemboleh ubah ROWS dan COLS akan memberitahu berapa baris dan lajur papan kekunci kami dan peta kekunci menunjukkan susunan kekunci yang terdapat pada papan kekunci. Pad kekunci yang saya gunakan dalam projek ini kelihatan seperti di bawah ini sehingga peta kunci juga menunjukkan yang sama. Selanjutnya di bawah ini kita telah menyebutkan pin mana yang disambungkan keypad menggunakan array array pinPins dan colPins.const byte ROWS = 4; // Empat bait rowsconst COLS = 4; // Tiga lajur // Tentukan kekunci Keymapchar [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', ' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {' * ',' 0 ',' # ',' D '}}; byte rowPins [ROWS] = {0, 1, 2, 3}; // Sambungkan papan kekunci ROW0, ROW1, ROW2 dan ROW3 ke pin Arduino ini. Byte colPins [COLS] = {4, 5, 6, 7}; // Sambungkan papan kekunci COL0, COL1 dan COL2 ke pin Arduino ini. Sebaik sahaja kita telah menyebut jenis papan kekunci apa yang kita gunakan dan bagaimana ia dihubungkan, kita boleh membuat papan kekunci menggunakan butiran tersebut menggunakan baris di bawah Kekunci kpd = Keypad (makeKeymap (kunci), rowPins, colPins, ROWS, COLS); // Buat KeypadSeperti yang sama, kita juga harus memberitahu pin Arduino mana yang disambungkan ke LCD. Menurut rajah litar kami, definisi akan seperti di bawahconst int rs = 8, en = 9, d4 = 10, d5 = 11, d6 = 12, d7 = 13; // Pin yang disambungkan LCD LiquidCrystal lcd (rs, en, d4, d5, d6, d7); // buat LCDDi dalam fungsi penyediaan, kita hanya memaparkan nama projek dan kemudian meneruskan sementara loop di mana projek utama terletak. Pada asasnya, kita harus memeriksa apakah ada sesuatu yang ditaip pada papan kekunci, jika diketik, kita harus mengenali apa yang sedang ditaip dan kemudian ubah menjadi pemboleh ubah apabila “=” ditekan kita harus menghitung hasilnya dan akhirnya memaparkannya di LCD. Inilah yang dilakukan di dalam fungsi gelung seperti yang ditunjukkan di bawahkey = kpd.getKey (); // menyimpan nilai kunci yang ditekan dalam charif (kunci! = NO_KEY) DetectButtons (); if (hasil == benar) CalculateResult (); DisplayResult (); Apa yang berlaku di dalam setiap fungsi dijelaskan menggunakan baris komen, baca kod lengkap di bawah, main-main dengannya untuk memahami bagaimana ia sebenarnya berfungsi. Sekiranya anda mempunyai keraguan pada baris tertentu, sila gunakan bahagian komen atau forum.
Langkah 4:
Langkah 5: Mengendalikan Kalkulator Arduino
![Kerja Kalkulator Arduino Kerja Kalkulator Arduino](https://i.howwhatproduce.com/images/005/image-12218-9-j.webp)
Buat sambungan seperti rajah litar dan muat naik kod di bawah. Sekiranya menunjukkan kesalahan, pastikan anda telah menambahkan perpustakaan mengikut arahan yang diberikan di atas. Anda juga boleh mencuba simulasi untuk memeriksa sama ada masalah dengan perkakasan anda. Sekiranya semuanya dilakukan sebagaimana mestinya, maka perkakasan anda akan kelihatan seperti di bawah ini dengan LCD memaparkan ini Kalkulator Arduino menggunakan Pad Kekunci 4x4 dalam tindakan Memandangkan papan kekunci yang digunakan di sini tidak mempunyai tanda yang sesuai di atasnya, saya telah menganggap Huruf sebagai operator sebagai disenaraikan di bawahCharacter pada KeypadDengan anggapan Penambahan “A” (+) “B” Pengurangan (-) “C” Pendaraban (*) Bahagian “D” (/) “*” Hapus (C) “#” Sama dengan (=) Anda boleh gunakan penanda untuk menulis apa yang sebenarnya ditunjukkan oleh setiap butang. Dengan selesai, anda boleh mula menggunakan kalkulator secara langsung. Menaip nombor dan akan muncul di baris kedua tekan operan dan taipkan nombor kedua anda akhirnya tekan kekunci "#" untuk mendapatkan hasil anda. Anda juga boleh mencuba membina kalkulator Arduino berasaskan Skrin Sentuh ini.
Langkah 6: Kod
/ * * Program kalkulator Arduino Keypad * / # include // Fail header untuk LCD dari https://www.arduino.cc/en/Reference/LiquidCrystal#include // Fail header untuk Keypad dari https://github.com/ Chris - A / Keypadconst byte ROWS = 4; // Empat bait rowsconst COLS = 4; // Tiga lajur // Tentukan kekunci Keymapchar [ROWS] [COLS] = {{'7', '8', '9', 'D'}, {'4', '5', '6', ' C '}, {' 1 ',' 2 ',' 3 ',' B '}, {' * ',' 0 ',' # ',' A '}}; byte rowPins [ROWS] = {0, 1, 2, 3}; // Sambungkan pad kekunci ROW0, ROW1, ROW2 dan ROW3 ke pin Arduino.byte colPins [COLS] = {4, 5, 6, 7}; // Sambungkan papan kekunci COL0, COL1 dan COL2 ke pin Arduino ini. Keypad kpd = Pad Kekunci (makeKeymap (kunci), rowPins, colPins, ROWS, COLS); // Buat Keypadconst int rs = 8, en = 9, d4 = 10, d5 = 11, d6 = 12, d7 = 13; // Pin yang disambungkan LCD LiquidCrystal lcd (rs, en, d4, d5, d6, d7); panjang Num1, Num2, Nombor; kunci char, tindakan; hasil boolean = false; persediaan kosong () {lcd.begin (16, 2); // Kami menggunakan lcd.print LCD 16 * 2 ("Kalkulator DIY"); // Paparkan mesej intro lcd.setCursor (0, 1); // tetapkan kursor ke lajur 0, baris 1 lcd.print ("- CircuitDigest"); // Paparkan kelewatan mesej intro (2000); // Tunggu paparan untuk menunjukkan maklumat lcd.clear (); // Kemudian bersihkan} gelung kosong () {key = kpd.getKey (); // menyimpan nilai kunci yang ditekan dalam charif (kunci! = NO_KEY) DetectButtons (); if (hasil == benar) CalculateResult (); DisplayResult (); } batal DetectButtons () {lcd.clear (); // Kemudian bersihkan jika (kunci == '*') // Jika Batal batal ditekan {Serial.println ("Button Cancel"); Nombor = Num1 = Num2 = 0; result = false;} if (key == '1') // Jika Butang 1 ditekan {Serial.println ("Button 1"); jika (Nombor == 0) Nombor = 1; nombor lain = (Nombor * 10) + 1; // Ditekan dua kali} jika (kunci == '4') // Jika Butang 4 ditekan {Serial.println ("Butang 4"); jika (Nombor == 0) Nombor = 4; lain Nombor = (Nombor * 10) + 4; // Ditekan dua kali} if (key == '7') // Jika Butang 7 ditekan {Serial.println ("Button 7"); jika (Nombor == 0) Nombor = 7; nombor lain = (Nombor * 10) + 7; // Ditekan dua kali} if (key == '0') {Serial.println ("Butang 0"); // Butang 0 Ditekan jika (Nombor == 0) Nombor = 0; lain Nombor = (Nombor * 10) + 0; // Ditekan dua kali} jika (kunci == '2') // Butang 2 Ditekan {Serial.println ("Butang 2"); jika (Nombor == 0) Nombor = 2; nombor lain = (Nombor * 10) + 2; // Ditekan dua kali} if (key == '5') {Serial.println ("Button 5"); jika (Nombor == 0) Nombor = 5; nombor lain = (Nombor * 10) + 5; // Ditekan dua kali} if (key == '8') {Serial.println ("Button 8"); jika (Nombor == 0) Nombor = 8; nombor lain = (Nombor * 10) + 8; // Ditekan dua kali} if (key == '#') {Serial.println ("Button Equal"); Num2 = Nombor; hasil = benar; } if (key == '3') {Serial.println ("Butang 3"); jika (Nombor == 0) Nombor = 3; nombor lain = (Nombor * 10) + 3; // Ditekan dua kali} if (key == '6') {Serial.println ("Button 6"); jika (Nombor == 0) Nombor = 6; nombor lain = (Nombor * 10) + 6; // Ditekan dua kali} if (key == '9') {Serial.println ("Button 9"); jika (Nombor == 0) Nombor = 9; nombor lain = (Nombor * 10) + 9; // Ditekan dua kali} if (key == 'A' || key == 'B' || key == 'C' || key == 'D') // Mengesan Butang pada Lajur 4 {Num1 = Number; Nombor = 0; if (key == 'A') {Serial.println ("Penambahan"); action = '+';} if (key == 'B') {Serial.println ("Pengurangan"); tindakan = '-'; } if (key == 'C') {Serial.println ("Pendaraban"); action = '*';} if (key == 'D') {Serial.println ("Penyimpangan"); tindakan = '/';} kelewatan (100); }} batal CalculateResult () {if (action == '+') Nombor = Num1 + Num2; jika (tindakan == '-') Nombor = Num1-Num2; jika (tindakan == '*') Nombor = Num1 * Num2; jika (tindakan == '/') Nombor = Num1 / Num2; } batal DisplayResult () {lcd.setCursor (0, 0); // tetapkan kursor ke lajur 0, baris 1 lcd.print (Num1); lcd.print (tindakan); lcd.print (Bilangan 2); jika (hasil == benar) {lcd.print ("="); lcd.print (Number);} // Paparkan hasilnya lcd.setCursor (0, 1); // tetapkan kursor ke lajur 0, baris 1 lcd.print (Number); // Paparkan hasilnya}
Disyorkan:
Kalkulator Nextion / Arduino: 3 Langkah
![Kalkulator Nextion / Arduino: 3 Langkah Kalkulator Nextion / Arduino: 3 Langkah](https://i.howwhatproduce.com/images/001/image-1032-25-j.webp)
Kalkulator Nextion / Arduino: Kalkulator berguna untuk Arduino Uno. Kalkulator serupa dengan gaya kalkulator standard yang dihantar dengan Windows 10. Catatan: Ia tidak termasuk fungsi saintifik dan programmer yang dilakukan oleh kalkulator Windows 10, tetapi fungsi ini
Kalkulator Arduino Menggunakan Pad Kekunci 4X4: 4 Langkah (dengan Gambar)
![Kalkulator Arduino Menggunakan Pad Kekunci 4X4: 4 Langkah (dengan Gambar) Kalkulator Arduino Menggunakan Pad Kekunci 4X4: 4 Langkah (dengan Gambar)](https://i.howwhatproduce.com/images/002/image-3036-29-j.webp)
Kalkulator Arduino Menggunakan Pad Kekunci 4X4: Dalam tutorial ini kita akan membina kalkulator kita sendiri dengan Arduino. Nilai dapat dikirim melalui papan kekunci (papan kekunci 4 × 4) dan hasilnya dapat dilihat pada layar LCD. Kalkulator ini dapat melakukan operasi mudah seperti Penambahan, Pengurangan, Multiplikat
Emulator Kalkulator Ilmiah HP-35 Dengan Arduino Uno: 4 Langkah
![Emulator Kalkulator Ilmiah HP-35 Dengan Arduino Uno: 4 Langkah Emulator Kalkulator Ilmiah HP-35 Dengan Arduino Uno: 4 Langkah](https://i.howwhatproduce.com/images/008/image-21403-j.webp)
HP-35 Scientific Calculator Emulator With Arduino Uno: Matlamat projek ini adalah menjalankan simulator berikut https://www.hpmuseum.org/simulate/hp35sim/hp35sim….on a Arduino Uno dengan TFTLCD dan Touch Screen menyerupai Kalkulator Ilmiah HP-35 yang asli. Ia meniru kod asal yang disimpan
Kalkulator DIY Arduino Menggunakan 1602 LCD dan Pad Kekunci 4x4: 4 Langkah
![Kalkulator DIY Arduino Menggunakan 1602 LCD dan Pad Kekunci 4x4: 4 Langkah Kalkulator DIY Arduino Menggunakan 1602 LCD dan Pad Kekunci 4x4: 4 Langkah](https://i.howwhatproduce.com/images/010/image-28224-j.webp)
Kalkulator Arduino DIY Menggunakan 1602 LCD dan Pad Kekunci 4x4: Hai kawan-kawan dalam arahan ini kami akan membuat kalkulator menggunakan Arduino yang dapat melakukan pengiraan asas. Jadi pada dasarnya kita akan mengambil input dari papan kekunci 4x4 dan mencetak data pada paparan lcd 16x2 dan arduino akan melakukan pengiraan
Cara Menggunakan Pad Kekunci & LCD Dengan Arduino untuk Membuat Kalkulator Arduino .: 5 Langkah
![Cara Menggunakan Pad Kekunci & LCD Dengan Arduino untuk Membuat Kalkulator Arduino .: 5 Langkah Cara Menggunakan Pad Kekunci & LCD Dengan Arduino untuk Membuat Kalkulator Arduino .: 5 Langkah](https://i.howwhatproduce.com/images/005/image-13111-19-j.webp)
Cara Menggunakan Papan Kekunci & LCD Dengan Arduino untuk Membuat Kalkulator Arduino .: Dalam tutorial ini saya akan berkongsi bagaimana anda boleh menggunakan papan kekunci matriks 4x4 dan LCD 16x2 dengan Arduino dan menggunakannya untuk membuat Kalkulator Arduino sederhana. Oleh itu, mari kita mulakan