Obsah:

Binárna až desatinná kalkulačka: 8 krokov
Binárna až desatinná kalkulačka: 8 krokov

Video: Binárna až desatinná kalkulačka: 8 krokov

Video: Binárna až desatinná kalkulačka: 8 krokov
Video: CASIO fx-991CW fx-570CW CLASSWIZ Calculator Full Example Manual 2024, Júl
Anonim
Binárna až desatinná kalkulačka
Binárna až desatinná kalkulačka

V prípade počítačovej techniky jedenástej triedy som sa musel rozhodnúť pre konečný projekt. Najprv som nevedel, čo mám robiť, pretože to muselo zahŕňať určité hardvérové komponenty. Po niekoľkých dňoch mi môj spolužiak povedal, aby som urobil projekt založený na štvorbitovej sčítačke, ktorú sme vytvorili pred niekoľkými mesiacmi. Po tom dni som pomocou svojej štvorbitovej sčítačky dokázal vytvoriť prevodník binárnej hodnoty na desatinné miesto.

Vytvorenie tohto projektu si vyžaduje veľa výskumu, ktorý zahŕňa hlavne pochopenie toho, ako funguje úplný a polovičný sčítač.

Krok 1: Potrebný materiál

Na tento projekt budete potrebovať nasledujúce materiály:

  • Arduino UNO
  • štyri chlebníky
  • deväťvoltová batéria
  • sedem brán XOR (2 čipy XOR)
  • sedem A brán (2 A čipy)
  • tri ALEBO brány (1 ALEBO čip)
  • päť LED diód
  • osem odporov 330 ohmov
  • displej LCD
  • štyri mužsko-ženské drôty
  • veľa káblov muž-muž
  • odizolovač drôtov
  • RGB LED so spoločnou anódou

Náklady (bez drôtov): 79,82 dolára

Všetky náklady na materiál boli nájdené na elektronike ABRA.

Krok 2: Pochopenie 4 -bitovej sčítačky

Pochopenie 4 -bitovej sčítačky
Pochopenie 4 -bitovej sčítačky

Skôr ako začneme, musíte pochopiť, ako funguje štvorbitový sčítač. Keď sa prvýkrát pozrieme na tento obvod, všimnete si, že existujú polovičné obvody a tri úplné obvody. Pretože štvorbitová sčítačka je kombináciou úplnej a polovičnej sčítačky, zverejnil som video s vysvetlením, ako tieto dva typy sčítačky fungujú.

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

Krok 3: Zostavenie 4 bitovej sčítačky

Budovanie 4 bitovej sčítačky
Budovanie 4 bitovej sčítačky
Budovanie 4 bitovej sčítačky
Budovanie 4 bitovej sčítačky

Vysvetlenie, ako postaviť štvorbitovú sčítačku, je veľmi ťažké, pretože zahŕňa veľa kabeláže. Na základe týchto obrázkov vám môžem poskytnúť niekoľko trikov na zostavenie tohto obvodu. Po prvé, spôsob, akým usporiadate svoje logické čipy, môže byť veľmi dôležitý. Aby ste mali čistý obvod, objednajte svoje čipy v tomto poradí: XOR, AND, OR, AND, XOR. Vďaka tomuto poradiu bude váš okruh nielen čistý, ale tiež sa vám bude veľmi ľahko organizovať.

Ďalším skvelým trikom je postaviť každý sčítač jeden po druhom a z pravej strany na ľavú stranu. Bežnou chybou, ktorú mnoho ľudí urobilo, je, že urobili všetky sčítačky súčasne. Mohli by ste sa tým pokaziť vo vedení. Jedna chyba v 4-bitovej sčítačke môže spôsobiť, že celá vec nebude fungovať,

Krok 4: Zabezpečenie napájania a uzemnenia obvodu

Pomocou 9-voltovej batérie poskytnite napájanie a uzemnenie nepájivej dosky, ktorá bude obsahovať štvorbitový adaptér. Zostávajúcim 3 doskám zabezpečte napájanie a uzemnenie prostredníctvom Arduino UNO.

Krok 5: Zapojenie LED diód

LED zapojenie
LED zapojenie

Pre tento projekt bude päť LED diód použitých ako vstupné a výstupné zariadenie. Ako výstupné zariadenie bude LED dióda svietiť na binárne číslo v závislosti od vstupov vložených do štvorbitového sčítača. Ako vstupné zariadenie budeme môcť podľa toho, ktoré diódy LED svietiť a zhasínať, premietať konvertované binárne číslo na LCD displej ako desatinné číslo. Na prepojenie diódy LED pripojíte jednu zo súčtov tvorených štvorbitovým sčítačom k anódovej časti diódy LED (dlhá časť diódy LED), avšak medzi tieto dve umiestnite odpor 330 ohmov. Potom pripojte katódové rameno LED (krátke rameno LED) k uzemňovacej lište. Medzi odporom a súčtovým vodičom pripojte kábel mužského k mužskému k akémukoľvek digitálnemu kolíku na Arduino UNO. Tento krok zopakujte pre tri zostávajúce sumy a vykonanie. Digitálne piny, ktoré som použil, boli 2, 3, 4, 5 a 6.

Krok 6: Zapojenie bežnej anódy RGB LED

Zapojenie spoločnej anódy RGB LED
Zapojenie spoločnej anódy RGB LED

V tomto projekte je účelom tejto LED diódy RGB meniť farby vždy, keď sa na displeji LCD vytvorí nové desatinné číslo. Keď sa prvýkrát pozriete na bežnú anódu RGB LED, všimnete si, že má 4 nohy; noha s červeným svetlom, silová (anódová) noha, noha so zeleným svetlom a noha s modrým svetlom. Napájacia (anódová) noha bude pripojená k napájacej lište s napätím 5 voltov. Zostávajúce tri farebné nohy spojte s odpormi 330 ohmov. Na druhom konci rezistora ho prepojte pomocou mužského až mužského vodiča s dgitálnym kolíkom PWM na Arduine. Digitálny pin PWM je akýkoľvek digitálny kolík s vlnitou čiarou vedľa neho. Piny PWM, ktoré som použil, boli 9, 10 a 11.

Krok 7: Zapojenie LCD displeja

Zapojenie LCD displeja
Zapojenie LCD displeja

Pre tento projekt LCD displej premietne prevedené binárne číslo na desatinné miesto. Keď sa pozrieme na LCD displej, všimnete si 4 mužské kolíky. Tieto kolíky sú VCC, GND, SDA a SCL. V prípade VCC použite kolík VCC na zástrčku na napájaciu lištu na doske. To poskytne 5 voltov na kolíku VCC V prípade kolíka GND ho pripojte k uzemňovacej lište drôtom z mužského do ženského konektora. Pomocou pinov SDA a SCL ho pripojte k analógovému kolíku pomocou kábla medzi mužským a ženským koncom. Pripojil som pin SCL k analógovému kolíku A5 a kolík SDA k analógovému kolíku A4.

Krok 8: Napíšte kód

Teraz, keď som vysvetlil stavebnú časť tohto projektu, začnime s kódom. Najprv musíme najskôr stiahnuť a importovať nasledujúce knižnice; Knižnica LiquidCrystal_I2C a drôtová knižnica.

#include #include

Akonáhle to urobíte, musíte deklarovať všetky potrebné premenné. V každom type kódu musíte najskôr deklarovať svoje premenné.

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 = "Binárne na desatinné miesto";

char array2 = "Konvertor";

int tim = 500; // hodnota času oneskorenia

const int redPin = 9;

const int greenPin = 10;

const int bluePin = 11;

#define COMMON_ANODE

LiquidCrystal_I2C lcd (0x27, 16, 2);

V neplatnom nastavení () deklarujete typ kolíka pre všetky svoje premenné. Budete tiež používať postupnosť sériových čísel, pretože používame analogWrite ()

neplatné nastavenie ()

{

Serial.begin (9600);

pinMode (digit1, VSTUP);

pinMode (digit2, INPUT);

pinMode (digit3, INPUT);

pinMode (digit4, INPUT);

pinMode (digit5, INPUT);

lcd.init ();

lcd.backlight ();

pinMode (redPin, OUTPUT);

pinMode (greenPin, OUTPUT);

pinMode (bluePin, OUTPUT);

V neplatnom nastavení () som vytvoril slučku for, aby som vytvoril správu s názvom tohto projektu. Dôvod, prečo nie je v prázdnej slučke (), je ten, že ak je v tejto prázdnote, správa sa bude stále opakovať

lcd.setCursor (15, 0); // nastavte kurzor na stĺpec 15, riadok 0

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

{

lcd.scrollDisplayLeft (); // Posunie obsah displeja o jedno miesto doľava.

lcd.print (pole1 [positionCounter1]); // Vytlačte správu na LCD.

oneskorenie (tim); // počkajte 250 mikrosekúnd

}

lcd.clear (); // Vymaže obrazovku LCD a umiestni kurzor do ľavého horného rohu.

lcd.setCursor (15, 1); // nastavte kurzor na stĺpec 15, riadok 1

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

{

lcd.scrollDisplayLeft (); // Posunie obsah displeja o jedno miesto doľava.

lcd.print (array2 [positionCounter]); // Vytlačí správu na LCD.

delay (tim); // počkajte 250 mikrosekúnd

}

lcd.clear (); // Vymaže obrazovku LCD a umiestni kurzor do ľavého horného rohu.

}

Teraz, keď sme dokončili nastavenie neplatnosti (), prejdeme k prázdnej slučke (). V slučke prázdnoty som vytvoril niekoľko príkazov if-else, aby som sa ubezpečil, že keď sú určité svetlá zapnuté alebo vypnuté, zobrazí na displeji určité desatinné číslo. Priložil som dokument, ktorý ukazuje, čo je v mojej prázdnej slučke a mnoho ďalších dutín, ktoré som vytvoril. Kliknutím sem dokument navštívite

Teraz stačí spustiť kód a užiť si nový binárny prevod na desatinné miesto.

Odporúča: