Table des matières:

Calculatrice binaire à décimale : 8 étapes
Calculatrice binaire à décimale : 8 étapes

Vidéo: Calculatrice binaire à décimale : 8 étapes

Vidéo: Calculatrice binaire à décimale : 8 étapes
Vidéo: [Bases Num] Conversion décimal vers "binaire à virgule" 2024, Juillet
Anonim
Calculatrice binaire à décimale
Calculatrice binaire à décimale

Pour la onzième année en génie informatique, je devais me prononcer sur un projet final. Au début, je ne savais pas quoi faire car cela devait inclure certains composants matériels. Après quelques jours, mon camarade de classe m'a dit de faire un projet basé sur l'additionneur à quatre bits que nous avons créé il y a quelques mois. Après ce jour, en utilisant mon additionneur quatre bits, j'ai pu créer un convertisseur binaire en décimal.

La création de ce projet nécessite beaucoup de recherche, qui comprend principalement la compréhension du fonctionnement d'un additionneur complet et demi.

Étape 1: Matériel nécessaire

Pour ce projet, vous aurez besoin du matériel suivant:

  • Arduino UNO
  • quatre planches à pain
  • batterie de neuf volts
  • sept portes XOR (2 puces XOR)
  • sept portes ET (2 puces ET)
  • trois portes OU (1 puce OU)
  • cinq LED
  • huit résistances de 330 ohms
  • affichage LCD
  • quatre fils mâle-femelle
  • beaucoup de fils mâle-mâle
  • pince à dénuder
  • LED RVB à anode commune

Coût (hors fils): 79,82 $

Tous les coûts du matériel ont été trouvés sur l'électronique ABRA.

Étape 2: Comprendre l'additionneur 4 bits

Comprendre l'additionneur 4 bits
Comprendre l'additionneur 4 bits

Avant de commencer, vous devez comprendre comment fonctionne un additionneur à quatre bits. Lorsque nous examinons ce circuit pour la première fois, vous remarquerez qu'il existe un demi-circuit additionneur et trois circuits additionneurs complets. Parce qu'un additionneur à quatre bits est une combinaison d'un additionneur complet et d'un demi-additionneur, j'ai publié une vidéo expliquant le fonctionnement des deux types d'additionneur.

www.youtube.com/watch?v=mZ9VWA4cTbE&t=619s

Étape 3: Construire l'additionneur 4 bits

Construire l'additionneur 4 bits
Construire l'additionneur 4 bits
Construire l'additionneur 4 bits
Construire l'additionneur 4 bits

Expliquer comment construire un additionneur à quatre bits est très difficile, car cela implique beaucoup de câblage. Sur la base de ces photos, je peux vous donner quelques astuces afin de construire ce circuit. Premièrement, la façon dont vous organisez vos puces logiques peut être très importante. Afin d'avoir un circuit soigné, commandez vos puces dans cet ordre: XOR, AND, OR, AND, XOR. En ayant cette commande, non seulement votre circuit sera soigné, mais il vous sera également très facile à organiser.

Une autre astuce consiste à construire chaque additionneur un à la fois et du côté droit vers le côté gauche. Une erreur courante que beaucoup de gens ont commise est de faire toutes les additions en même temps. En faisant cela, vous pourriez gâcher le câblage. Une erreur dans l'additionneur 4 bits pourrait empêcher le tout de fonctionner,

Étape 4: Alimentation et mise à la terre du circuit

À l'aide de la batterie de 9 volts, fournissez l'alimentation et la terre à la planche à pain qui contiendra l'additionneur à quatre bits. Pour les 3 planches à pain restantes, fournissez-leur l'alimentation et la terre via l'Arduino UNO.

Étape 5: Câblage des LED

LED de câblage
LED de câblage

Pour ce projet, les cinq LED seront utilisées comme périphérique d'entrée et de sortie. En tant que périphérique de sortie, la LED allumera un nombre binaire, en fonction des entrées mises dans l'additionneur à quatre bits. En tant que périphérique d'entrée, en fonction des LED allumées et éteintes, nous pourrons projeter le nombre binaire converti sur l'écran LCD sous forme de nombre décimal. Pour câbler la LED, vous allez connecter l'une des sommes formées par l'additionneur quatre bits à la patte d'anode de la LED (jambe longue de LED), cependant entre ces deux, placez une résistance de 330 ohms. Ensuite, connectez la patte cathodique de la LED (jambe courte de la LED) au rail de terre. Entre la résistance et le fil de somme, connectez un fil mâle à mâle à n'importe quelle broche numérique de l'Arduino UNO. Répétez cette étape pour les trois sommes restantes et le report. Les broches numériques que j'ai utilisées étaient 2, 3, 4, 5 et 6.

Étape 6: Câblage de la LED RVB à anode commune

Câblage LED RVB à anode commune
Câblage LED RVB à anode commune

Pour ce projet, le but de cette LED RVB est de changer de couleur chaque fois qu'un nouveau nombre décimal est formé sur l'écran LCD. Lorsque vous regardez pour la première fois la led RVB à anode commune, vous remarquerez qu'elle a 4 pattes; une branche de feu rouge, une branche de puissance (anode), une branche de feu vert et une branche de lumière bleue. La branche d'alimentation (anode) sera connectée au rail d'alimentation, recevant 5 volts. Connectez les trois pattes de couleur restantes avec des résistances de 330 ohms. À l'autre extrémité de la résistance, utilisez un fil mâle à mâle pour le connecter à une broche numérique PWM sur l'Arduino. La broche numérique PWM est une broche numérique avec une ligne ondulée à côté. Les broches PWM que j'ai utilisées étaient 9, 10 et 11.

Étape 7: Câblage de l'écran LCD

Câblage de l'écran LCD
Câblage de l'écran LCD

Pour ce projet, l'écran LCD projettera le nombre binaire converti en un nombre décimal. Lorsque nous regardons l'écran LCD, vous remarquerez 4 broches mâles. Ces broches sont VCC, GND, SDA et SCL. Pour le VCC, utilisez un fil mâle à femelle pour connecter la broche VCC au rail d'alimentation sur la planche à pain. Cela fournira 5 volts à la broche VCC. Pour la broche GND, connectez-la au rail de terre avec un fil mâle à femelle. Avec les broches SDA et SCL, connectez-le à une broche analogique avec un fil mâle à femelle. J'ai connecté la broche SCL à la broche analogique A5 et la broche SDA à la broche analogique A4.

Étape 8: écriture du code

Maintenant que j'ai expliqué la partie construction de ce projet, commençons maintenant le code. Tout d'abord, nous devons d'abord télécharger et importer les bibliothèques suivantes; Bibliothèque LiquidCrystal_I2C et la bibliothèque de fils.

#include #include

Une fois cela fait, vous devez déclarer toutes les variables nécessaires. Dans tout type de code, vous devez d'abord déclarer vos variables.

const int digit1 = 2;

const int digit2 = 3;

const int digit3 = 4;

const int digit4 = 5;

const int digit5 = 6;

int digitsum1 = 0;

int digitsum2 = 0;

int digitsum3 = 0;

int digitsum4 = 0;

int digitsum5 = 0;

char array1="De binaire en décimal";

char array2="Convertisseur";

temps int = 500; //la valeur du temps de retard

const int redPin = 9;

const int greenPin = 10;

const int bluePin = 11;

#define COMMON_ANODE

LiquidCrystal_I2C lcd (0x27, 16, 2);

Dans le void setup(), vous déclarez le type de broche pour toutes vos variables. Vous utiliserez également un début de série car nous utilisons analogWrite()

void setup()

{

Serial.begin(9600);

pinMode(chiffre1, INPUT);

pinMode(chiffre2, INPUT);

pinMode(chiffre3, INPUT);

pinMode(chiffre4, INPUT);

pinMode(chiffre5, INPUT);

lcd.init();

LCD rétro-éclairage();

pinMode(redPin, SORTIE);

pinMode(vertPin, SORTIE);

pinMode(bluePin, SORTIE);

Dans le void setup(), j'ai créé une boucle for pour créer un message indiquant le nom de ce projet. La raison pour laquelle il n'est pas dans la boucle vide() est que s'il est dans ce vide, le message continuera à se répéter

lcd.setCursor(15, 0); // place le curseur sur la colonne 15, ligne 0

pour (int positionCounter1 = 0; positionCounter1 < 17; positionCounter1++)

{

lcd.scrollDisplayLeft(); // Fait défiler le contenu de l'affichage d'un espace vers la gauche.

lcd.print(array1[positionCounter1]); // Imprime un message sur l'écran LCD.

retard(tim); //attendre 250 microsecondes

}

lcd.clear(); //Efface l'écran LCD et positionne le curseur dans le coin supérieur gauche.

lcd.setCursor(15, 1); // place le curseur sur la colonne 15, ligne 1

for (int positionCounter = 0; positionCounter < 9; positionCounter++)

{

lcd.scrollDisplayLeft(); // Fait défiler le contenu de l'affichage d'un espace vers la gauche.

lcd.print(array2[positionCounter]);// Imprime un message sur l'écran LCD.

delay(tim);//attendre 250 microsecondes

}

lcd.clear(); //Efface l'écran LCD et positionne le curseur dans le coin supérieur gauche.

}

Maintenant que nous avons terminé la configuration void(), passons à la boucle void(). Dans la boucle void, j'ai créé plusieurs instructions if-else pour m'assurer que lorsque certaines lumières sont allumées ou éteintes, un certain nombre décimal s'affiche à l'écran. J'ai joint un document montrant ce qu'il y a à l'intérieur de ma boucle vide et les nombreux autres vides que j'ai créés. Cliquez ici pour visiter le document

Maintenant, tout ce que vous avez à faire est d'exécuter le code et de profiter de votre nouveau convertisseur binaire en décimal.

Conseillé: