Innholdsfortegnelse:

LCD -kalkulator av Jai Mishra: 8 trinn
LCD -kalkulator av Jai Mishra: 8 trinn

Video: LCD -kalkulator av Jai Mishra: 8 trinn

Video: LCD -kalkulator av Jai Mishra: 8 trinn
Video: #VIDEO | #Rakesh Mishra | Raja Jawan Hum Laika | Feat#Akanksha Dubey राजा जवान हम लइका |Bhojpuri 2024, Juli
Anonim
LCD -kalkulator av Jai Mishra
LCD -kalkulator av Jai Mishra

Tinkercad -prosjekter »

Dette er et veldig nyttig prosjekt som lærer deg hvordan du lager din egen kalkulator. Du kan enten lage denne kalkulatoren online eller i virkeligheten ved hjelp av ekstra rekvisita, men foreløpig skal vi bare fokusere på å lage en online kalkulator.

Rekvisita

  • Arduino Uno R3
  • 220 Ohm motstand
  • 4*4 Tastatur
  • 16*2 LCD
  • Bunke ledninger for å koble kretsen

Trinn 1: Samle rekvisita på TinkerCad

Samle rekvisita på TinkerCad
Samle rekvisita på TinkerCad

Sørg for at alle forsyningene dine er tilgjengelige før vi begynner med trinn 2 for å redusere stress og feil. Sørg for å også bruke riktige rekvisita. Noen av komponentene på dette bildet ovenfor ligner på andre komponenter, så ikke bland dem i mellom. Bruk bildet ovenfor som veiledning.

Trinn 2: Ordne rekvisita

Ordne forsyningene dine
Ordne forsyningene dine

Å ordne utstyret ditt er den beste måten å se en forhåndsvisning av hvordan kalkulatoren din kan se ut. Du kan lage hvilken som helst type kalkulatordesign du vil ha, men sørg for at kalkulatoren ser naturlig ut og at brukerne kan forstå designet og ikke bli forvirret. Jeg brukte en typisk stilig kalkulatordesign som er effektiv og forståelig for alle. Du kan enten velge mitt design eller lage ditt eget, men uansett hva det er, vær kreativ og lykke til!

Trinn 3: Koble til ledningene

Koble til ledningene
Koble til ledningene

Å koble ledningene er en vanskelig jobb hvis du ikke forstår meningen bak det. I denne ledningen prøver vi å koble alle fire komponentene sammen slik at de kan fungere som en gruppe når det er på tide å skrive koden. Hvis det ikke er ledninger, kommer ingen strøm til å strømme, noe som fører til et mislykket prosjekt. Sørg for at ledningene er riktig tilkoblet uten misforståelser.

Når du er ferdig med å koble ledningene, må du sørge for at ledningene er ryddig og organisert, slik at det er lettere for deg og andre å forstå hva som skjer i maskinvaren til denne kalkulatoren. Som jeg sa før, kan du enten bruke teknikken min til å organisere ledningene dine, eller du kan lage dine egne, men uansett hva du bestemmer deg for å gjøre, må du sørge for at de er satt sammen med litt plass.

Trinn 4: Skrive koden

Skriver koden
Skriver koden
Skriver koden
Skriver koden
Skriver koden
Skriver koden

#inkludere

#include #include

LiquidCrystal lcd (13, 12, 11, 10, 9, 8);

lang først = 0; lang sekund = 0; dobbel totalt = 0;

char customKey; const byte RADER = 4; const byte COLS = 4;

char keys [ROWS] [COLS] = {{'1', '4', '7', '/'}, {'2', '5', '8', '+'}, {'3', '6', '9', '-'}, {'C', '0', '=', '*'}}; byte rowPins [ROWS] = {7, 6, 5, 4}; // koble til radutklippene til tastaturbyte colPins [COLS] = {3, 2, 1, 0}; // koble til kolonneutklippene på tastaturet

// initialiser en forekomst av klassen NewKeypad Keypad customKeypad = Keypad (makeKeymap (keys), rowPins, colPins, ROWS, COLS);

