Sadržaj:
- Korak 1: Materijali
- Korak 2: Spajanje 4x4 tipkovnice
- Korak 3: Omogućite napajanje tiskanoj ploči i povežite LCD
- Korak 4: Spojite napajanje i uzemljenje na LCD
- Korak 5: Spajanje potenciometra
- Korak 6: Spajanje Arduina na LCD
- Korak 7: Implementirajte kôd
- Korak 8: Rezultat
Video: Kalkulator TinkerCad natjecanje: 8 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:33
Hej, tako sam nedavno istraživao kako implementirati različite vrste koda u krug. Otkrio sam da bi izrada kalkulatora bila izvrstan način za implementaciju "case" i drugih oblika koda koji su mi bili zanimljivi. Ranije sam izrađivao kalkulatore izravno iz koda, ali zanimljivost mi je stvorila sklop za to. Pogotovo u ovo vrijeme karantene gdje sam gotovo cijeli dan na računalu. Projekt je za provedbu matematičkih operacija na LCD zaslonu.
Korak 1: Materijali
Za krug:
- LCD 16 x 2
- Arduino Uno R3
- Tipkovnica 4x4
- Mali Breadboard
- Potenciometar (250 kΩ)
- Otpornik (1 kΩ)
- x26 Žice za kratkospojnike
Korak 2: Spajanje 4x4 tipkovnice
Spojite pinove od 4 reda na tipkovnici 4x4 na Arduino pinove 4-7 i spojite pinove s 4 stupca na Arduino pinove 0-3.
Korak 3: Omogućite napajanje tiskanoj ploči i povežite LCD
Koristio sam napon snage 5 za ploču. Priključio sam napajanje i masu na ploču. LCD se postavlja na matičnu ploču i postavlja tako da se svi njegovi pinovi spoje na matičnu ploču.
Korak 4: Spojite napajanje i uzemljenje na LCD
Za spajanje na LCD bit će potrebna 3 pina uzemljenja. Jedan će biti spojen na uzemljenje LCD -a, drugi će biti spojen na LED diodu LCD -a, a posljednji će biti spojen na RW. VCC na LCD -u i LED diodi zahtijevaju spajanje napajanja. Međutim, za napajanje LED -a bit će potreban priključeni otpornik. U ovom sam slučaju koristio otpornik od 1 kΩ.
Korak 5: Spajanje potenciometra
Spojite potenciometar na ploču s 3 slobodna stupca. Imat će 3 pina, stupcu koji sadrži priključak 1 pina trebat će mu uzemljenje. Stupcu koji sadrži priključak 2 kontakta potrebno je napajanje. Tada će brisač u svom stupcu imati kratkospojnu žicu koja se spaja na 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). Zatim će se pin 12 Arduina spojiti s Enable -om LCD -a, a pin 13 na Arduinu će se spojiti na registar LCD -a.
Korak 7: Implementirajte kôd
Kod će biti potreban za korištenje matematičkih operacija s tipkovnicom i LCD -om. Sljedeći će biti kôd koji sam koristio, međutim više se promjena ipak može implementirati kako bi bilo čišće i bolje. Zato se slobodno poigrajte s tim malo.
#include #include
LCD tekući kristal (13, 12, 11, 10, 9, 8);
dugo prvo = 0;
duga sekunda = 0;
dvostruko ukupno = 0;
int pozit = 0;
char customKey;
const byte ROWS = 4;
const bajt COLS = 4;
ključevi char [ROWS] [COLS] = {
{'1', '2', '3', '/'}, {'4', '5', '6', '*'}, {'7', '8', '9', '-'}, {'C', '0', '=', '+'}};
byte rowPins [ROWS] = {7, 6, 5, 4};
bajt colPins [COLS] = {3, 2, 1, 0};
Tipkovnica customKeypad = Tipkovnica (makeKeymap (tipke), 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);
prvi = prvi * 10 + (customKey - '0');
lcd.print (prvi);
pozit ++;
pauza;
slučaj '+':
prvi = (ukupno! = 0? ukupno: prvo);
lcd.setCursor (pozicija, 0);
lcd.print ("+");
pozit ++;
second = Drugi broj ();
ukupno = prvi + drugi;
lcd.setCursor (1, 1);
lcd.tisak (ukupno);
prvi = 0, drugi = 0;
pozit = 0;
pauza;
slučaj '-':
prvi = (ukupno! = 0? ukupno: prvo);
lcd.setCursor (pozicija, 0);
lcd.print ("-");
pozit ++;
second = Drugi broj ();
ukupno = prvi - drugi;
lcd.setCursor (1, 1);
lcd.tisak (ukupno);
prvi = 0, drugi = 0;
pozit = 0;
pauza;
slučaj '*':
prvi = (ukupno! = 0? ukupno: prvo);
lcd.setCursor (pozicija, 0);
lcd.print ("*");
pozit ++;
second = Drugi broj ();
ukupno = prva * druga;
lcd.setCursor (1, 1);
lcd.tisak (ukupno);
prvi = 0, drugi = 0;
pozit = 0;
pauza;
slučaj '/':
prvi = (ukupno! = 0? ukupno: prvo);
lcd.setCursor (pozicija, 0);
lcd.print ("/");
pozit ++;
second = Drugi broj (); lcd.setCursor (1, 1);
drugi == 0? lcd.print ("Greška"): ukupno = prvo (float) prvo / (float) drugo;
lcd.tisak (ukupno);
prvi = 0, drugi = 0;
pozit = 0;
pauza;
slučaj 'C':
ukupno = 0;
prvi = 0;
drugi = 0;
pozit = 0;
lcd.clear ();
pauza; }
}
long SecondNumber () {
dok (1) {
customKey = customKeypad.getKey ();
if (customKey> = '0' && customKey <= '9') {
drugi = drugi * 10 + (customKey - '0');
lcd.setCursor (pozicija, 0);
lcd.print (drugi); }
if (customKey == 'C') {
ukupno = 0;
prvi = 0;
drugi = 0;
pozit = 0;
lcd.clear ();
pauza; }
if (customKey == '=') {
lcd.setCursor (0, 1);
lcd.print ("=");
pozit = ukupno;
lcd.clear ();
lcd.setCursor (0, 1);
lcd.print ("=");
pauza; }
}
povratak drugi;}
Korak 8: Rezultat
Nadam se da ste svi uživali u ovom uputstvu. Hvala na čitanju!
Saim.
Preporučeni:
Gimbal kamere s 3D ispisom (Tinkercad natjecanje): 6 koraka
Gimbal za 3D ispisanu kameru (Tinkercad natjecanje): Zdravo, Ovo je gimbal kamere koji sam dizajnirao u Tinkercadu. Glavni gimbal napravljen je od ove ručke za staklenku 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 natjecanje: 3 koraka
DIY VR traka za trčanje- Basys3 FPGA-Digilent natjecanje: Želite li izgraditi VR traku za trčanje na kojoj možete pokrenuti svoje aplikacije i igre za stolna računala? Onda ste došli na pravo mjesto! U konvencionalnim igrama za interakciju s okolinom koristite miš i tipkovnicu. Stoga moramo poslati
Ruka robota s servo motorima s upravljanjem Fpga - Digilent natjecanje: 3 koraka
Ruka robota s servo motorima s upravljanjem Fpga - Digilent natjecanje: ruka robota sa servo motorom s upravljanjem FPGA -a Cilj ovog projekta je stvoriti programabilni sustav koji može izvesti operacije lemljenja na perf ploči. Sustav se temelji na razvojnoj ploči Digilent Basys3 i moći će lemiti zajedno
WALTER (Arduino natjecanje): 5 koraka (sa slikama)
WALTER (Arduino natjecanje): Molim vas glasajte mi za Arduino natjecanje 2017. [Molim, oprostite na mom engleskom] Jako mi se sviđa popularna postavka od 2 servos arduino insekata na youtubeu. Kad sam ga pogledao, uvijek se sjetim što su momci iz BEAM robota učinili mnogo prije nego što je ta postava postala omiljena. Ove p
Mash Up i LED natjecanje: Pez svjetiljka s dispenzerom: 5 koraka
Mash Up i LED natjecanje: Pez svjetiljka za raspršivač: Ovo je džepna svjetiljka za dispenzer. Nije jako svijetla, ali je dovoljno svijetla da pronađe ključeve, kvake na vratima itd