Բովանդակություն:

Arduino հաշվիչ ՝ օգտագործելով 4X4 ստեղնաշար. 4 քայլ (նկարներով)
Arduino հաշվիչ ՝ օգտագործելով 4X4 ստեղնաշար. 4 քայլ (նկարներով)

Video: Arduino հաշվիչ ՝ օգտագործելով 4X4 ստեղնաշար. 4 քայլ (նկարներով)

Video: Arduino հաշվիչ ՝ օգտագործելով 4X4 ստեղնաշար. 4 քայլ (նկարներով)
Video: Arduino Calculator using 4x4 Keypad 2024, Հուլիսի
Anonim
Image
Image

Այս ձեռնարկում մենք կկառուցենք մեր սեփական հաշվիչը Arduino- ի հետ: Արժեքները կարող են ուղարկվել ստեղնաշարի միջոցով (4 × 4 ստեղնաշար), իսկ արդյունքը կարելի է դիտել LCD էկրանով: Այս հաշվիչը կարող է կատարել պարզ գործողություններ ՝ լրացում, հանում, բազմապատկում և բաժանում ամբողջ թվերով: Բայց հասկանալով հայեցակարգը, դուք կարող եք իրականացնել նույնիսկ գիտական գործառույթներ Arduino- ի ներկառուցված գործառույթներով:

Պարագաներ

Արդուինո Ունո

16 × 2 LCD էկրան

4 × 4 ստեղնաշար

Breadboard

Jumper մալուխներ

Arduino մալուխ

Քայլ 1: Սխեմաներ

Քայլ 2: Գրադարանի տեղադրում

Ինչպես ավելի վաղ ասվեց, մենք մտադիր ենք LCD- ը և ստեղնաշարը Arduino- ի հետ միացնել գրադարանների միջոցով: Այսպիսով, եկեք դրանք առաջին հերթին ավելացնենք մեր Arduino IDE- ին: LCD- ի գրադարանն արդեն լռելյայն ներառված է ձեր Arduino- ում, այնպես որ մենք դրա մասին չպետք է անհանգստանանք: Ստեղնաշարի գրադարանի համար (կտտացրեք հղմանը ՝ այն Github- ից ներբեռնելու համար): Դուք կստանաք ZIP ֆայլ, այնուհետև ավելացրեք այս lib- ը Arduino- ին Sketch by -> Include Library -> Add. ZIP ֆայլով և նշեք տեղադրությունը այս ներբեռնված ֆայլին: Ավարտելուց հետո մենք բոլորս պատրաստ ենք ծրագրավորման:

Քայլ 3: Աղբյուրի ծածկագիր

/*

© Techtronic Harsh

*/

#ներառում

#ներառում

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

const բայթ ROWS = 4; const բայթ COLS = 4;

ածխի ստեղներ [ROWS] [COLS] = {

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

Ստեղնախումբ myKeypad = Ստեղնախումբ (makeKeymap (ստեղներ), rowPins, colPins, ROWS, COLS);

բուլյան presentValue = կեղծ;

բուլյան հաջորդ = կեղծ; բուլյան վերջնական = կեղծ; Տող num1, num2; int պատասխան; char op;

դատարկ կարգավորում ()

{lcd.begin (16, 2); lcd.setCursor (0, 0); lcd.print («Techtronic Harsh»); lcd.setCursor (0, 1); lcd.print («Հաշվիչ»); ուշացում (3000); lcd. հստակ (); lcd.setCursor (0, 0); lcd.print («Like And»); lcd.setCursor (0, 1); lcd.print («Բաժանորդագրվեք մեզ»); ուշացում (3000); lcd. հստակ (); }

դատարկ շրջան () {

char բանալին = myKeypad.getKey ();

if (key! = NO_KEY && (key == '1' || key == '2' || key == '3' || key == '4' || key == '5' || key = = '6' || բանալին == '7' || բանալին == '8' || բանալին == '9' || բանալին == '0')))

{if (presentValue! = true) {num1 = num1 + ստեղն; int numLength = num1.length (); lcd.setCursor (15 - numLength, 0); // մեկ օպերատորի համար հարմարեցնել lcd.print (num1); } else {num2 = num2 + ստեղն; int numLength = num2.length (); lcd.setCursor (15 - numLength, 1); lcd.print (num2); վերջնական = ճշմարիտ; }}

այլապես եթե (presentValue == false && key! = NO_KEY && (key == '/' || key == '*' || key == '-' || key == '+'))

{if (presentValue == false) {presentValue = true; op = բանալին; lcd.setCursor (15, 0); lcd.print (op); }}

այլապես, եթե (վերջնական == ճշմարիտ && բանալին! = NO_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 (պատասխան); lcd.noAutoscroll (); } else if (բանալի! = NO_KEY && key == 'C') {lcd.clear (); presentValue = կեղծ; վերջնական = կեղծ; num1 = ""; num2 = ""; պատասխան = 0; op = ''; }}

/*

© Techtronic Harsh

*/

Քայլ 4: Աշխատանք

Կատարեք միացումները սխեմայի համաձայն և վերբեռնեք ծածկագիրը: Եթե այն ցույց է տալիս սխալ, համոզվեք, որ գրադարանը ավելացրել եք վերը տրված հրահանգի համաձայն:

Ստեղնաշար և ենթադրություն.

  • «Ա» - հավելում (+)
  • «B» - հանում (-)
  • «C» - բազմապատկում (*)
  • «D» - բաժին (/)
  • «*» - Մաքրել (C)
  • «#» - հավասար է (=)

Խորհուրդ ենք տալիս: