Innholdsfortegnelse:

Arduino -kalkulator ved hjelp av 4X4 -tastatur: 4 trinn (med bilder)
Arduino -kalkulator ved hjelp av 4X4 -tastatur: 4 trinn (med bilder)

Video: Arduino -kalkulator ved hjelp av 4X4 -tastatur: 4 trinn (med bilder)

Video: Arduino -kalkulator ved hjelp av 4X4 -tastatur: 4 trinn (med bilder)
Video: Использование модуля контроллера двигателя BTS7960 BTN8982TA PWM H Bridge с библиотекой Arduino. 2024, Desember
Anonim
Image
Image

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, multiplikasjon og divisjon med hele tall. Men når du forstår konseptet, kan du implementere selv vitenskapelige funksjoner med Arduinos innebygde funksjoner.

Rekvisita

Arduino Uno

16 × 2 LCD -skjerm

4 × 4 tastatur

Brødbrett

Hoppekabler

Arduino kabel

Trinn 1: Skjemaer

Trinn 2: Installasjon av bibliotek:

Som fortalt tidligere 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.

Trinn 3: Kildekode:

/*

© Techtronic Harsh

*/

#inkludere

#inkludere

LiquidCrystal lcd (0, 1, 2, 3, 4, 5);

const byte RADER = 4; const byte COLS = 4;

forkulletaster [RADER] [COLS] = {

{'1', '2', '3', '+'}, {'4', '5', '6', '-'}, {'7', '8', '9', ' *'}, {' C ',' 0 ',' = ','/'}}; byte rowPins [ROWS] = {13, 12, 11, 10}; byte colPins [COLS] = {9, 8, 7, 6};

Tastatur myKeypad = Tastatur (makeKeymap (nøkler), rowPins, colPins, ROWS, COLS);

boolsk presentValue = false;

boolsk neste = false; boolsk final = false; String num1, num2; int svar; char op;

ugyldig oppsett ()

{lcd.begin (16, 2); lcd.setCursor (0, 0); lcd.print ("Techtronic Harsh"); lcd.setCursor (0, 1); lcd.print ("Kalkulator"); forsinkelse (3000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Like And"); lcd.setCursor (0, 1); lcd.print ("Abonner oss"); forsinkelse (3000); lcd.clear (); }

void loop () {

char key = myKeypad.getKey ();

if (key! = NO_KEY && (key == '1' || key == '2' || key == '3' || key == '4' || key == '5' || key = = '6' || nøkkel == '7' || nøkkel == '8' || nøkkel == '9' || nøkkel == '0'))

{if (presentValue! = true) {num1 = num1 + nøkkel; int numLength = num1.length (); lcd.setCursor (15 - numLength, 0); // for å justere ett mellomrom for operator lcd.print (num1); } annet {num2 = num2 + nøkkel; int numLength = num2.length (); lcd.setCursor (15 - numLength, 1); lcd.print (num2); endelig = sant; }}

ellers hvis (presentValue == false && key! = NO_KEY && (key == '/' || key == '*' || key == '-' || key == '+'))

{if (presentValue == false) {presentValue = true; op = nøkkel; lcd.setCursor (15, 0); lcd.print (op); }}

annet hvis (final == true && key! = NO_KEY && key == '=') {

hvis (op == ' +') {svar = num1.toInt () + num2.toInt (); } annet hvis (op == ' -') {svar = num1.toInt () - num2.toInt (); } annet hvis (op == ' *') {svar = num1.toInt () * num2.toInt (); } annet hvis (op == ' /') {answer = num1.toInt () / num2.toInt (); } lcd.clear (); lcd.setCursor (15, 0); lcd.autoscroll (); lcd.print (svar); lcd.noAutoscroll (); } annet hvis (key! = NO_KEY && key == 'C') {lcd.clear (); presentValue = false; endelig = usant; num1 = ""; num2 = ""; svar = 0; op = ''; }}

/*

© Techtronic Harsh

*/

Trinn 4: Arbeid:

Gjør tilkoblingene i henhold til kretsdiagrammet og last opp koden. Hvis det viser feil, må du kontrollere at du har lagt til biblioteket i henhold til instruksjonene ovenfor.

Tegn på tastatur og antagelse:

  • “A” - tillegg (+)
  • “B” - Subtraksjon (-)
  • “C” - multiplikasjon (*)
  • “D” - divisjon (/)
  • “*” - Fjern (C)
  • “#” - er lik (=)

Anbefalt: