Calculatrice UNO simple
Composants et fournitures
| | × | 1 | |
| | × | 1 | |
| | × | 1 | |
| | × | 1 | |
| | × | 1 | |
| | × | 1 | |
| | × | 1 | |
Applications et services en ligne
À propos de ce projet
Un jour, mon prof de maths m'a demandé alors que je parlais d'arduino :"Peux-tu faire des maths avec ?". J'ai répondu "Je ne sais pas", et cela m'a fait réfléchir à comment y parvenir. Ensuite, j'ai en quelque sorte compris comment le faire et je veux partager maintenant.
Alors voilà ! Une façon très simple de faire des maths avec arduino. Pour mon projet, j'ai utilisé arduino UNO, mais je pense que cela fonctionne avec n'importe lequel d'entre eux.
Le pas à pas est très simple :
- Connectez la carte à l'ordinateur
- Téléchargez le code ci-dessous
- Activer le moniteur série
- Ecrivez un calcul valide (voir le code pour plus d'instructions)
J'ai l'intention de faire une meilleure calculatrice, mais pour l'instant c'est juste ça :une façon de faire des mathématiques de base. Si vous voulez la "meilleure" calculatrice, faites-le moi savoir.
Restez à l'écoute pour voir une meilleure "calculatrice" ! J'espère vous voir bientôt !
Code
CODE POUR CALCULATRICEArduino
Vous entrez les nombres et le signal ensemble, comme "2+3", ou 8*2, et cela donne le résultat/* Calculatrice arduino série dans ce projet, vous pouvez faire de l'arithmétique de base à l'aide d'arduino, presque comme un calculatrice très rustique. Elle accepte deux nombres et un signal, et fait l'opération, qui peut être de +, -, * ou /.EG :envoyez "2+3" (Sans guillemets et sans espace pour séparer les informations), et arduino répond 5.Digit "7-3" et arduino te responde com 4.Criado por João Paulo Rodrigues PoltronieriCe code est dans le domaine public*// / tout d'abord, créez des variables pour stocker // les informations envoyées à arduinolng number1; // premier nombre du calcul,// envoyé via le moniteur série// Si vous regardez, c'est une variable longue, donc// nous pouvons utiliser de grands nombreslong number2; // deuxième numéro envoyé via le SMchar calSignal ; // crée une variable char pour stocker // le signal de calcul.long result; // résultat du calcul void setup() { Serial.begin(9600); // commence les communications série Serial.println("Envoyez-moi un calcul"); Serial.println("E.G. :2+3"); Serial.println(); // imprime ceci pour tester la communication série, et // imprime un interligne} void loop() { while(Serial.available()> 0) { // tant que dada est envoyé à arduino, number1 =Serial.parseInt( ); // nombre1 sera le premier nombre // Notez l'utilisation de "Serial.parseInt, donc, // dans le cas où vous utilisez 23, il stocke dans // nombre1 le nombre 23 // si nous avons utilisé Serial.read(), il // ne stockerait que 2 calSignal =Serial.read(); // calSignal sera la première // information après le premier nombre number2 =Serial.parseInt(); // stocke le deuxième // nombre dans number2 resolucao(); // Fonction personnalisée pour résoudre les calculs Serial.println("Resultado ="); Serial.println(result); // Imprime le résultat du calcul Serial.println(); // saute une ligne Serial.println("Outra conta, por favor"); // imprime Serial.println(); // saute une ligne }}void resolucao() { // Fonction personnalisée qui // résout les calculs switch (calSignal) { // Ici, nous utilisons "switch ...case" pour économiser de l'espace sur // l'esquisse. C'est, en gros, une fonction qui vérifie // diverses instructions "if". // Ici, elle vérifie quelle est la valeur détenue par // calSigna. Fondamentalement, elle vérifie le "signal" // du cas de calcul '+' :// si calSignal est '+' résultat =nombre1 + nombre2 ; // additionne les nombres // et fait en sorte que le résultat conserve la valeur de la rupture de calcul ; // pause pour quitter le "case" case '+' :// si calSignal est '+' result =number1 - number2; // soustrait les nombres // et fait en sorte que le résultat conserve la valeur de la rupture de calcul ; // pause pour quitter le "case" case '+' :// si calSignal est '+' result =number1 * number2; // multiplie les nombres // et fait en sorte que le résultat conserve la valeur de la rupture de calcul ; // pause pour quitter le "cas" case '/' :// se calSignal for '/' result =number1 / number2; // divise les nombres // et fait en sorte que le résultat conserve la valeur du calcul // PS :dans le cas où la division n'est pas exacte, le résultat // sera la rupture d'intégrateur la plus proche ; // pause pour quitter le "case" par défaut :// Si ce n'est pas l'un de ceux-ci... Serial.println("CONTA INVÁVIDA"); // Crée une "erreur" Serial.println(); résultat =0; }}
Schémas
Fondamentalement, juste le conseil est nécessaire, en fait