ugyldig oppsett () {lcd.begin (16, 2); // start lcd for (int i = 0; i <= 3; i ++); lcd.setCursor (0, 0); lcd.print ("Kalkulator"); lcd.setCursor (0, 1); lcd.print ("Av Jai Mishra"); forsinkelse (4000); lcd.clear (); lcd.print ("Sluttprosjekt"); forsinkelse (2500); lcd.clear (); lcd.setCursor (0, 0); }

void loop () {

customKey = customKeypad.getKey (); switch (customKey) {case '0' … '9': // Dette samler den første verdien til en operator trykkes på "+-*/" lcd.setCursor (0, 0); first = first * 10 + (customKey - '0'); lcd.print (første); gå i stykker;

case '+': first = (total! = 0? total: first); lcd.setCursor (0, 1); lcd.print ("+"); second = SecondNumber (); // få det samlede andre nummeret totalt = første + sekund; lcd.setCursor (0, 3); lcd.print (totalt); første = 0, andre = 0; // tilbakestille verdier til null for neste brukspause;

case '-': first = (total! = 0? total: first); lcd.setCursor (0, 1); lcd.print ("-"); second = SecondNumber (); total = første - andre; lcd.setCursor (0, 3); lcd.print (totalt); første = 0, andre = 0; gå i stykker;

case '*': first = (total! = 0? total: first); lcd.setCursor (0, 1); lcd.print ("*"); second = SecondNumber (); total = første * andre; lcd.setCursor (0, 3); lcd.print (totalt); første = 0, andre = 0; gå i stykker;

case '/': first = (total! = 0? total: first); lcd.setCursor (0, 1); lcd.print ("/"); second = SecondNumber (); lcd.setCursor (0, 3);

andre == 0? lcd.print ("Ugyldig"): total = (flyte) første / (flyte) andre;

lcd.print (totalt); første = 0, andre = 0; gå i stykker;

tilfelle 'C': totalt = 0; lcd.clear (); gå i stykker; }}

long SecondNumber () {while (1) {customKey = customKeypad.getKey (); if (customKey> = '0' && customKey <= '9') {second = second * 10 + (customKey - '0'); lcd.setCursor (0, 2); lcd.print (andre); }

if (customKey == '=') pause; // return sekund; } gå tilbake andre; }

Trinn 5: Bryte ned koden

Bryte ned koden
Bryte ned koden

Vi initialiserte verdiene for datamaskinen å forstå

#inkludere

#include #include

LiquidCrystal lcd (13, 12, 11, 10, 9, 8);

lang først = 0; lang sekund = 0; dobbel totalt = 0;

char customKey; const byte RADER = 4; const byte COLS = 4;

Vi fortalte datamaskinen tallene og tegnene som tastaturet skulle fungere etter

char keys [ROWS] [COLS] = {{'1', '2', '3', '/'}, {'4', '5', '6', '+'}, {'7', '8', '9', '-'}, {'C', '0', '=', '*'}};

Vi fullførte radene og kolonnene på tastaturet, og hvilket nummer kommer i hvilken kolonne, etc

byte rowPins [ROWS] = {7, 6, 5, 4}; byte colPins [COLS] = {3, 2, 1, 0};

Vi opprettet introen, eller strømmen på skjermen for datamaskinen (Du kan skrive ditt eget navn på den)

ugyldig oppsett () {lcd.begin (16, 2); for (int i = 0; i <= 3; i ++); lcd.setCursor (0, 0); lcd.print ("Kalkulator"); lcd.setCursor (0, 1); lcd.print ("Av Jai Mishra"); forsinkelse (4000); lcd.clear (); lcd.print ("Sluttprosjekt"); forsinkelse (2500); lcd.clear (); lcd.setCursor (0, 0); }

Vi lager meningen og formelen for hver operasjon i kalkulatoren, slik at datamaskinen forstår hvilken formel han skal bruke når brukeren trykker "+" på kalkulatoren, etc

{case '0' … '9': lcd.setCursor (0, 0); first = first * 10 + (customKey - '0'); lcd.print (første); gå i stykker;

case '/': first = (total! = 0? total: first); lcd.setCursor (0, 1); lcd.print ("/"); second = SecondNumber (); lcd.setCursor (0, 3);

andre == 0? lcd.print ("Ugyldig"): total = (float) første / (float) andre;

lcd.print (totalt); første = 0, andre = 0; gå i stykker; case '+': first = (total! = 0? total: first); lcd.setCursor (0, 1); lcd.print ("+"); second = SecondNumber (); lcd.setCursor (0, 3); lcd.print (totalt); første = 0, andre = 0; gå i stykker;

case '-': first = (total! = 0? total: first); lcd.setCursor (0, 1); lcd.print ("-"); second = SecondNumber (); total = første - andre; lcd.setCursor (0, 3); lcd.print (totalt); første = 0, andre = 0; gå i stykker;

case '*': first = (total! = 0? total: first); lcd.setCursor (0, 1); lcd.print ("*"); second = SecondNumber (); total = første * andre; lcd.setCursor (0, 3); lcd.print (totalt); første = 0, andre = 0; gå i stykker;

tilfelle 'C': totalt = 0; lcd.clear (); gå i stykker; }}

Koden er veldig enkel, alt du trenger å gjøre er å prøve å forstå den, og så kan alt gjøres enkelt. Send meg en e -post hvis det er problemer med koden

Trinn 6: Hvordan fungerer maskinvaren til denne kalkulatoren?

Hvordan fungerer maskinvaren til denne kalkulatoren?
Hvordan fungerer maskinvaren til denne kalkulatoren?

Denne kalkulatoren bruker en LCD, et tastatur, et Arduino -kort og en 220 ohm motstand. Alle disse komponentene er separate, men er koblet til ledningene fra Arduino til tastaturet og LCD -skjermen. Ulike deler av LCD -skjermen er koblet til Arduino -kortet som til slutt forbinder dem begge med tastaturet. Etter tilkoblingen gjør kodingen alt arbeidet og gir hver operasjon og knapp på tastaturet en jobb å følge.

Trinn 7: Full forhåndsvisning av kalkulatoren

Slik ser vårt siste prosjekt ut! Hvis koden din ikke fungerer, eller det er noen tekniske problemer, vennligst send meg en e -post, så skal jeg prøve mitt beste for å hjelpe deg med å lage den beste kalkulatoren!

Trinn 8: Min inspirasjon til denne koden

Jeg ble inspirert av videoen ovenfor om hvordan du lager en kalkulator på tinkercad! Jeg kopierte og limte ikke inn noe, men jeg brukte ideen hans om kalkulatoren og forståelsen av koden.

Anbefalt: