Sisukord:
- Samm: vajalikud asjad
- 2. samm: vooluahela skeem
- Samm: Arduino kalkulaatoriprogramm
- 4. samm:
- Samm: Arduino kalkulaatori kasutamine
- 6. samm: kood
Video: Arduino kalkulaator: 6 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:48
Programmeerimine on alati lõbus ja Arduino on suurepärane platvorm, kui alles alustate sisseehitatud programmeerimist. Selles õpetuses ehitame Arduino abil oma kalkulaatori. Väärtusi saab sisestada klaviatuuri kaudu (4 × 4 klaviatuur) ja tulemust saab vaadata LCD-ekraanilt (16 × 2 punktmaatriks). See kalkulaator võib teha lihtsaid toiminguid, nagu liitmine, lahutamine, korrutamine ja täisarvudega jagamine. Kuid kui olete kontseptsioonist aru saanud, saate Arduino sisseehitatud funktsioonidega rakendada isegi teaduslikke funktsioone. Selle projekti lõpus saate teada, kuidas kasutada 16x2 LCD -ekraani ja klaviatuuri koos Arduinoga ning ka seda, kui lihtne on nende jaoks hõlpsasti programmeerida saadaolevad raamatukogud. Samuti saate aru, kuidas programmeerida oma Arduino teatud ülesande täitmiseks.
Samm: vajalikud asjad
Arduino Uno (mis tahes versioon töötab) 16 × 2 LCD -ekraan 4 × 4 klahvistik 9 V aku Leivaplaat ja juhtmete ühendamine
2. samm: vooluahela skeem
Samm: Arduino kalkulaatoriprogramm
Selle projekti täielik Arduino programm on antud selle projekti lõpus. Kood on jagatud väikesteks sisulisteks tükkideks ja seda selgitatakse allpool. Nagu varem öeldud, liidame teekide abil LCD -ekraani ja klahvistiku Arduinoga. Nii et lisame need kõigepealt meie Arduino IDE -sse. LCD -teek on teie Arduino vaikimisi juba kaasas, nii et me ei pea selle pärast muretsema. Klahvistiku kogu jaoks klõpsake lingil, et see Githubist alla laadida. Saate ZIP -faili, seejärel lisage see lib Arduinole Sketchi abil -> Kaasa raamatukogu -> Lisa. ZIP -fail ja suunake selle allalaaditud faili asukoht. Kui see on tehtud, oleme kõik programmeerimiseks valmis. Kuigi oleme klaviatuuri kasutamiseks kasutanud raamatukogu, peame Arduino klaviatuuri kohta mainima mõningaid üksikasju (näidatud allpool). Muutujad ROWS ja COLS näitavad, kui palju ridu ja veerge meie klaviatuuril on ning klahvikaart näitab klahvide klaviatuuril leidmise järjekorda. Klaviatuur, mida ma selles projektis kasutan, näeb võtmekaardilt välja selline. Allpool oleme maininud, milliste tihvtidega klaviatuur on ühendatud muutuva massiivi abil ridaPins ja colPins.const bait ROWS = 4; // Neli ridakonstituudi baiti COLS = 4; // Kolm veergu // Määrake võtmekaardi võtmed [ROWS] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', ' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {'*',' 0 ','#',' D '}}; bait rowPins [ROWS] = {0, 1, 2, 3}; // Ühendage klaviatuur ROW0, ROW1, ROW2 ja ROW3 nende Arduino nööpnõeltega. Baiti colPins [COLS] = {4, 5, 6, 7}; // Ühendage klaviatuur COL0, COL1 ja COL2 nende Arduino nööpnõeltega. Kui oleme maininud, millist tüüpi klaviatuuri kasutame ja kuidas see on ühendatud, saame klahvistiku luua nende üksikasjade abil, kasutades allolevat rida. Klahvistik kpd = Klahvistik (makeKeymap (võtmed), ridanõelad, kollanõelad, read, veerud); // Klaviatuuri loomine Samamoodi peame ka ütlema, milliste Arduino tihvtidega LCD on ühendatud. Vastavalt meie lülitusskeemile oleksid määratlused järgmised: int rs = 8, en = 9, d4 = 10, d5 = 11, d6 = 12, d7 = 13; // Nööpnõelad, millega LCD on ühendatudLiquidCrystal lcd (rs, en, d4, d5, d6, d7); // LCD -ekraani loomine Seadistusfunktsiooni sees kuvame lihtsalt projekti nime ja liigume edasi samasse ahelasse, kus asub põhiprojekt. Põhimõtteliselt peame kontrollima, kas klaviatuuril midagi trükitakse, kui sisestame, siis peame ära tundma mida kirjutatakse ja seejärel teisendada see muutujaks, kui vajutada “=”, peame tulemuse välja arvutama ja seejärel lõpuks LCD -ekraanile kuvama. See on täpselt see, mida tehakse tsüklifunktsiooni sees, nagu allpool näidatud. Võti = kpd.getKey (); // vajutatud klahviväärtuse salvestamine sümbolisse (võti! = NO_KEY) DetectButtons (); if (result == true) CalculateResult (); DisplayResult (); Iga funktsiooni sees toimuvat selgitatakse kommentaariridade abil, vaadake läbi allolev täielik kood, uurige selle ümber, et mõista, kuidas see tegelikult töötab. Kui teil on konkreetse rea suhtes kahtlusi, kasutage julgelt kommentaaride jaotist või foorumeid.
4. samm:
Samm: Arduino kalkulaatori kasutamine
Tehke ühendused vastavalt skeemile ja laadige alla kood. Kui see näitab viga, veenduge, et olete teeki lisanud vastavalt ülaltoodud juhistele. Võite proovida ka simulatsiooni, et kontrollida, kas probleem on teie riistvaras. Kui kõik on tehtud nii, nagu peaks, siis näeb teie riistvara allpool välja selline, kus LCD kuvab selleArduino kalkulaator kasutab 4x4 klahvistikku tegevuses allpool loetletudTähemärk klaviatuuril Eeldatakse, et see on "A" liitmine (+) "B" lahutamine (-) "C" korrutamine (*) "D" jaotus (/) "*" Selge (C) "#" Võrdne (=) Saate kasutage markerit, et kirjutada, mida iga nupp tegelikult kujutab. Kui see on tehtud, saate otse kalkulaatorit kasutama hakata. Sisestage number ja ilmub teisele reale, vajutage operandi ja tippige oma teine number, lõpuks vajutage tulemuse saamiseks klahvi#. Võite proovida luua ka selle puuteekraanil põhineva Arduino kalkulaatori.
6. samm: kood
/ * * Arduino klahvistiku kalkulaatoriprogramm */#include // Päisefail LCD -le https://www.arduino.cc/en/Reference/LiquidCrystal#include // Klaviatuuri päisefail aadressilt https://github.com/ Chris-A/Klahvistiku bait RIDA = 4; // Neli ridakonstituudi baiti COLS = 4; // Kolm veergu // Määrake võtmekaardi võtmed [ROWS] [COLS] = {{'7', '8', '9', 'D'}, {'4', '5', '6', ' C '}, {' 1 ',' 2 ',' 3 ',' B '}, {'*',' 0 ','#',' A '}}; bait rowPins [ROWS] = {0, 1, 2, 3}; // Ühendage klaviatuur ROW0, ROW1, ROW2 ja ROW3 nende Arduino nööpnõeltega. Baiti colPins [COLS] = {4, 5, 6, 7}; // Ühenda klaviatuur COL0, COL1 ja COL2 nende Arduino nööpnõeltega. Klaviatuur kpd = Klaviatuur (makeKeymap (võtmed), rowPins, colPins, ROWS, COLS); // Klaviatuurikonstti loomine int rs = 8, en = 9, d4 = 10, d5 = 11, d6 = 12, d7 = 13; // Nööpnõelad, millega LCD on ühendatudLiquidCrystal lcd (rs, en, d4, d5, d6, d7); pikk Num1, Num2, Number; char võti, tegevus; loogiline tulemus = vale; void setup () {lcd.begin (16, 2); // Kasutame 16*2 LCD -ekraani lcd.print ("DIY Calculator"); // Sissejuhatava teate kuvamine lcd.setCursor (0, 1); // määrake kursor veergu 0, rida 1 lcd.print ("-CircuitDigest"); // Kuva introsõnumi viivitus (2000); // Oodake, kuni ekraanil kuvatakse teave lcd.clear (); // Seejärel puhasta see} void loop () {key = kpd.getKey (); // vajutatud klahviväärtuse salvestamine sümbolisse (võti! = NO_KEY) DetectButtons (); if (result == true) CalculateResult (); DisplayResult (); } tühine DetectButtons () {lcd.clear (); // Seejärel puhasta see, kui (võti == '*') // Kui tühistamisnuppu vajutatakse {Serial.println ("Button Cancel"); Arv = arv1 = arv2 = 0; result = false;} if (key == '1') // Kui nuppu 1 vajutatakse {Serial.println ("Button 1"); kui (arv == 0) arv = 1; else Arv = (arv*10) + 1; // Vajutatakse kaks korda} if (võti == '4') // Kui nuppu 4 vajutatakse {Serial.println ("Nupp 4"); kui (arv == 0) arv = 4; else Arv = (arv*10) + 4; // Vajutatakse kaks korda} if (key == '7') // Kui nuppu 7 vajutatakse {Serial.println ("Button 7"); kui (arv == 0) arv = 7; else Arv = (arv*10) + 7; // Vajutati kaks korda} if (key == '0') {Serial.println ("Button 0"); // Nupule 0 vajutatakse, kui (Number == 0) Number = 0; else Arv = (arv*10) + 0; // Vajutatakse kaks korda}, kui (võti == '2') // Nupp 2 on vajutatud {Serial.println ("Button 2"); kui (arv == 0) arv = 2; else Arv = (arv*10) + 2; // Vajutati kaks korda} if (key == '5') {Serial.println ("Button 5"); kui (arv == 0) arv = 5; else Arv = (arv*10) + 5; // Vajutati kaks korda} if (key == '8') {Serial.println ("Button 8"); kui (arv == 0) arv = 8; else Arv = (arv*10) + 8; // Vajutati kaks korda} if (key == '#') {Serial.println ("Button Equal"); Num2 = arv; tulemus = tõene; } if (võti == '3') {Serial.println ("Button 3"); kui (arv == 0) arv = 3; else Arv = (arv*10) + 3; // Vajutati kaks korda} if (võti == '6') {Serial.println ("Button 6"); kui (arv == 0) arv = 6; else Arv = (arv*10) + 6; // Vajutati kaks korda} if (võti == '9') {Serial.println ("Button 9"); kui (arv == 0) arv = 9; else Arv = (arv*10) + 9; // Vajutati kaks korda} if (võti == 'A' || võti == 'B' || võti == 'C' || võti == 'D') // Nuppude tuvastamine veerus 4 {Num1 = Number; Arv = 0; if (võti == 'A') {Serial.println ("Lisamine"); action = '+';} if (võti == 'B') {Serial.println ("Lahutamine"); tegevus = '-'; } if (võti == 'C') {Serial.println ("Korrutamine"); action = '*';} if (võti == 'D') {Serial.println ("Devesion"); action = '/';} viivitus (100); }} tühine CalculateResult () {if (action == '+') Number = Num1+Num2; if (action == '-') Number = Num1-Num2; if (action == '*') Number = Num1*Num2; if (action == '/') Number = Num1/Num2; } tühine DisplayResult () {lcd.setCursor (0, 0); // määra kursor veergu 0, rida 1 lcd.print (Num1); lcd.print (tegevus); lcd.print (Num2); if (tulemus == tõene) {lcd.print ("="); lcd.print (arv);} // Kuva tulemus lcd.setCursor (0, 1); // määrake kursor veergu 0, rida 1 lcd.print (Number); // Kuva tulemus}
Soovitan:
Nextion/Arduino kalkulaator: 3 sammu
Nextion/Arduino kalkulaator: kasulik kalkulaator Arduino Uno jaoks. Kalkulaator sarnaneb stiililt standardkalkulaatoriga, mis tarnitakse koos Windows 10 -ga. Märkus. See ei sisalda teaduslikke ja programmeerimisfunktsioone, mida Windows 10 kalkulaator teeb, kuid need funktsioonid
Arduino kalkulaator 4X4 klaviatuuri abil: 4 sammu (piltidega)
Arduino kalkulaator 4X4 klaviatuuri abil: Selles õpetuses koostame Arduino abil oma kalkulaatori. Väärtusi saab sisestada klaviatuuri kaudu (4 × 4 klaviatuur) ja tulemust saab vaadata LCD -ekraanilt. See kalkulaator võib teha lihtsaid toiminguid, nagu liitmine, lahutamine, korrutamine
Arduino DIY kalkulaator 1602 LCD ja 4x4 klaviatuuri abil: 4 sammu
Arduino DIY kalkulaator, kasutades 1602 vedelkristallekraani ja 4x4 klahvistikku: Tere, selles juhendis olevad poisid, teeme Arduino abil kalkulaatori, millega saab teha põhilisi arvutusi. Põhimõtteliselt võtame sisendi 4x4 klaviatuurilt ja prindime andmed 16x2 lcd ekraanile ja arduino teeb arvutused
Ehitage oma kalkulaator Arduino abil!: 5 sammu
Ehitage oma kalkulaator Arduino abil!: Hei poisid! Soovite õppida jada monitori sisendi ja väljundi kasutamist. Siin on teil täiuslik õpetus, kuidas seda teha! Selles juhendis juhendan teid lihtsate toimingutega, mis on vajalikud Arduino jada abil kalkulaatori loomiseks
Arduino puuteekraaniga kalkulaator: 7 sammu
Arduino puuteekraaniga kalkulaator: Tere! See on projekt puuteekraaniga kalkulaatori valmistamiseks, kasutades Arduino Uno ja TFT LCD -ekraani. Mõtlesin välja oma koduõppe programmeerimistunni kontseptsiooni ja selle projekti loomise kogemus oli väga huvitav. See kalkulaator on