Cuprins:

Calculator Arduino folosind tastatura 4X4: 4 pași (cu imagini)
Calculator Arduino folosind tastatura 4X4: 4 pași (cu imagini)

Video: Calculator Arduino folosind tastatura 4X4: 4 pași (cu imagini)

Video: Calculator Arduino folosind tastatura 4X4: 4 pași (cu imagini)
Video: Web Programming - Computer Science for Business Leaders 2016 2024, Septembrie
Anonim
Image
Image

În acest tutorial vom construi propriul nostru calculator cu Arduino. Valorile pot fi trimise printr-o tastatură (tastatură 4 × 4) și rezultatul poate fi vizualizat pe un ecran LCD. Acest calculator ar putea efectua operații simple, cum ar fi Adunarea, scăderea, multiplicarea și divizarea cu numere întregi. Dar odată ce înțelegeți conceptul, puteți implementa chiar și funcții științifice cu funcțiile încorporate ale Arduino.

Provizii

Arduino Uno

Afișaj LCD 16 × 2

Tastatură 4 × 4

Pană de pâine

Cabluri jumper

Cablu Arduino

Pasul 1: Scheme

Pasul 2: Instalarea bibliotecii:

După cum am spus mai devreme, vom interfața un LCD și o tastatură cu Arduino folosind biblioteci. Deci, să le adăugăm mai întâi la IDE-ul nostru Arduino. Biblioteca pentru LCD este deja inclusă în mod implicit în Arduino, deci nu trebuie să ne facem griji. Pentru biblioteca tastaturii (faceți clic pe link pentru a o descărca de pe Github). Veți primi un fișier ZIP, apoi adăugați această lib la Arduino by Sketch -> Include Library -> Add. ZIP file și indicați locația către acest fișier descărcat. Odată terminat, suntem cu toții pregătiți pentru programare.

Pasul 3: Cod sursă:

/*

© Techtronic Harsh

*/

#include

#include

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

octet const ROWS = 4; octet const COLS = 4;

chei de caractere [ROWS] [COLS] = {

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

Tastatura myKeypad = Tastatura (makeKeymap (taste), rowPins, colPins, ROWS, COLS);

boolean presentValue = false;

boolean next = false; final boolean = fals; String num1, num2; int raspuns; char op;

configurare nulă ()

{lcd.begin (16, 2); lcd.setCursor (0, 0); lcd.print („Techtronic Harsh”); lcd.setCursor (0, 1); lcd.print („Calculator”); întârziere (3000); lcd.clear (); lcd.setCursor (0, 0); lcd.print („Like And”); lcd.setCursor (0, 1); lcd.print („Abonați-ne”); întârziere (3000); lcd.clear (); }

bucla nulă () {

cheie char = myKeypad.getKey ();

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

{if (presentValue! = true) {num1 = num1 + cheie; int numLength = num1.length (); lcd.setCursor (15 - numLength, 0); // pentru a regla un spațiu alb pentru operatorul lcd.print (num1); } else {num2 = num2 + cheie; int numLength = num2.length (); lcd.setCursor (15 - numLength, 1); lcd.print (num2); final = adevărat; }}

else if (presentValue == false && key! = NO_KEY && (key == '/' || key == '*' || key == '-' || key == '+'))

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

else if (final == true && key! = NO_KEY && key == '=') {

if (op == '+') {answer = num1.toInt () + num2.toInt (); } else if (op == '-') {answer = num1.toInt () - num2.toInt (); } else if (op == '*') {answer = num1.toInt () * num2.toInt (); } else if (op == '/') {answer = num1.toInt () / num2.toInt (); } lcd.clear (); lcd.setCursor (15, 0); lcd.autoscroll (); lcd.print (răspuns); lcd.noAutoscroll (); } else if (key! = NO_KEY && key == 'C') {lcd.clear (); Valoare prezent = fals; final = fals; num1 = ""; num2 = ""; raspuns = 0; op = ""; }}

/*

© Techtronic Harsh

*/

Pasul 4: Lucrul:

Faceți conexiunile conform schemei de circuit și încărcați codul. Dacă arată eroare, asigurați-vă că ați adăugat biblioteca conform instrucțiunilor date mai sus.

Caracter pe tastatură și presupunere:

  • „A” - Adăugare (+)
  • „B” - Scădere (-)
  • „C” - Multiplicare (*)
  • „D” - Divizia (/)
  • „*” - Șterge (C)
  • „#” - Egal (=)

Recomandat: