Talaan ng mga Nilalaman:
- Hakbang 1: Kinakailangan ang Mga Bagay
- Hakbang 2: Diagram ng Circuit
- Hakbang 3: Arduino Calculator Program
- Hakbang 4:
- Hakbang 5: Paggawa ng Arduino Calculator
- Hakbang 6: Code
Video: Calculator ng Arduino: 6 na Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:13
Ang programa ay palaging masaya at ang Arduino ay isang kahanga-hangang platform kung nagsisimula ka lang sa naka-embed na programa. Sa tutorial na ito magtatayo kami ng aming sariling calculator kasama ang Arduino. Ang mga halaga ay maaaring maipadala sa pamamagitan ng isang keypad (4 × 4 keypad) at ang resulta ay maaaring makita sa isang LCD screen (16 × 2 Dot-matrix). Ang calculator na ito ay maaaring magsagawa ng mga simpleng pagpapatakbo tulad ng Pagdagdag, Pagbawas, Pagpaparami at Dibisyon na may buong numero. Ngunit kapag naintindihan mo ang konsepto maaari mong ipatupad kahit na mga pang-agham na pag-andar na may built-in na mga pag-andar ng Arduino. Sa pagtatapos ng proyektong ito malalaman mo kung paano gamitin ang isang 16x2 LCD at Keypad na may Arduino at gaano din kadali ang mag-program para sa kanila na madaling gamitin magagamit na mga aklatan. Mauunawaan mo rin kung paano i-program ang iyong Arduino para sa pagtupad ng isang partikular na gawain.
Hakbang 1: Kinakailangan ang Mga Bagay
Arduino Uno (Anumang bersyon ay gagana) 16 × 2 LCD Display4 × 4 Keypad9V BatteryBreadboard at Mga kumokonekta na mga wire
Hakbang 2: Diagram ng Circuit
Hakbang 3: Arduino Calculator Program
Ang kumpletong programa ng Arduino para sa proyektong ito ay ibinibigay sa pagtatapos ng proyektong ito. Ang code ay nahahati sa maliliit na makabuluhang mga tipak at ipinaliwanag sa ibaba. Tulad ng sinabi sa mas maaga, mag-i-interface kami ng isang LCD at keypad sa Arduino gamit ang mga aklatan. Kaya idagdag muna natin ang mga ito sa aming Arduino IDE. Ang silid-aklatan para sa LCD ay isinama na sa iyong Arduino bilang default kaya hindi namin kailangang mag-alala tungkol dito. Para sa Keypad library mag-click sa link upang i-download ito mula sa Github. Makakakuha ka ng isang ZIP file, pagkatapos ay idagdag ang lib na ito sa Arduino ng Sketch -> Isama ang Library -> Magdagdag ng. ZIP file at ituro ang lokasyon sa na-download na file. Kapag tapos na kami ay nakaayos na para sa pagprograma. Kahit na gumamit kami ng isang silid-aklatan para sa paggamit ng isang keypad kailangan naming banggitin ang ilang mga detalye (ipinakita sa ibaba) tungkol sa keypad sa Arduino. Sasabihin ng variable na ROWS at COLS kung ilang mga row at haligi ang mayroon ang aming keypad at ipinapakita ng keymap ang pagkakasunud-sunod kung saan naroroon ang mga key sa keyboard. Ang keypad na ginagamit ko sa proyektong ito ay mukhang ito sa ibaba sa pangunahing mapa ay kumakatawan sa pareho. Dagdag sa ibaba ay nabanggit namin kung aling mga pin ang Keypad ay konektado gamit ang variable array rowPins at colPins.const byte ROWS = 4; // Four rowconst byte COLS = 4; // Three column // // Define the Keymapchar keys [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', ' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {' * ',' 0 ',' # ',' D '}}; byte rowPins [ROWS] = {0, 1, 2, 3}; // Ikonekta ang keypad ROW0, ROW1, ROW2 at ROW3 sa mga Arduino pins.byte colPins [COLS] = {4, 5, 6, 7}; // Ikonekta ang keypad COL0, COL1 at COL2 sa mga pin ng Arduino na ito. Sa sandaling nabanggit namin kung anong uri ng keypad ang ginagamit namin at kung paano ito nakakonekta, maaari naming likhain ang keypad gamit ang mga detalyeng iyon gamit ang linya sa ibaba.), rowPins, colPins, ROWS, COLS); / / Lumikha ng Keypad Ayon sa aming circuit diagram ang mga kahulugan ay magiging katulad sa ibabaconst rs = 8, en = 9, d4 = 10, d5 = 11, d6 = 12, d7 = 13; // Pins kung saan ang LCD ay konektadoLiquidCrystal lcd (rs, en, d4, d5, d6, d7); // create the LCDInside the setup function, ipapakita lang namin ang pangalan ng proyekto at pagkatapos ay magpatuloy habang loop kung saan nakasalalay ang pangunahing proyekto. Talaga, kailangan nating suriin kung may nai-type sa keypad, kung nai-type dapat nating makilala ano ang nai-type at pagkatapos ay i-convert ito sa isang variable kapag ang "=" ay pinindot kailangan nating kalkulahin ang resulta at pagkatapos ay ipakita ito sa LCD. Ito mismo ang ginagawa sa loob ng pag-andar ng loop tulad ng ipinapakita sa ibabakey = kpd.getKey (); // pag-iimbak ng pinindot na key na halaga sa isang charif (key! = NO_KEY) Detect Buttons (); kung (resulta == totoo) CalculateResult (); DisplayResult (); Ang nangyayari sa loob ng bawat pag-andar ay ipinaliwanag gamit ang mga linya ng komento, dumaan sa kumpletong code sa ibaba, kumubkob dito upang maunawaan kung paano talaga ito gumagana. Kung mayroon kang anumang pagdududa sa isang tukoy na linya, huwag mag-atubiling gamitin ang seksyon ng komento o ang mga forum.
Hakbang 4:
Hakbang 5: Paggawa ng Arduino Calculator
Gawin ang mga koneksyon ayon sa bawat diagram ng circuit at i-upload ang code sa ibaba. Kung nagpapakita ito ng error siguraduhing naidagdag mo ang library ayon sa tagubilin na ibinigay sa itaas. Maaari mo ring subukan ang simulation upang suriin kung ang problema ay nasa iyong hardware. Kung ang lahat ay tapos na ayon sa dapat na maging, pagkatapos ang iyong hardware ay magmumukhang ganito sa ibaba sa LCD na ipinapakita itoArduino Calculator na gumagamit ng 4x4 Keypad sa aksyon Dahil ang keypad na ginamit dito ay walang tamang mga marka dito ay ipinapalagay ko na ang mga Alphabet ay magiging mga operator bilang nakalista sa ibabaCharacter sa KeypadApinapalagay na "A" Karagdagan (+) "B" Pagbawas (-) "C" Pagpaparami (*) "D" Division (/) "*" I-clear (C) "#" Katumbas (=) Maaari kang gumamit ng isang marker upang sumulat sa kung ano talaga ang kinakatawan ng bawat pindutan. Sa tapos na, maaari mong direktang simulan ang paggamit ng calculator. Uri ng numero at lilitaw sa pangalawang linya pindutin ang operand at i-type ang iyong pangalawang numero sa wakas pindutin ang "#" key upang makuha ang iyong resulta. Maaari mo ring subukang buuin ang calculator ng Arduino batay sa Touchscreen.
Hakbang 6: Code
/ * * Arduino Keypad calculator Program * / # isama // Header file para sa LCD mula sa https://www.arduino.cc/en/Referensi/LiquidCrystal#include // Header file para sa Keypad mula sa https://github.com/ Chris - A / Keypadconst byte ROWS = 4; // Four rowconst byte COLS = 4; // Three column // // Define the Keymapchar keys [ROWS] [COLS] = {{'7', '8', '9', 'D'}, {'4', '5', '6', ' C '}, {' 1 ',' 2 ',' 3 ',' B '}, {' * ',' 0 ',' # ',' A '}}; byte rowPins [ROWS] = {0, 1, 2, 3}; // Ikonekta ang keypad ROW0, ROW1, ROW2 at ROW3 sa mga Arduino pins.byte colPins [COLS] = {4, 5, 6, 7}; // Connect keypad COL0, COL1 at COL2 sa mga pin ng Arduino na ito. Keypad kpd = Keypad (makeKeymap (key), rowPins, colPins, ROWS, COLS); // Lumikha ng Keypadconst int rs = 8, en = 9, d4 = 10, d5 = 11, d6 = 12, d7 = 13; // Pins kung saan ang LCD ay konektadoLiquidCrystal lcd (rs, en, d4, d5, d6, d7); mahabang Num1, Num2, Bilang; char key, pagkilos; resulta ng boolean = false; void setup () {lcd.begin (16, 2); // Gumagamit kami ng isang 16 * 2 LCD display lcd.print ("DIY Calculator"); // Ipakita ang isang intro message lcd.setCursor (0, 1); // itakda ang cursor sa haligi 0, linya 1 lcd.print ("- CircuitDigest"); // Ipakita ang isang pagkaantala ng intro message (2000); // Maghintay para sa pagpapakita upang maipakita ang impormasyon lcd.clear (); // Pagkatapos linisin ito} void loop () {key = kpd.getKey (); // pag-iimbak ng pinindot na key na halaga sa isang charif (key! = NO_KEY) Detect Buttons (); kung (resulta == totoo) CalculateResult (); DisplayResult (); } walang bisa Mga Detectbuttons () {lcd.clear (); // Kung gayon linisin ito kung (key == '*') // Kung kanselahin ang Button ay pinindot ang {Serial.println ("Button Cancel"); Bilang = Num1 = Num2 = 0; resulta = false;} kung (key == '1') // Kung ang Button 1 ay pinindot ang {Serial.println ("Button 1"); kung (Bilang == 0) Bilang = 1; iba pa Bilang = (Bilang * 10) + 1; // Pinindot nang dalawang beses} kung (key == '4') // Kung ang Button 4 ay pinindot {Serial.println ("Button 4"); kung (Bilang == 0) Bilang = 4; iba pa Bilang = (Bilang * 10) + 4; // Pinindot nang dalawang beses} kung (key == '7') // Kung ang Button 7 ay pinindot {Serial.println ("Button 7"); kung (Bilang == 0) Bilang = 7; iba pa Bilang = (Bilang * 10) + 7; // Pinindot nang dalawang beses} kung (key == '0') {Serial.println ("Button 0"); // Button 0 ay Pinsala kung (Bilang == 0) Bilang = 0; iba pa Bilang = (Bilang * 10) + 0; // Pinindot nang dalawang beses} kung (key == '2') // Button 2 ay Pinindot {Serial.println ("Button 2"); kung (Bilang == 0) Bilang = 2; iba pa Bilang = (Bilang * 10) + 2; // Pinindot nang dalawang beses} kung (key == '5') {Serial.println ("Button 5"); kung (Bilang == 0) Bilang = 5; iba pa Bilang = (Bilang * 10) + 5; // Pinindot nang dalawang beses} kung (key == '8') {Serial.println ("Button 8"); kung (Bilang == 0) Bilang = 8; iba pa Bilang = (Bilang * 10) + 8; // Pinindot nang dalawang beses} kung (key == '#') {Serial.println ("Button Equal"); Num2 = Bilang; resulta = totoo; } kung (key == '3') {Serial.println ("Button 3"); kung (Bilang == 0) Bilang = 3; iba pa Bilang = (Bilang * 10) + 3; // Pinindot nang dalawang beses} kung (key == '6') {Serial.println ("Button 6"); kung (Bilang == 0) Bilang = 6; iba pa Bilang = (Bilang * 10) + 6; // Pinindot nang dalawang beses} kung (key == '9') {Serial.println ("Button 9"); kung (Bilang == 0) Bilang = 9; iba pa Bilang = (Bilang * 10) + 9; // Pinindot nang dalawang beses} kung (key == 'A' || key == 'B' || key == 'C' || key == 'D') // Pagtuklas ng Mga Pindutan sa Hanay 4 {Num1 = Bilang; Bilang = 0; kung (key == 'A') {Serial.println ("Addition"); action = '+';} kung (key == 'B') {Serial.println ("Pagbawas"); aksyon = '-'; } kung (key == 'C') {Serial.println ("Multiplication"); action = '*';} kung (key == 'D') {Serial.println ("Devesion"); aksyon = '/';} pagkaantala (100); }} void CalculateResult () {if (action == '+') Bilang = Num1 + Num2; kung (aksyon == '-') Bilang = Num1-Num2; kung (aksyon == '*') Bilang = Num1 * Num2; kung (aksyon == '/') Bilang = Num1 / Num2; } walang bisa ang DisplayResult () {lcd.setCursor (0, 0); // itakda ang cursor sa haligi 0, linya 1 lcd.print (Num1); lcd.print (aksyon); lcd.print (Num2); kung (resulta == totoo) {lcd.print ("="); lcd.print (Number);} // Ipakita ang resulta lcd.setCursor (0, 1); // itakda ang cursor sa haligi 0, linya 1 lcd.print (Bilang); // Ipakita ang resulta}
Inirerekumendang:
Nextion / Arduino Calculator: 3 Mga Hakbang
Nextion / Arduino Calculator: Isang kapaki-pakinabang na calculator para sa Arduino Uno. Ang calculator ay katulad ng estilo sa pamantayan ng calculator na nagpapadala sa Windows 10. Tandaan: Hindi kasama ang pang-agham at programmer na mga function na ginagawa ng calculator ng Windows 10, ngunit ang mga functi
Arduino Calculator Gamit ang 4X4 Keypad: 4 na Hakbang (na may Mga Larawan)
Arduino Calculator Gamit ang 4X4 Keypad: Sa tutorial na ito magtatayo kami ng aming sariling calculator sa Arduino. Maaaring ipadala ang mga halaga sa pamamagitan ng isang keypad (4 × 4 keypad) at ang resulta ay maaaring makita sa isang LCD screen. Ang calculator na ito ay maaaring magsagawa ng mga simpleng pagpapatakbo tulad ng Addition, Pagbabawas, Multiplicat
HP-35 Scientific Calculator Emulator Sa Arduino Uno: 4 na Hakbang
HP-35 Scientific Calculator Emulator Sa Arduino Uno: Ang layunin ng proyektong ito ay upang patakbuhin ang sumusunod na simulator https://www.hpmuseum.org/simulate/hp35sim/hp35sim….on isang Arduino Uno na may TFTLCD at Touch Screen na kahawig ang orihinal na HP-35 Scientific Calculator. Ginaya nito ang orihinal na code na nakaimbak
Arduino DIY Calculator Gamit ang 1602 LCD at 4x4 Keypad: 4 na Hakbang
Arduino DIY Calculator Gamit ang 1602 LCD at 4x4 Keypad: Kumusta mga tao sa mga itinuturo na ito ay gagawa kami ng isang calculator gamit ang Arduino na maaaring gumawa ng mga pangunahing kalkulasyon. Kaya karaniwang kukuha kami ng input mula sa 4x4 keypad at mai-print ang data sa 16x2 lcd display at gagawin ng arduino ang mga kalkulasyon
Paano Gumamit ng Keypad & LCD Sa Arduino upang Gumawa ng Arduino Calculator .: 5 Mga Hakbang
Paano Gumamit ng Keypad & LCD Sa Arduino upang Gumawa ng Arduino Calculator .: Sa tutorial na ito ibabahagi ko kung paano mo magagamit ang 4x4 matrix keypad at 16x2 LCD sa Arduino at gamitin ito upang makagawa ng isang simpleng Arduino Calculator. Kaya't magsimula tayo