Table des matières:
- Étape 1: Matériaux
- Étape 2: connexion du clavier 4x4
- Étape 3: alimentez la planche à pain et connectez l'écran LCD
- Étape 4: Connectez l'alimentation et la terre à l'écran LCD
- Étape 5: connexion du potentiomètre
- Étape 6: connexion de l'Arduino à l'écran LCD
- Étape 7: Mettre en œuvre le code
- Étape 8: Résultat
Vidéo: Concours de calculatrice TinkerCad : 8 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:06
Hé, j'ai récemment exploré comment implémenter différents types de code dans un circuit. J'ai trouvé que faire une calculatrice serait un excellent moyen d'implémenter le « cas » et d'autres formes de code que j'avais trouvées intéressantes. J'ai dans le passé fait des calculatrices directement à partir du code, mais faire un circuit pour cela m'a intéressé. Surtout pendant cette période de quarantaine où je suis sur mon ordinateur presque toute la journée. Le projet consiste à implémenter des opérations mathématiques sur un écran LCD.
Étape 1: Matériaux
Pour les circuits:
- ACL 16x2
- Arduino Uno R3
- Clavier 4x4
- Petite planche à pain
- Potentiomètre (250 kΩ)
- Résistance (1kΩ)
- x26 fils de cavalier
Étape 2: connexion du clavier 4x4
Connectez les broches 4 rangées du clavier 4x4 aux broches Arduino 4-7 et connectez les broches 4 colonnes aux broches Arduino 0-3.
Étape 3: alimentez la planche à pain et connectez l'écran LCD
J'ai utilisé une tension d'alimentation de 5 pour la planche à pain. J'ai connecté l'alimentation et la terre à la planche à pain. L'écran LCD est placé sur la planche à pain et placé de manière à ce que toutes ses broches soient connectées à la planche à pain.
Étape 4: Connectez l'alimentation et la terre à l'écran LCD
Il y aura 3 broches de terre nécessaires pour être connectées à l'écran LCD. L'un sera connecté à la terre de l'écran LCD, un autre sera connecté à la LED de l'écran LCD et le dernier sera connecté au RW. Le VCC de l'écran LCD et la led nécessiteront de l'alimentation pour être connectés. Cependant, l'alimentation de la LED nécessitera une résistance connectée dans ce cas, j'ai utilisé une résistance de 1kΩ.
Étape 5: connexion du potentiomètre
Connectez le potentiomètre à la maquette avec 3 colonnes libres. Il aura 3 broches, la colonne qui contient la borne 1 broche aura besoin de terre qui lui sera donnée. La colonne qui contient la broche du terminal 2 aura besoin d'être alimentée. Ensuite, l'essuie-glace aura un fil volant dans sa colonne qui se connecte à VO de l'écran LCD.
Étape 6: connexion de l'Arduino à l'écran LCD
Les broches 8-13 de l'Arduino seront connectées à l'écran LCD. Les broches 8-11 de l'Arduino se connecteront respectivement à D8 (7-4). Ensuite, la broche 12 de l'Arduino se connectera à l'activation de l'écran LCD et la broche 13 de l'Arduino se connectera au registre de l'écran LCD.
Étape 7: Mettre en œuvre le code
Le code sera nécessaire pour utiliser les opérations mathématiques avec le clavier et l'écran LCD. Ce qui suit sera le code que j'ai utilisé, mais plusieurs modifications peuvent encore être mises en œuvre pour le rendre plus propre et meilleur. Alors n'hésitez pas à jouer un peu avec.
#include #include
LiquidCrystal LCD (13, 12, 11, 10, 9, 8);
long premier = 0;
seconde longue = 0;
double total = 0;
int position = 0;
char customKey;
octet const ROWS = 4;
octet const COLS = 4;
char keys[ROWS][COLS] = {
{'1', '2', '3', '/'}, {'4', '5', '6', '*'}, {'7', '8', '9', '-'}, {'C', '0', '=', '+'} };
octet rowPins[ROWS] = {7, 6, 5, 4};
octet colPins[COLS] = {3, 2, 1, 0};
Clavier customKeypad = Keypad(makeKeymap(keys), rowPins, colPins, ROWS, COLS);
void setup(){
lcd.begin (16, 2);
lcd.setCursor(5, 0);
lcd.clear(); }
boucle vide() {
customKey = customKeypad.getKey();
switch(customKey) {
cas '0' … '9':
lcd.setCursor(0, 0);
first = first * 10 + (customKey - '0');
lcd.print(premier);
position++;
Pause;
cas '+':
premier = (total != 0 ? total: premier);
lcd.setCursor(positif, 0);
lcd.print("+");
position++;
deuxième = DeuxièmeNuméro();
total = premier + deuxième;
lcd.setCursor(1, 1);
lcd.print(total);
premier = 0, seconde = 0;
position=0;
Pause;
Cas '-':
premier = (total != 0 ? total: premier);
lcd.setCursor(positif, 0);
lcd.print("-");
position++;
deuxième = DeuxièmeNuméro();
total = premier - deuxième;
lcd.setCursor(1, 1);
lcd.print(total);
premier = 0, seconde = 0;
position=0;
Pause;
Cas '*':
premier = (total != 0 ? total: premier);
lcd.setCursor(positif, 0);
lcd.print("*");
position++;
deuxième = DeuxièmeNuméro();
total = premier * deuxième;
lcd.setCursor(1, 1);
lcd.print(total);
premier = 0, seconde = 0;
position=0;
Pause;
Cas '/':
premier = (total != 0 ? total: premier);
lcd.setCursor(positif, 0);
lcd.print("/");
position++;
deuxième = DeuxièmeNuméro(); lcd.setCursor(1, 1);
seconde == 0 ? lcd.print("Error"): total = (float)premier / (float)second;
lcd.print(total);
premier = 0, seconde = 0;
position=0;
Pause;
cas 'C':
total = 0;
premier = 0;
seconde = 0;
position = 0;
lcd.clear();
Pause; }
}
long SecondNumber() {
tandis que (1) {
customKey = customKeypad.getKey();
if(customKey >= '0' && customKey <= '9') {
seconde = seconde * 10 + (customKey - '0');
lcd.setCursor(positif, 0);
lcd.print(seconde); }
if(customKey == 'C') {
total = 0;
premier = 0;
seconde = 0;
position = 0;
lcd.clear();
Pause; }
if(customKey == '='){
lcd.setCursor(0, 1);
lcd.print("=");
position = total;
lcd.clear();
lcd.setCursor(0, 1);
lcd.print("=");
Pause; }
}
renvoie la seconde;}
Étape 8: Résultat
J'espère que vous avez tous apprécié cette instructable. Merci pour la lecture!
Saïm.
Conseillé:
Cardan pour appareil photo imprimé en 3D (concours Tinkercad): 6 étapes
Cardan pour appareil photo imprimé en 3D (concours Tinkercad): Bonjour, Il s'agit d'un cardan pour appareil photo que j'ai conçu dans Tinkercad. Le cardan principal a été fabriqué à partir de cette poignée de pot et d'un cardan / gyroscope à cinq anneaux que je n'arrive plus à trouver. Le design Tinkercad peut être trouvé ici. Ceci a été conçu pour fonctionner sur un Powers
Robot de dessin avec bouclier Adafruit (concours Make It Move) : 10 étapes (avec photos)
Robot de dessin avec bouclier Adafruit (concours Make It Move): Bonjour, je m'appelle Jacob et moi vivons au Royaume-Uni. Dans ce projet, je vais construire un robot qui dessine pour vous. * Je suis sûr que beaucoup d'entre vous veulent le voir, donc si vous voulez savoir, passez directement à l'avant-dernière étape, mais assurez-vous de revenir ici pour voir
Tapis de course DIY VR - Concours Basys3 FPGA-Digilent : 3 étapes
Tapis de course DIY VR - Concours Basys3 FPGA-Digilent : Voulez-vous construire un tapis de course VR sur lequel vous pouvez exécuter vos applications et jeux de bureau ? Alors vous êtes au bon endroit ! Dans les jeux conventionnels, vous utilisez la souris et le clavier pour interagir avec l'environnement. Par conséquent, nous devons envoyer le
Tiroirs de récolte - Participation au concours NASA Growing Beyond Earth: 5 étapes (avec photos)
Tiroirs de récolte - Participation au concours Grandir au-delà de la Terre de la NASA : Résumé : À bord de la station spatiale internationale, les astronautes n'ont pas beaucoup de place pour cultiver de la nourriture. Ce jardin hydroponique est conçu pour fonctionner efficacement en utilisant le minimum d'espace pour récolter 30 plantes selon un calendrier de rotation dans un environnement sans gravité
Bras robotique à servomoteur RC contrôlé par Fpga - Concours Digilent : 3 étapes
Bras robotique à servomoteur RC contrôlé par Fpga - Concours Digilent : Bras robotique à servomoteur contrôlé par FPGALe but de ce projet est de créer un système programmable capable d'effectuer des opérations de soudure sur une carte de perforation. Le système est basé sur la carte de développement Digilent Basys3 et il sera capable de souder co