Innholdsfortegnelse:
- Trinn 1: Ting som kreves
- Trinn 2: Kretsdiagram
- Trinn 3: Arduino Calculator Program
- Trinn 4:
- Trinn 5: Arbeid med Arduino Calculator
- Trinn 6: Kode
Video: Arduino kalkulator: 6 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:23
Programmering er alltid morsomt, og Arduino er en fantastisk plattform hvis du bare har begynt med innebygd programmering. I denne opplæringen skal vi bygge vår egen kalkulator med Arduino. Verdiene kan sendes inn via et tastatur (4 × 4 tastatur) og resultatet kan vises på en LCD-skjerm (16 × 2 Dot-matrise). Denne kalkulatoren kan utføre enkle operasjoner som addisjon, subtraksjon, multiplikasjon og divisjon med hele tall. Men når du forstår konseptet, kan du implementere til og med vitenskapelige funksjoner med Arduinos innebygde funksjoner. På slutten av dette prosjektet vil du vite hvordan du bruker en 16x2 LCD og tastatur med Arduino og også hvor enkelt det er å programmere for dem ved å bruke lett tilgjengelige biblioteker. Du vil også forstå hvordan du programmerer din Arduino for å utføre en bestemt oppgave.
Trinn 1: Ting som kreves
Arduino Uno (hvilken som helst versjon vil fungere) 16 × 2 LCD -skjerm 4 × 4 tastatur 9V batteri Brødbrett og tilkoblingskabler
Trinn 2: Kretsdiagram
Trinn 3: Arduino Calculator Program
Det komplette Arduino -programmet for dette prosjektet er gitt på slutten av dette prosjektet. Koden er delt inn i små meningsfulle biter og forklart nedenfor. Som tidligere fortalt, skal vi koble til en LCD og et tastatur med Arduino ved å bruke biblioteker. Så la oss legge dem til vår Arduino IDE først. Biblioteket for LCD er allerede inkludert i Arduino som standard, så vi trenger ikke bekymre deg for det. For tastaturbibliotek, klikk på lenken for å laste den ned fra Github. Du får en ZIP -fil, og deretter legger du denne lib til Arduino by Sketch -> Inkluder bibliotek -> Legg til. ZIP -fil og peker plasseringen til denne nedlastede filen. Når det er gjort, er vi klare for programmering. Selv om vi har brukt et bibliotek for å bruke et tastatur, må vi nevne noen detaljer (vist nedenfor) om tastaturet til Arduino. Variabelen ROWS og COLS viser hvor mange rader og kolonner tastaturet vårt har, og tastaturet viser rekkefølgen tastene er på tastaturet. Tastaturet som jeg bruker i dette prosjektet ser slik ut nedenfor til nøkkelkartet representerer også det samme. Videre nedenfor har vi nevnt hvilke pinner tastaturet er koblet til ved hjelp av variabel array rowPins og colPins.const byte ROWS = 4; // Fire rader, konstant byte COLS = 4; // Tre kolonner // Definer Keymapchar -tastene [RADER] [COLS] = {{'1', '2', '3', 'A'}, {'4', '5', '6', ' B '}, {' 7 ',' 8 ',' 9 ',' C '}, {'*',' 0 ','#',' D '}}; byte rowPins [ROWS] = {0, 1, 2, 3}; // Koble tastaturet ROW0, ROW1, ROW2 og ROW3 til disse Arduino -pinnene. Byte colPins [COLS] = {4, 5, 6, 7}; // Koble tastaturet COL0, COL1 og COL2 til disse Arduino -pinnene. Når vi har nevnt hvilken type tastatur vi bruker og hvordan det er tilkoblet, kan vi lage tastaturet ved hjelp av disse detaljene ved hjelp av linjen under Tastatur kpd = Tastatur (makeKeymap (taster), rowPins, colPins, ROWS, COLS); // Lag tastaturet På samme måte må vi også fortelle hvilke pins på Arduino LCD -en er koblet til. I følge kretsdiagrammet vårt vil definisjonene være som underkonst int rs = 8, en = 9, d4 = 10, d5 = 11, d6 = 12, d7 = 13; // Pinner som LCD er koblet til LiquidCrystal lcd (rs, en, d4, d5, d6, d7); // opprett LCD -skjermen Innen oppsettsfunksjonen viser vi bare navnet på prosjektet og fortsetter til loop mens hovedprosjektet ligger. I utgangspunktet må vi sjekke om noe skrives på tastaturet, hvis det skrives inn må vi kjenne igjen det som skrives inn og deretter konvertere det til en variabel når “=” trykkes, må vi beregne resultatet og deretter vise det til slutt på LCD -skjermen. Dette er akkurat det som er gjort inne i sløyfefunksjonen som vist nedenforkey = kpd.getKey (); // lagring av trykket nøkkelverdi i et charif (key! = NO_KEY) DetectButtons (); if (result == true) CalculateResult (); DisplayResult (); Det som skjer inne i hver funksjon forklares ved hjelp av kommentarlinjene, gå gjennom hele koden nedenfor, fikle rundt med den for å forstå hvordan den faktisk fungerer. Hvis du er i tvil om en bestemt linje, kan du bruke kommentarfeltet eller forumet.
Trinn 4:
Trinn 5: Arbeid med Arduino Calculator
Gjør tilkoblingene i henhold til kretsdiagrammet og last opp koden nedenfor. Hvis det viser feil, må du kontrollere at du har lagt til biblioteket i henhold til instruksjonene ovenfor. Du kan også prøve simuleringen for å sjekke om problemet er med maskinvaren din. Hvis alt er gjort som det skal være, så vil maskinvaren din se slik ut nedenfor med LCD -skjermen som viser denne Arduino -kalkulatoren med 4x4 -tastatur i bruk Siden tastaturet som brukes her ikke har riktige markeringer på det, har jeg antatt at alfabetene er operatører som nedenfor bruk en markør for å skrive over hva hver knapp faktisk representerer. Med det gjort kan du begynne å bruke kalkulatoren direkte. Skriv inn nummeret og vil vises på den andre linjen, trykk på operanden og skriv det andre nummeret til slutt, trykk på "#" -tasten for å få resultatet. Du kan også prøve å bygge denne berøringsskjermbaserte Arduino -kalkulatoren.
Trinn 6: Kode
/ * * Arduino tastaturkalkulator Program */#inkluderer // Topptekstfil for LCD fra https://www.arduino.cc/en/Reference/LiquidCrystal#include // Topptekstfil for tastatur fra https://github.com/ Chris-A/Tastaturkonst byte RADER = 4; // Fire rader, konstant byte COLS = 4; // Tre kolonner // Definer Keymapchar -tastene [RADER] [COLS] = {{'7', '8', '9', 'D'}, {'4', '5', '6', ' C '}, {' 1 ',' 2 ',' 3 ',' B '}, {'*',' 0 ','#',' A '}}; byte rowPins [ROWS] = {0, 1, 2, 3}; // Koble tastaturet ROW0, ROW1, ROW2 og ROW3 til disse Arduino -pinnene. Byte colPins [COLS] = {4, 5, 6, 7}; // Koble tastaturet COL0, COL1 og COL2 til disse Arduino -pinnene. Tastatur kpd = Tastatur (makeKeymap (nøkler), rowPins, colPins, ROWS, COLS); // Lag tastaturkonsten int rs = 8, en = 9, d4 = 10, d5 = 11, d6 = 12, d7 = 13; // Pinner som LCD er koblet til LiquidCrystal lcd (rs, en, d4, d5, d6, d7); lang Num1, Num2, Number; røyke nøkkel, handling; boolsk resultat = usant; ugyldig oppsett () {lcd.begin (16, 2); // Vi bruker en 16*2 LCD -skjerm lcd.print ("DIY kalkulator"); // Vis en introduksjonsmelding lcd.setCursor (0, 1); // sett markøren til kolonne 0, linje 1 lcd.print ("-CircuitDigest"); // Vis en introduksjonsforsinkelse (2000); // Vent til skjermen viser info lcd.clear (); // Rengjør den deretter} void loop () {key = kpd.getKey (); // lagring av trykket nøkkelverdi i et charif (key! = NO_KEY) DetectButtons (); if (result == true) CalculateResult (); DisplayResult (); } void DetectButtons () {lcd.clear (); // Rengjør den deretter hvis (key == '*') // Hvis Avbryt -knappen trykkes på {Serial.println ("Knappavbryt"); Tall = Num1 = Num2 = 0; result = false;} if (key == '1') // Hvis du trykker på knapp 1 {Serial.println ("Button 1"); hvis (tall == 0) tall = 1; annet Nummer = (Antall*10) + 1; // Trykk to ganger} hvis (tast == '4') // Hvis knapp 4 trykkes på {Serial.println ("knapp 4"); hvis (tall == 0) tall = 4; annet tall = (tall*10) + 4; // Trykk to ganger} hvis (tast == '7') // Hvis knapp 7 trykkes på {Serial.println ("Knapp 7"); hvis (tall == 0) tall = 7; annet Nummer = (Antall*10) + 7; // Trykket to ganger} hvis (key == '0') {Serial.println ("Knapp 0"); // Knapp 0 trykkes hvis (tall == 0) tall = 0; annet tall = (tall*10) + 0; // Trykt to ganger} hvis (key == '2') // Knapp 2 trykkes {Serial.println ("Knapp 2"); hvis (tall == 0) tall = 2; annet Nummer = (Antall*10) + 2; // Trykket to ganger} if (key == '5') {Serial.println ("Knapp 5"); hvis (tall == 0) tall = 5; annet Nummer = (Antall*10) + 5; // Trykket to ganger} hvis (key == '8') {Serial.println ("Knapp 8"); hvis (tall == 0) tall = 8; annet tall = (tall*10) + 8; // Trykket to ganger} if (key == '#') {Serial.println ("Button Equal"); Num2 = Antall; resultat = sant; } if (key == '3') {Serial.println ("Knapp 3"); hvis (tall == 0) tall = 3; annet Nummer = (Antall*10) + 3; // Trykket to ganger} hvis (key == '6') {Serial.println ("Knapp 6"); hvis (tall == 0) tall = 6; annet Nummer = (Antall*10) + 6; // Trykket to ganger} if (key == '9') {Serial.println ("Knapp 9"); hvis (tall == 0) tall = 9; annet tall = (tall*10) + 9; // Trykket to ganger} hvis (key == 'A' || key == 'B' || key == 'C' || key == 'D') // Oppdager knapper i kolonne 4 {Num1 = Number; Antall = 0; if (key == 'A') {Serial.println ("tillegg"); action = '+';} if (key == 'B') {Serial.println ("Subtraksjon"); action = '-'; } if (key == 'C') {Serial.println ("multiplikasjon"); action = '*';} if (key == 'D') {Serial.println ("Devesion"); action = '/';} forsinkelse (100); }} void CalculateResult () {if (action == '+') Number = Num1+Num2; if (action == '-') Number = Num1-Num2; if (action == '*') Number = Num1*Num2; if (action == '/') Number = Num1/Num2; } ugyldig DisplayResult () {lcd.setCursor (0, 0); // sett markøren til kolonne 0, linje 1 lcd.print (Num1); lcd.print (handling); lcd.print (Num2); hvis (resultat == true) {lcd.print ("="); lcd.print (Number);} // Vis resultatet lcd.setCursor (0, 1); // sett markøren til kolonne 0, linje 1 lcd.print (tall); // Vis resultatet}
Anbefalt:
Nextion/Arduino kalkulator: 3 trinn
Nextion/Arduino Calculator: En nyttig kalkulator for Arduino Uno. Kalkulatoren er lik stilen til standardkalkulatoren som leveres med Windows 10. Merk: Den inkluderer ikke de vitenskapelige og programmeringsfunksjonene som Windows 10 -kalkulatoren gjør, men disse funksjonene
Arduino -kalkulator ved hjelp av 4X4 -tastatur: 4 trinn (med bilder)
Arduino -kalkulator ved hjelp av 4X4 -tastatur: I denne opplæringen skal vi bygge vår egen kalkulator med Arduino. Verdiene kan sendes inn via et tastatur (4 × 4 tastatur) og resultatet kan vises på en LCD -skjerm. Denne kalkulatoren kan utføre enkle operasjoner som addisjon, subtraksjon, multiplisering
Arduino DIY -kalkulator ved hjelp av 1602 LCD- og 4x4 -tastatur: 4 trinn
Arduino DIY -kalkulator ved hjelp av 1602 LCD- og 4x4 -tastatur: Hei folkens i denne instruksen, vi lager en kalkulator ved hjelp av Arduino som kan gjøre grunnleggende beregninger. Så i utgangspunktet vil vi ta input fra 4x4 -tastaturet og skrive ut dataene på 16x2 lcd -skjermen, og arduino vil gjøre beregningene
Bygg din kalkulator ved hjelp av Arduino !: 5 trinn
Bygg din kalkulator ved hjelp av Arduino !: Hei folkens! Vil du lære hvordan du bruker en seriell skjerminngang og -utgang. Her har du den perfekte opplæringen om hvordan du gjør det! I denne instruksen vil jeg guide deg gjennom de enkle trinnene som trengs for å lage en kalkulator ved hjelp av Arduino -serien
Hvordan bruke tastatur og LCD med Arduino for å lage Arduino -kalkulator .: 5 trinn
Hvordan bruke tastatur og LCD med Arduino for å lage Arduino -kalkulator.: I denne opplæringen vil jeg dele hvordan du kan bruke 4x4 matrisetastatur og 16x2 LCD med Arduino og bruke den til å lage en enkel Arduino -kalkulator. Så la oss komme i gang