Cuprins:

Calculator binar spre zecimal: 8 pași
Calculator binar spre zecimal: 8 pași

Video: Calculator binar spre zecimal: 8 pași

Video: Calculator binar spre zecimal: 8 pași
Video: Transformare zecimal binar si viceversa 2024, Noiembrie
Anonim
Calculator binar spre zecimal
Calculator binar spre zecimal

Pentru ingineria informatică de clasa a unsprezecea, a trebuit să mă decid asupra unui proiect final. La început nu știam ce să fac pentru că trebuia să includă anumite componente hardware. După câteva zile, colegul meu de clasă mi-a spus să fac un proiect pe baza adderului de patru biți pe care l-am creat acum câteva luni. După acea zi, folosind adăugătorul meu de patru biți, am reușit să creez un convertor binar în zecimal.

Crearea acestui proiect necesită o mulțime de cercetări, care includ în principal înțelegerea modului în care funcționează un sumator complet și jumătate.

Pasul 1: Materiale necesare

Pentru acest proiect, veți avea nevoie de următoarele materiale:

  • Arduino UNO
  • patru panouri
  • baterie de nouă volți
  • șapte porți XOR (2 jetoane XOR)
  • șapte porți ȘI (2 ȘI jetoane)
  • trei porți SAU (1 SAU cip)
  • cinci LED-uri
  • opt rezistențe de 330 ohmi
  • Ecran LCD
  • patru fire masculin-feminin
  • o mulțime de fire mascul-mascul
  • decapant de sârmă
  • LED anod comun RGB

Cost (cu excepția firelor): 79,82 USD

Toate costurile materialului au fost găsite pe electronica ABRA.

Pasul 2: Înțelegerea Adderului pe 4 biți

Înțelegerea Adderului pe 4 biți
Înțelegerea Adderului pe 4 biți

Înainte de a începe, trebuie să înțelegeți cum funcționează un sumator de patru biți. Când ne uităm pentru prima dată la acest circuit, veți observa că există un circuit cu jumătate de sumator și trei circuite cu sumator complet. Deoarece un sumator de patru biți este o combinație între un sumator complet și jumătate, am postat un videoclip care explică modul în care funcționează cele două tipuri de sumatoare.

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

Pasul 3: Construirea Adderului pe 4 biți

Construirea Adderului pe 4 biți
Construirea Adderului pe 4 biți
Construirea Adderului pe 4 biți
Construirea Adderului pe 4 biți

Explicarea modului de construire a unui sumator de patru biți este foarte dificilă, deoarece implică o mulțime de cabluri. Pe baza acestor imagini, vă pot oferi câteva trucuri pentru a construi acest circuit. În primul rând, modul în care vă aranjați jetoanele logice poate fi foarte important. Pentru a avea un circuit îngrijit, comandați-vă jetoanele în această ordine: XOR, AND, OR, AND, XOR. Având această comandă, circuitul dvs. nu numai că va fi îngrijit, dar vă va fi și foarte ușor de organizat.

Un alt truc grozav este să construiești fiecare sumator pe rând și din partea dreaptă spre partea stângă. O greșeală obișnuită pe care mulți oameni au făcut-o este să facă toate adăugatoarele în același timp. Făcând acest lucru, ați putea deranja cablajul. O greșeală în adderul de 4 biți ar putea face ca totul să nu funcționeze,

Pasul 4: Furnizarea de energie și masă la circuit

Folosind bateria de 9 volți, asigurați alimentarea și împământarea panoului care va conține sumatorul de patru biți. Pentru celelalte 3 panouri, asigurați-i energie și împământare prin intermediul Arduino UNO.

Pasul 5: LED-uri de cablare

LED-uri de cablare
LED-uri de cablare

Pentru acest proiect, cele cinci LED-uri vor fi utilizate ca dispozitiv de intrare și ieșire. Ca dispozitiv de ieșire, LED-ul va lumina un număr binar, în funcție de intrările introduse în sumatorul de patru biți. Ca dispozitiv de intrare, în funcție de LED-urile care sunt aprinse și oprite, vom putea proiecta numărul binar convertit pe afișajul LCD ca număr zecimal. Pentru a conecta LED-ul, veți conecta una dintre sumele formate din sumatorul de patru biți la piciorul anodic al LED-ului (piciorul lung al LED-ului), cu toate acestea, între aceste două, plasați un rezistor de 330 ohmi. Apoi conectați piciorul catodic al LED-ului (piciorul scurt al LED-ului) la șina de la sol. Între rezistență și firul sumar, conectați un fir tată la tată la orice pin digital de pe Arduino UNO. Repetați acest pas pentru cele trei sume rămase și efectuarea. Pinii digitali pe care i-am folosit au fost 2, 3, 4, 5 și 6.

Pasul 6: Cablare LED RGB anod comun

Cablare LED anod comun RGB
Cablare LED anod comun RGB

Pentru acest proiect, scopul acestui LED RGB este de a schimba culorile ori de câte ori se formează un nou număr zecimal pe afișajul LCD. Când vă uitați la ledul RGB anod comun, veți observa că are 4 picioare; un picior cu lumină roșie, un picior cu putere (anod), un picior cu lumină verde și un picior cu lumină albastră. Piciorul de alimentare (anod) va fi conectat la șina de alimentare, primind 5 volți. Conectați cele trei picioare de culoare rămase cu rezistențe de 330 ohmi. La celălalt capăt al rezistorului, utilizați un fir tată-tată pentru a-l conecta la un pin digital PWM de pe Arduino. Pinul digital PWM este orice pin digital cu o linie zgârcită lângă el. Pinii PWM pe care i-am folosit erau 9, 10 și 11.

Pasul 7: Cablarea afișajului LCD

Cablarea afișajului LCD
Cablarea afișajului LCD

Pentru acest proiect, afișajul LCD va proiecta numărul binar convertit într-o zecimală. Când ne uităm la ecranul LCD, veți observa 4 pini masculi. Acei pini sunt VCC, GND, SDA și SCL. Pentru VCC, utilizați un fir tată-mamă pentru a conecta pinul VCC la șina de alimentare de pe panou. Acest lucru va oferi 5 volți pinului VCC Pentru pinul GND, conectați-l la șina de masă cu un fir tată la tată. Cu pinii SDA și SCL, conectați-l la un pin analogic cu un fir masculin la femel. Am conectat pinul SCL la pinul analogic A5 și pinul SDA la pinul analogic A4.

Pasul 8: Scrierea codului

Acum, că am explicat partea de construcție a acestui proiect, să începem acum codul. În primul rând, trebuie mai întâi să descărcăm și să importăm următoarele biblioteci; Biblioteca LiquidCrystal_I2C și biblioteca de fire.

#include #include

După ce ați făcut acest lucru, trebuie să declarați toate variabilele necesare. În orice tip de cod, trebuie să vă declarați mai întâi variabilele.

const int digit1 = 2;

const int digit2 = 3;

const int digit3 = 4;

const int digit4 = 5;

const int digit5 = 6;

int digitum1 = 0;

int digitum2 = 0;

int digitum3 = 0;

int digitum4 = 0;

int digitum5 = 0;

char array1 = "Binar până la zecimal";

char array2 = "Convertor";

int tim = 500; // valoarea timpului de întârziere

const int redPin = 9;

const int greenPin = 10;

const int bluePin = 11;

#define COMMON_ANODE

LiquidCrystal_I2C lcd (0x27, 16, 2);

În setarea nulă (), declarați tipul de pin pentru toate variabilele. De asemenea, veți utiliza un început serial, deoarece folosim analogWrite ()

configurare nulă ()

{

Serial.begin (9600);

pinMode (digit1, INPUT);

pinMode (cifra2, INPUT);

pinMode (digit3, INPUT);

pinMode (digit4, INPUT);

pinMode (cifra5, INPUT);

lcd.init ();

lcd.backlight ();

pinMode (redPin, OUTPUT);

pinMode (greenPin, OUTPUT);

pinMode (bluePin, OUTPUT);

În setarea nulă (), am creat o buclă for pentru a crea un mesaj care să spună numele acestui proiect. Motivul pentru care nu se află în bucla de gol () este că, dacă se află în acel gol, mesajul va continua să se repete

lcd.setCursor (15, 0); // setați cursorul la coloana 15, linia 0

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

{

lcd.scrollDisplayLeft (); // Derulează conținutul afișajului un spațiu la stânga.

lcd.print (array1 [positionCounter1]); // Imprimați un mesaj pe ecranul LCD.

întârziere (tim); // așteptați 250 de microsecunde

}

lcd.clear (); // Șterge ecranul LCD și poziționează cursorul în colțul din stânga sus.

lcd.setCursor (15, 1); // setați cursorul la coloana 15, linia 1

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

{

lcd.scrollDisplayLeft (); // Derulează conținutul afișajului un spațiu la stânga.

lcd.print (array2 [positionCounter]); // Imprimați un mesaj pe ecranul LCD.

delay (tim); // așteptați 250 de microsecunde

}

lcd.clear (); // Șterge ecranul LCD și poziționează cursorul în colțul din stânga sus.

}

Acum, după ce am terminat setarea void (), să trecem la bucla void (). În bucla de gol, am creat mai multe instrucțiuni if-else pentru a mă asigura că atunci când anumite lumini sunt aprinse sau oprite, va afișa un anumit număr zecimal pe afișaj. Am atașat un document care arată ce se află în bucla mea de gol și multe alte goluri pe care le-am creat. Faceți clic aici pentru a vizita documentul

Acum tot ce trebuie să faceți este să rulați codul și să vă bucurați de noul convertor binar în zecimal.

Recomandat: