Përmbajtje:

Llogaritësi Konkursi TinkerCad: 8 hapa
Llogaritësi Konkursi TinkerCad: 8 hapa

Video: Llogaritësi Konkursi TinkerCad: 8 hapa

Video: Llogaritësi Konkursi TinkerCad: 8 hapa
Video: Testimi - Humor Shqip 2024, Nëntor
Anonim
Konkursi i llogaritësit TinkerCad
Konkursi i llogaritësit TinkerCad

Hej, kështu kohët e fundit unë kam qenë duke eksploruar se si të zbatoj lloje të ndryshme të kodit në një qark. Kam gjetur se bërja e një kalkulatori do të ishte një mënyrë e shkëlqyer për të zbatuar "case" dhe format e tjera të kodit që kisha gjetur interesante. Në të kaluarën kam bërë llogaritës direkt nga kodi, por bërja e një qarku për të më dha interes. Sidomos gjatë kësaj kohe karantine ku jam në kompjuter pothuajse gjatë gjithë ditës. Projekti është të zbatojë operacione matematikore në një ekran LCD.

Hapi 1: Materialet

Për qark:

  • LCD 16 x 2
  • Arduino Uno R3
  • Tastiera 4x4
  • Breadboard i vogël
  • Potenciometër (250 kΩ)
  • Rezistencë (1kΩ)
  • x26 Tela bluzë

Hapi 2: Lidhja e tastierës 4x4

Lidhja e tastierës 4x4
Lidhja e tastierës 4x4

Lidhni kunjat me 4 rreshta në tastierën 4x4 me kunjat Arduino 4-7 dhe lidhni 4 kunjat e kolonës me kunjat Arduino 0-3.

Hapi 3: Siguroni energji bordit të bukës dhe lidhni LCD

Siguroni energji bordit të bukës dhe lidhni LCD
Siguroni energji bordit të bukës dhe lidhni LCD

Kam përdorur një tension të energjisë 5 për bordin e bukës. Unë lidha fuqinë dhe tokën me dërrasën e bukës. LCD -ja vendoset në dërrasën e bukës dhe vendoset në mënyrë që të gjitha kunjat e saj të lidhen me tabelën e bukës.

Hapi 4: Lidhni Power dhe Ground me LCD

Lidhni Power dhe Ground me LCD
Lidhni Power dhe Ground me LCD

Do të ketë 3 kunja toke të nevojshme për t'u lidhur me LCD. Njëra do të lidhet me tokën vetë LCD, një tjetër do të lidhet me LED të LCD, dhe e fundit do të lidhet me RW. VCC e LCD dhe led do të kërkojnë energji për t'u lidhur. Megjithatë fuqia për LED do të kërkojë një rezistencë të lidhur në këtë rast kam përdorur një rezistencë 1kΩ.

Hapi 5: Lidhja e Potenciometrit

Lidhja e Potenciometrit
Lidhja e Potenciometrit

Lidhni potenciometrin me tabelën e bukës me 3 kolona falas. Do të ketë 3 kunja, kolonës që përmban terminalin 1 kunj do t’i duhet terren që i është dhënë. Kolonës që përmban terminalin 2 pin do t'i duhet energji që i jepet. Pastaj fshirësi do të ketë një tel bluzë në kolonën e tij e cila lidhet me VO të LCD.

Hapi 6: Lidhja e Arduino me LCD

Lidhja e Arduino me LCD
Lidhja e Arduino me LCD

Kunjat 8-13 në Arduino do të lidhen me LCD. Kunjat 8-11 në Arduino do të lidhen përkatësisht me D8 (7-4). Pastaj kunja 12 e Arduino do të lidhet me Enable of LCD, dhe kunja 13 në Arduino do të lidhet me regjistrin e LCD.

Hapi 7: Kodi i Zbatimit

Kodi do të jetë i nevojshëm për të përdorur operacionet matematikore me tastierën dhe LCD. Më poshtë do të jetë kodi që kam përdorur, megjithatë ndryshime të shumta mund të më zbatojnë akoma për ta bërë atë më të pastër dhe më të mirë. Ndaj mos ngurroni të luani pak me të.

#përfshi #përfshi

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

gjatë e parë = 0;

sekondë e gjatë = 0;

total i dyfishtë = 0;

int pozit = 0;

char customKey;

const byte RRESHA = 4;

const byte COLS = 4;

çelësat e karbonit [ROWS] [COLS] = {

{'1', '2', '3', '/'}, {'4', '5', '6', '*'}, {'7', '8', '9', '-'}, {'C', '0', '=', '+'}};

byte rowPins [ROWS] = {7, 6, 5, 4};

byte colPins [COLS] = {3, 2, 1, 0};

Tastiera customKeypad = Tastiera (makeKeymap (çelësat), rowPins, colPins, ROWS, COLS);

void setup () {

lcd.filloni (16, 2);

lcd.setCursor (5, 0);

lcd.qartë (); }

lak void () {

customKey = customKeypad.getKey ();

kaloni (customKey) {

rasti '0' … '9':

lcd.setCursor (0, 0);

e para = e para * 10 + (customKey - '0');

lcd.print (së pari);

pozit ++;

pushim;

rasti "+":

e para = (gjithsej! = 0? gjithsej: e para);

lcd.setCursor (pozit, 0);

lcd.print ("+");

pozit ++;

e dyta = SecondNumber ();

total = e para + e dyta;

lcd.setCursor (1, 1);

lcd.print (gjithsej);

e para = 0, e dyta = 0;

pozit = 0;

pushim;

rast '-':

e para = (gjithsej! = 0? gjithsej: e para);

lcd.setCursor (pozit, 0);

lcd.print ("-");

pozit ++;

e dyta = SecondNumber ();

gjithsej = e para - e dyta;

lcd.setCursor (1, 1);

lcd.print (gjithsej);

e para = 0, e dyta = 0;

pozit = 0;

pushim;

rast '*':

e para = (gjithsej! = 0? gjithsej: e para);

lcd.setCursor (pozit, 0);

lcd.print ("*");

pozit ++;

e dyta = SecondNumber ();

total = e para * e dyta;

lcd.setCursor (1, 1);

lcd.print (gjithsej);

e para = 0, e dyta = 0;

pozit = 0;

pushim;

rast '/':

e para = (gjithsej! = 0? gjithsej: e para);

lcd.setCursor (pozit, 0);

lcd.print ("/");

pozit ++;

e dyta = SecondNumber (); lcd.setCursor (1, 1);

e dyta == 0? lcd.print ("Gabim"): total = (noton) i pari / (noton) i dyti;

lcd.print (gjithsej);

e para = 0, e dyta = 0;

pozit = 0;

pushim;

rasti 'C':

gjithsej = 0;

e para = 0;

e dyta = 0;

pozit = 0;

lcd.qartë ();

pushim; }

}

Numri i Dytë i gjatë () {

ndërsa (1) {

customKey = customKeypad.getKey ();

if (customKey> = '0' && customKey <= '9') {

e dyta = e dyta * 10 + (customKey - '0');

lcd.setCursor (pozit, 0);

lcd.print (e dyta); }

nëse (customKey == 'C') {

gjithsej = 0;

e para = 0;

e dyta = 0;

pozit = 0;

lcd.qartë ();

pushim; }

nëse (customKey == '=') {

lcd.setCursor (0, 1);

lcd.print ("=");

pozit = total;

lcd.qartë ();

lcd.setCursor (0, 1);

lcd.print ("=");

pushim; }

}

kthehu i dyti;}

Hapi 8: Rezultati

Rezultati
Rezultati
Rezultati
Rezultati

Shpresoj që të gjithëve ju ka pëlqyer kjo udhëzues. Faleminderit që lexuat!

Saim.

Recommended: