Livraison gratuite à partir de 74,95 € NL (99,95 € BE / DE)

Livraison rapide avec DHL

Commandé avant 16:00 = Expédié aujourd'hui

14 jours de retour*


Pays

Dans ce projet amusant, vous apprendrez à créer votre propre Arduino calculatrice.

Vous pouvez utiliser cette calculatrice pour des calculs simples. Ce sont des plus, moins, des temps ou divisés par. Alors ne vous attendez pas à pouvoir résoudre des équations avec.

Nous faisons cela en utilisant un clavier 4X4 et un écran LCD 16X2. Nous connectons l'écran via I2C, alors gardez à l'esprit que vous avez besoin de bibliothèques supplémentaires. Pour le clavier, vous devez importer la bibliothèque de clavier, vous trouverez plus d'informations à ce sujet dans le piano piézo projet. Pour les bibliothèques I2C, vous trouverez les informations dans le LCD I2C .

  • Niveau - Moyen 40% 40%
  • Durée - 20/25 Min 25% 25%
  • Coûts - 42.80 € complets 40% 40%

Étape 1: Fournitures

1X Arduino UNO

12X fils de cavalier

Clavier 1X 4X4

LCD 1X 16X2

Étape 2: Construire et câbler

Vous allez maintenant câbler la calculatrice Arduino. Nous commençons par l'écran. À l'écran, nous connectons d'abord le GND de l'écran au GND de l'Arduino, le VCC au 5V de l'Arduino, enfin le SDA à A4 et SCL à A5. Vous connectez le clavier exactement de la même manière que vous pouvez le voir sur le fritzing. Cela signifie que si les boutons vous attribuent que la broche la plus à gauche doit aller à la broche d'E / S 4, la broche à sa droite va à la broche d'E / S 5, puis la broche qui est à droite de cette broche à I / O broche 6 et la broche à droite de celle-ci à la broche E / S 7. Répétez cette opération pour les quatre autres broches uniquement sur les broches E / S ot / m 3. Cela signifie à nouveau de gauche à droite. Il est important de noter que si le clavier ne fonctionne pas correctement, il est fort probable qu'un câble volant soit mal connecté. Une fois que cela est fait, vous avez tout connecté pour votre calculatrice.

Étape 3: programmation

 

Maintenant que vous commencez la programmation, gardez à l'esprit que vous avez besoin des bibliothèques Wire, Keypad et LiquidCrystal_I2C.

Lors de la programmation, nous définissons les * et # comme d'autres symboles. Le * est la fonction claire donc C et le # est le signe et est donc défini comme =.

Une fois que tout le code est dessus et que vous regardez votre Arduino, l'écran affichera d'abord «électronique pour votre calculatrice». Ensuite, l'écran devient vide et vous pouvez commencer à faire des calculs.

Si vous appuyez déjà sur le signe C avant d'avoir calculé une somme et que vous souhaitez continuer le calcul, vous remarquerez probablement que cela ne fonctionne pas. Il est important que vous appuyiez d'abord sur le signe = si vous ne le faites pas car cela ne fonctionnera pas.

// les bibliothèques dont nous avons besoin

#comprendre

#comprendre

#comprendre

// définitions du clavier

octet const ROWS = 4;

octet de const COLS = 4;

clés char [ROWS] [COLS] = {

  {'1', '2', '3', '+'},

  {'4', '5', '6', '-'},

  {'7', '8', '9', '*'},

  {'C', '0', '=', '/'}

};

byte rowPins [ROWS] = {0, 1, 2, 3};

octet colPins [COLS] = {4, 5, 6, 7};

 

Keypad ourKeypad = Keypad (makeKeymap (clés), rowPins, colPins, ROWS, COLS);

// initialiser lcd

LCD LiquidCrystal_I2C (0x3F, 20,4);

 

// dites ici quelles sont ces valeurs

booléen firstNumState = true;

String firstNum = "";

String secondNum = "";

réponse flottante = 0.0;

char oper = '';

 

void setup () {

  // ici on allume l'écran

  lcd.start (16,2);

  lcd.init ();

  lcd.init ();

  LCD rétro-éclairage ();

  lcd.setCursor (0,0);

  lcd.print («électronique»);

  lcd.setCursor (0,1);

  lcd.print («Pour vous»);

  délai (1500);

  lcd.clear ();

  lcd.setCursor (0,0);

  lcd.print («calculatrice»);

  délai (1500);

  lcd.clear ();

}

boucle vide () {

  char newKey = ourKeypad.getKey ();

  // que faire quand il reçoit un numéro

  if (newKey! = NO_KEY && (newKey == '1' || newKey == '2' || newKey == '3' || newKey == '4' || newKey == '5' || newKey = = '6' || newKey == '7' || newKey == '8' || newKey == '9' || newKey == '0 ′)) {

    if (firstNumState == true) {

      firstNum = firstNum + newKey;

      lcd.print (newKey);

    }autre{

      secondNum = secondNum + newKey;

      lcd.print (newKey);

    }

  }

  // que faire quand il a un opérateur

  if (newKey! = NO_KEY && (newKey == '+' || newKey == '-' || newKey == '*' || newKey == '/')) {

    if (firstNumState == true) {

      oper = nouvelleClé;

      firstNumState = false;

      lcd.print (opér);

    }

  }

  // ici nous disons ce qui se passe quand vous

  // presse #

  if (newKey! = NO_KEY && newKey == '=') {

    // que faire en tant qu'opérateur

    // + est

    si (oper == '+') {

      antw = firstNum.toFloat () + secondNum.toFloat ();

    }

    // que faire en tant qu'opérateur

    // - est

    si (oper == '-') {

      antw = firstNum.toFloat () - secondNum.toFloat ();

    }

    // que faire en tant qu'opérateur

    // * est

    si (oper == '*') {

      antw = firstNum.toFloat () * secondNum.toFloat ();

    }

    // que faire en tant qu'opérateur

    // divisé par est

    si (oper == '/') {

      antw = firstNum.toFloat () / secondNum.toFloat ();

    }

    lcd.setCursor (0,0);

    lcd.print (firstNum);

    lcd.print (opér);

    lcd.print (secondNum);

    lcd.setCursor (0,1);

    lcd.print ("=");

    lcd.print (antw);

    firstNumState = vrai;

  }

  if (newKey! = NO_KEY && newKey == 'C') {

    // ici nous disons ce qui se passe quand vous

    // presse *

    lcd.clear ();

    lcd.setCursor (0,0);

    firstNum = "";

    secondNum = "";

    réponse = 0 ;

    oper = '';

  }

}

 

La note de www.elektronicavoorjou.nl à Avis sur WebwinkelKeur est 9.3 / 10 basé sur 4782 avis.