Turinys:

„Arduino“skaičiuotuvas naudojant 4X4 klaviatūrą: 4 žingsniai (su paveikslėliais)
„Arduino“skaičiuotuvas naudojant 4X4 klaviatūrą: 4 žingsniai (su paveikslėliais)

Video: „Arduino“skaičiuotuvas naudojant 4X4 klaviatūrą: 4 žingsniai (su paveikslėliais)

Video: „Arduino“skaičiuotuvas naudojant 4X4 klaviatūrą: 4 žingsniai (su paveikslėliais)
Video: Casio Classwiz FX-991EX FX-87DEX FX-570EX Определитель матрицы и инверсия матрицы 2024, Gruodis
Anonim
Image
Image

Šioje pamokoje mes sukursime savo skaičiuoklę su „Arduino“. Vertės gali būti siunčiamos per klaviatūrą (4 × 4 klaviatūra), o rezultatus galima peržiūrėti LCD ekrane. Šis skaičiuotuvas gali atlikti paprastas operacijas, tokias kaip sudėjimas, atėmimas, daugyba ir padalijimas su sveikais skaičiais. Bet kai suprasite koncepciją, galėsite įgyvendinti net mokslines funkcijas naudodami „Arduino“integruotas funkcijas.

Prekės

Arduino Uno

16 × 2 LCD ekranas

4 × 4 klaviatūra

Bandomoji Lenta

Trumpieji kabeliai

Arduino kabelis

1 žingsnis: schemos

2 veiksmas: bibliotekos diegimas:

Kaip minėta anksčiau, mes sujungsime LCD ir klaviatūrą su „Arduino“naudodami bibliotekas. Taigi pirmiausia pridėkime juos prie mūsų „Arduino IDE“. LCD biblioteka pagal numatytuosius nustatymus jau yra įtraukta į jūsų „Arduino“, todėl mums nereikia jaudintis. Klaviatūros bibliotekai (spustelėkite nuorodą ir atsisiųskite ją iš „Github“). Gausite ZIP failą, tada pridėkite šį lib prie „Arduino“pagal eskizą -> Įtraukti biblioteką -> Pridėti. ZIP failą ir nurodykite vietą į šį atsisiųstą failą. Kai baigsime, visi būsime pasiruošę programuoti.

3 veiksmas: šaltinio kodas:

/*

© „Techtronic Harsh“

*/

#įtraukti

#įtraukti

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

const baitas ROWS = 4; const baitas COLS = 4;

„Char“klavišai [ROWS] [COLS] = {

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

Klaviatūra myKeypad = Klaviatūra (makeKeymap (klavišai), rowPins, colPins, ROWS, COLS);

boolean presentValue = false;

loginis kitas = klaidingas; loginis finalas = klaidingas; Eilutė num1, num2; int atsakymas; char op;

negaliojanti sąranka ()

{lcd.pradis (16, 2); lcd.setCursor (0, 0); lcd.print („Techtronic Harsh“); lcd.setCursor (0, 1); lcd.print („Skaičiuotuvas“); vėlavimas (3000); lcd.clear (); lcd.setCursor (0, 0); lcd.print ("Patinka ir"); lcd.setCursor (0, 1); lcd.print ("Prenumeruoti mus"); vėlavimas (3000); lcd.clear (); }

void loop () {

char klavišas = myKeypad.getKey ();

if (raktas! = NO_KEY && (raktas == '1' || raktas == '2' || klavišas == '3' || klavišas == '4' || raktas == '5' || klavišas = = '6' || klavišas == '7' || klavišas == '8' || klavišas == '9' || klavišas == '0'))

{if (presentValue! = true) {num1 = num1 + raktas; int numLength = num1.length (); lcd.setCursor (15 - numLength, 0); // koreguoti vieną tarpą operatoriui lcd.print (num1); } else {num2 = num2 + klavišas; int numLength = num2.length (); lcd.setCursor (15 - numLength, 1); lcd.print (num2); galutinis = tiesa; }}

kitaip jei (presentValue == klaidingas && raktas! = NO_KEY && (raktas == '/' || raktas == '*' || raktas == '-' || raktas == '+'))

{if (presentValue == false) {presentValue = true; op = raktas; 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 (atsakymas); lcd.noAutoscroll (); } else if (raktas! = NO_KEY && key == 'C') {lcd.clear (); presentValue = false; galutinis = klaidingas; num1 = ""; num2 = ""; atsakymas = 0; op = ""; }}

/*

© „Techtronic Harsh“

*/

4 žingsnis: darbas:

Prijunkite pagal grandinės schemą ir įkelkite kodą. Jei rodoma klaida, įsitikinkite, kad pridėjote biblioteką pagal aukščiau pateiktas instrukcijas.

Simbolis klaviatūroje ir prielaida:

  • „A“- papildymas (+)
  • „B“- atimtis (-)
  • „C“- daugyba (*)
  • „D“- skyrius (/)
  • „*“- skaidrus (C)
  • „#“- lygu (=)

Rekomenduojamas: