Turinys:

Dvejetainis iki dešimtainis skaičiuoklė: 8 žingsniai
Dvejetainis iki dešimtainis skaičiuoklė: 8 žingsniai

Video: Dvejetainis iki dešimtainis skaičiuoklė: 8 žingsniai

Video: Dvejetainis iki dešimtainis skaičiuoklė: 8 žingsniai
Video: CASIO FX-991MS FX-570MS FX-100MS learn everything 2024, Liepa
Anonim
Dvejetainis iki dešimtainis skaičiuoklė
Dvejetainis iki dešimtainis skaičiuoklė

Vienuoliktojoje kompiuterių inžinerijos klasėje turėjau apsispręsti dėl galutinio projekto. Iš pradžių nežinojau, ką daryti, nes jame turėjo būti tam tikrų aparatūros komponentų. Po kelių dienų mano klasės draugas liepė man atlikti projektą, pagrįstą prieš kelis mėnesius sukurtu keturių bitų papildiniu. Po tos dienos, naudodamas savo keturių bitų sumavimo priemonę, galėjau sukurti dvejetainį į dešimtainį keitiklį.

Norint sukurti šį projektą, reikia atlikti daug tyrimų, apimančių daugiausia supratimą, kaip veikia pilnas ir pusė papildymo.

1 žingsnis: reikalingos medžiagos

Šiam projektui jums reikės šių medžiagų:

  • Arduino UNO
  • keturios duonos lentos
  • devynių voltų baterija
  • septyni XOR vartai (2 XOR žetonai)
  • septyni IR vartai (2 IR lustai)
  • trys OR vartai (1 OR lustas)
  • penki šviesos diodai
  • aštuoni 330 omų rezistoriai
  • LCD ekranas
  • keturi vyriškos lyties laidai
  • daug vyrų ir vyrų laidų
  • vielos nuėmėjas
  • bendras anodo RGB šviesos diodas

Kaina (be laidų): 79,82 USD

Visos medžiagos kaina buvo nustatyta ABRA elektronikoje.

2 žingsnis: 4 bitų papildymo supratimas

4 bitų papildymo supratimas
4 bitų papildymo supratimas

Prieš pradėdami, turite suprasti, kaip veikia keturių bitų papildinys. Kai pirmą kartą pažvelgsime į šią grandinę, pastebėsite, kad yra pusės papildymo grandinė ir trys pilnos sumavimo grandinės. Kadangi keturių bitų sumavimo priemonė yra viso ir pusės papildymo derinys, paskelbiau vaizdo įrašą, kuriame paaiškinama, kaip veikia dviejų tipų papildai.

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

3 žingsnis: 4 bitų papildymo kūrimas

4 bitų papildymo kūrimas
4 bitų papildymo kūrimas
4 bitų papildymo kūrimas
4 bitų papildymo kūrimas

Labai sunku paaiškinti, kaip sukurti keturių bitų papildinį, nes tai susiję su daugybe laidų. Remdamasis šiomis nuotraukomis, galiu pateikti keletą gudrybių, kaip sukurti šią grandinę. Pirma, loginių mikroschemų išdėstymo būdas gali būti labai svarbus. Norėdami turėti tvarkingą grandinę, užsisakykite lustus tokia tvarka: XOR, AND, OR, AND, XOR. Turėdami šią tvarką, jūsų grandinė bus ne tik tvarkinga, bet ir jums bus labai paprasta organizuoti.

Kitas puikus triukas - kiekvieną papildymą statyti po vieną ir iš dešinės į kairę. Dažna klaida, kurią padarė daugelis žmonių, yra tai, kad visus priedus atlieka vienu metu. Tai darydami galite sugadinti laidus. Viena klaida 4 bitų sumavimo priemonėje gali neveikti,

4 žingsnis: maitinimo ir žemės tiekimas grandinei

Naudodami 9 voltų bateriją, maitinkite ir įžeminkite duonos lentą, kurioje bus keturių bitų papildiklis. Likusias 3 duonos lentas maitinkite ir įžeminkite per „Arduino UNO“.

5 žingsnis: šviesos diodų prijungimas

Laidų diodai
Laidų diodai

Šiame projekte penki šviesos diodai bus naudojami kaip įvesties ir išvesties įrenginys. Šviesos diodas, kaip išvesties įrenginys, apšvies dvejetainį skaičių, priklausomai nuo įvesties, įvestos į keturių bitų papildiklį. Kaip įvesties įrenginys, priklausomai nuo to, kurie šviesos diodai yra įjungti ir išjungti, konvertuotą dvejetainį skaičių galėsime projektuoti LCD ekrane kaip dešimtainį skaičių. Norėdami prijungti šviesos diodą, prijungsite vieną iš keturių bitų sumavimo sumos prie šviesos diodo anodo kojelės (ilga LED kojelė), tačiau tarp šių dviejų uždėkite 330 omų rezistorių. Tada prijunkite šviesos diodo katodinę kojelę (trumpą LED kojelę) prie įžeminimo bėgio. Tarp rezistoriaus ir suminio laido prijunkite vyrą prie laido prie bet kurio „Arduino UNO“skaitmeninio kaiščio. Pakartokite šį veiksmą su trimis likusiomis sumomis ir atlikimu. Mano naudojami skaitmeniniai kaiščiai buvo 2, 3, 4, 5 ir 6.

6 žingsnis: Bendrojo anodo RGB šviesos diodo prijungimas

Laidai Bendrojo anodo RGB šviesos diodas
Laidai Bendrojo anodo RGB šviesos diodas

Šiame projekte šio RGB šviesos diodo tikslas yra pakeisti spalvas, kai LCD ekrane suformuojamas naujas dešimtainis skaičius. Kai pirmą kartą pažvelgsite į bendrą anodą RGB, pastebėsite, kad jis turi 4 kojas; raudonos šviesos koja, maitinimo (anodo) koja, žalios šviesos koja ir mėlynos šviesos koja. Maitinimo (anodo) kojelė bus prijungta prie maitinimo bėgio, gaunanti 5 voltus. Prijunkite likusias tris spalvotas kojas su 330 omų rezistoriais. Kitame rezistoriaus gale naudokite laidą nuo vyrų iki vyrų, kad prijungtumėte jį prie „PWM dgital“kaiščio „Arduino“. PWM skaitmeninis kaištis yra bet koks skaitmeninis kaištis, prie kurio yra neryški linija. Mano naudojami PWM kaiščiai buvo 9, 10 ir 11.

7 veiksmas: LCD ekrano prijungimas

LCD ekrano prijungimas
LCD ekrano prijungimas

Šiam projektui LCD ekranas konvertuoja dvejetainį skaičių į dešimtainį skaičių. Kai pažvelgsime į LCD ekraną, pastebėsite 4 kaiščius. Tie kaiščiai yra VCC, GND, SDA ir SCL. Jei naudojate VCC, naudokite laidą iš patelės į moterį, kad prijungtumėte VCC kaištį prie maitinimo plokštės ant duonos lentos. Tai suteiks 5 voltų įtampą prie VCC kaiščio. GND kaiščiui prijunkite jį prie įžeminimo bėgio su viela ir patelė. Naudodami SDA ir SCL kaiščius, prijunkite jį prie analoginio kaiščio su kištukiniu ir moterišku laidu. Aš prijungiau SCL kaištį prie analoginio kaiščio A5 ir SDA kaištį prie analoginio kaiščio A4.

8 žingsnis: kodo rašymas

Dabar, kai paaiškinau šio projekto kūrimo dalį, pradėkime kodą. Pirma, pirmiausia turime atsisiųsti ir importuoti šias bibliotekas; „LiquidCrystal_I2C“biblioteka ir vielos biblioteka.

#įtraukti #įtraukti

Kai tai padarysite, turite deklaruoti visus būtinus kintamuosius. Bet kokio tipo kode pirmiausia turite deklaruoti savo kintamuosius.

const int skaitmuo1 = 2;

const int skaitmuo2 = 3;

const int skaitmuo3 = 4;

const int skaitmuo4 = 5;

const int skaitmuo5 = 6;

int skaitmuo1 = 0;

int skaitmuo2 = 0;

int skaitmuo3 = 0;

int skaitmuo4 = 0;

int skaitmuo5 = 0;

char array1 = "Dvejetainis iki dešimtainio";

char array2 = "Keitiklis";

int tim = 500; // uždelsimo laiko vertė

const int redPin = 9;

const int greenPin = 10;

const int bluePin = 11;

#define COMMON_ANODE

LiquidCrystal_I2C LCD (0x27, 16, 2);

Tuštumos sąrankoje () deklaruojate visų kintamųjų kaiščio tipą. Taip pat naudosite serijinę pradžią, nes mes naudojame analogWrite ()

negaliojanti sąranka ()

{

Serial.begin (9600);

pinMode (skaitmuo 1, Įvestis);

pinMode (skaitmuo2, Įvestis);

pinMode (skaitmuo 3, Įvestis);

pinMode (4 skaitmuo, Įvestis);

pinMode (skaitmuo 5, Įvestis);

lcd.init ();

lcd.backlight ();

pinMode (redPin, OUTPUT);

„pinMode“(žalias „Pin“, OUTPUT);

pinMode („bluePin“, OUTPUT);

„Void setup“() sukūriau for for ciklą, kad galėčiau sukurti pranešimą, kuriame būtų nurodytas šio projekto pavadinimas. Priežastis, kodėl jos nėra tuštumos cikle (), yra ta, kad jei ji yra tuštumoje, pranešimas kartosis

lcd.setCursor (15, 0); // nustatykite žymeklį į 15 stulpelį, 0 eilutę

už (int positionCounter1 = 0; positionCounter1 <17; positionCounter1 ++)

{

lcd.scrollDisplayLeft (); // Slenka ekrano turinį viena vieta į kairę.

lcd.print (masyvas1 [pozicijaSkaitiklis1]); // Spausdinkite pranešimą į LCD.

vėlavimas (tim); // palaukite 250 mikrosekundžių

}

lcd.clear (); // Išvalo LCD ekraną ir nukreipia žymeklį viršutiniame kairiajame kampe.

lcd.setCursor (15, 1); // nustatykite žymeklį į 15 stulpelį, 1 eilutę

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

{

lcd.scrollDisplayLeft (); // Slenka ekrano turinį viena vieta į kairę.

lcd.print (array2 [positionCounter]); // Išspausdinkite pranešimą į LCD.

uždelsimas (tim); // laukti 250 mikrosekundžių

}

lcd.clear (); // Išvalo LCD ekraną ir nukreipia žymeklį viršutiniame kairiajame kampe.

}

Dabar, kai baigėme tuštumos sąranką (), pereikime prie tuštumos kilpos (). Tuštumos cikle sukūriau kelis teiginius, jei būtų kitaip, kad įsitikinčiau, jog kai tam tikros lemputės įjungiamos arba išjungiamos, ekrane bus rodomas tam tikras skaičius po kablelio. Pridėjau dokumentą, parodantį, kas yra mano tuštumos cikle ir daugelyje kitų mano sukurtų tuštumų. Spustelėkite čia, jei norite aplankyti dokumentą

Dabar viskas, ką jums reikia padaryti, tai paleisti kodą ir mėgautis nauju dvejetainio į dešimtainį keitikliu.

Rekomenduojamas: