Sadržaj:
- Korak 1: Materijali
- Korak 2: Povezivanje 4x4 tastature
- Korak 3: Omogućite napajanje Breadboard -u i povežite LCD
- Korak 4: Priključite napajanje i uzemljenje na LCD
- Korak 5: Povezivanje potenciometra
- Korak 6: Spajanje Arduina na LCD
- Korak 7: Primijenite kôd
- Korak 8: Rezultat
Video: Kalkulator TinkerCad takmičenje: 8 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:05
Hej, nedavno sam istraživao kako implementirati različite vrste koda u kolo. Otkrio sam da bi izrada kalkulatora bila odličan način za implementaciju "case" i drugih oblika koda koji su mi bili zanimljivi. Ranije sam izrađivao kalkulatore direktno iz koda, ali stvaranje kola za to mi je dalo interes. Pogotovo u ovo vrijeme karantene gdje sam skoro cijeli dan na računaru. Projekat ima za cilj implementaciju matematičkih operacija na LCD ekranu.
Korak 1: Materijali
Za kolo:
- LCD 16 x 2
- Arduino Uno R3
- Tastatura 4x4
- Small Breadboard
- Potenciometar (250 kΩ)
- Otpornik (1 kΩ)
- x26 Žice za kratkospojnike
Korak 2: Povezivanje 4x4 tastature
Spojite pinove od 4 reda na tastaturi 4x4 na Arduino pinove 4-7 i povežite pinove sa 4 stupca na Arduino pinove 0-3.
Korak 3: Omogućite napajanje Breadboard -u i povežite LCD
Koristio sam napon snage 5 za ploču. Priključio sam napajanje i masu na matičnu ploču. LCD se postavlja na matičnu ploču i postavlja tako da se svi njegovi pinovi povežu s matičnom pločom.
Korak 4: Priključite napajanje i uzemljenje na LCD
Za spajanje na LCD bit će potrebna 3 pina uzemljenja. Jedan će biti povezan sa masom LCD -a, drugi će biti povezan sa LED -om LCD -a, a posljednji će biti spojen na RW. VCC na LCD -u i LED diodi će zahtijevati povezivanje napajanja. Međutim, za napajanje LED -a bit će potreban priključeni otpornik. U ovom slučaju koristio sam otpornik od 1 kΩ.
Korak 5: Povezivanje potenciometra
Povežite potenciometar na ploču s 3 slobodna stupca. Imat će 3 pina, za stupac koji sadrži terminal 1 pin treba mu uzemljenje. Stupcu koji sadrži 2 pina priključka potrebno je napajanje. Tada će brisač u svojoj koloni imati kratkospojnu žicu koja se povezuje sa VO LCD -a.
Korak 6: Spajanje Arduina na LCD
Igle 8-13 na Arduinu bit će spojene na LCD. Igle 8-11 na Arduinu povezat će se s D8 (7-4). Tada će se pin 12 na Arduinu spojiti s Enable -om LCD -a, a pin 13 na Arduinu će se spojiti na registar LCD -a.
Korak 7: Primijenite kôd
Kod će biti potreban za korištenje matematičkih operacija s tipkovnicom i LCD -om. U nastavku će biti kôd koji sam koristio, međutim više promjena se i dalje može primijeniti kako bi bio čistiji i bolji. Zato se slobodno poigrajte malo s tim.
#include #include
LiquidCrystal lcd (13, 12, 11, 10, 9, 8);
long long = 0;
duga sekunda = 0;
dvostruko ukupno = 0;
int pozit = 0;
char customKey;
const bajt ROWS = 4;
const bajt COLS = 4;
ključevi char [ROWS] [COLS] = {
{'1', '2', '3', '/'}, {'4', '5', '6', '*'}, {'7', '8', '9', '-'}, {'C', '0', '=', '+'}};
bajtovi rowPins [ROWS] = {7, 6, 5, 4};
bajt colPins [COLS] = {3, 2, 1, 0};
Tastatura customKeypad = Tastatura (makeKeymap (ključevi), rowPins, colPins, ROWS, COLS);
void setup () {
lcd.begin (16, 2);
lcd.setCursor (5, 0);
lcd.clear (); }
void loop () {{100} {101}
customKey = customKeypad.getKey ();
switch (customKey) {
slučaj '0' … '9':
lcd.setCursor (0, 0);
first = first * 10 + (customKey - '0');
lcd.print (prvi);
posit ++;
break;
slučaj '+':
prvi = (ukupno! = 0? ukupno: prvo);
lcd.setCursor (pozicija, 0);
lcd.print ("+");
posit ++;
second = SecondNumber ();
ukupno = prvi + drugi;
lcd.setCursor (1, 1);
lcd.print (ukupno);
prvi = 0, druga = 0;
pozit = 0;
break;
slučaj '-':
prvi = (ukupno! = 0? ukupno: prvo);
lcd.setCursor (pozicija, 0);
lcd.print ("-");
posit ++;
second = SecondNumber ();
ukupno = prvo - drugo;
lcd.setCursor (1, 1);
lcd.print (ukupno);
prvi = 0, druga = 0;
pozit = 0;
break;
slučaj '*':
prvi = (ukupno! = 0? ukupno: prvo);
lcd.setCursor (pozicija, 0);
lcd.print ("*");
posit ++;
second = SecondNumber ();
ukupno = prva * druga;
lcd.setCursor (1, 1);
lcd.print (ukupno);
prvi = 0, druga = 0;
pozit = 0;
break;
slučaj '/':
prvi = (ukupno! = 0? ukupno: prvo);
lcd.setCursor (pozicija, 0);
lcd.print ("/");
posit ++;
second = SecondNumber (); lcd.setCursor (1, 1);
drugo == 0? lcd.print ("Greška"): ukupno = prvo (float) prvo / (float) drugo;
lcd.print (ukupno);
prvi = 0, druga = 0;
pozit = 0;
break;
slučaj 'C':
ukupno = 0;
prvi = 0;
druga = 0;
pozit = 0;
lcd.clear ();
break; }
}
long SecondNumber () {
dok (1) {
customKey = customKeypad.getKey ();
if (customKey> = '0' && customKey <= '9') {
second = second * 10 + (customKey - '0');
lcd.setCursor (pozicija, 0);
lcd.print (drugi); }
if (customKey == 'C') {
ukupno = 0;
prvi = 0;
druga = 0;
pozit = 0;
lcd.clear ();
break; }
if (customKey == '=') {
lcd.setCursor (0, 1);
lcd.print ("=");
pozit = ukupno;
lcd.clear ();
lcd.setCursor (0, 1);
lcd.print ("=");
break; }
}
vrati se drugi;}
Korak 8: Rezultat
Nadam se da ste svi uživali u ovom uputstvu. Hvala vam na čitanju!
Saim.
Preporučuje se:
Gimbal 3D štampane kamere (Tinkercad takmičenje): 6 koraka
Gimbal 3D štampane kamere (Tinkercad takmičenje): Zdravo, Ovo je gimbal kamere koji sam dizajnirao u Tinkercadu. Glavni gimbal je napravljen od ove ručke za teglu i gimbala / žiroskopa s pet prstenova koje izgleda više ne mogu pronaći. Dizajn Tinkercada možete pronaći ovdje. Ovo je dizajnirano za rad na ovlastima
DIY VR traka za trčanje- Basys3 FPGA-Digilent takmičenje: 3 koraka
DIY VR traka za trčanje- Basys3 FPGA-Digilent takmičenje: Želite li izgraditi VR traku za trčanje na kojoj možete pokrenuti aplikacije i igre za računare? Onda ste došli na pravo mjesto! U konvencionalnim igrama koristite miš i tastaturu za interakciju s okolinom. Stoga moramo poslati
Ladice za žetvu - NASA prijava na takmičenje Growing Beyond Earth: 5 koraka (sa slikama)
Ladice za žetvu - NASA -ina prijava za takmičenje Uzgajanje izvan Zemlje: Sažetak: Na međunarodnoj svemirskoj stanici astronauti nemaju mnogo prostora za uzgoj hrane. Ovaj hidroponski vrt dizajniran je za učinkovit rad koristeći minimalnu količinu prostora za berbu 30 biljaka prema rotirajućem rasporedu u nultoj gravi
Fpga kontrolisani RC servo motor robot ruka - Digilent takmičenje: 3 koraka
Fpga kontrolisana RC servo motorna ruka robota - Digilent takmičenje: FPGA ruka servo motor robot ruka Cilj ovog projekta je stvaranje programabilnog sistema koji može izvesti operacije lemljenja na perf ploči. Sistem je zasnovan na razvojnoj ploči Digilent Basys3 i bit će sposoban za lemljenje
WALTER (Arduino takmičenje): 5 koraka (sa slikama)
WALTER (Arduino takmičenje): Molim vas glasajte mi za Arduino takmičenje 2017 [izvinite na mom engleskom] Zaista mi se sviđa popularna postavka od 2 servo arduino insekta na youtube-u. Kad sam ga pogledao, uvijek se sjetim šta su roboti iz BEAM-a radili mnogo prije nego što je ta postavka postala omiljena. Ove p