
Obsah:
2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-23 15:05

Hej, nedávno som skúmal, ako implementovať rôzne typy kódu do obvodu. Zistil som, že vytvorenie kalkulačky by bolo skvelým spôsobom, ako implementovať „prípad“a iné formy kódu, ktoré ma zaujali. V minulosti som vyrábal kalkulačky priamo z kódu, ale vytvoriť pre ne obvod ma zaujalo. Zvlášť v tomto období karantény, kde som takmer celý deň na počítači. Cieľom projektu je implementácia matematických operácií na obrazovke LCD.
Krok 1: Materiály
Pre obvod:
- LCD 16 x 2
- Arduino Uno R3
- Klávesnica 4x4
- Malý Breadboard
- Potenciometer (250 kΩ)
- Odpor (1kΩ)
- x26 prepojovacie vodiče
Krok 2: Pripojenie klávesnice 4x4

Pripojte 4 radové kolíky na klávesnici 4x4 k pinom Arduino 4-7 a 4 stĺpcové kolíky k kolíkom Arduino 0-3.
Krok 3: Zabezpečte napájanie Breadboardu a pripojte LCD displej

Na dosku na chlieb som použil napájacie napätie 5. Pripojil som napájanie a zem k doske na chlieb. LCD je umiestnený na doske a je umiestnený tak, aby sa všetky jeho kolíky spojili s doskou.
Krok 4: Pripojte napájanie a uzemnenie k LCD

Na pripojenie LCD budú potrebné 3 kolíky uzemnenia. Jeden bude spojený so zemou, samotný LCD, druhý bude spojený s LED na LCD a posledný bude spojený s RW. VCC LCD a diódy LED vyžadujú pripojenie. Napájanie LED však bude vyžadovať zapojený odpor. V tomto prípade som použil odpor 1 kΩ.
Krok 5: Pripojenie potenciometra

Pripojte potenciometer k breadboardu pomocou 3 voľných stĺpcov. Bude mať 3 piny, stĺpec, ktorý obsahuje pól terminálu 1, bude potrebovať uzemnenie. Stĺpec, ktorý obsahuje pól 2 svorky, bude potrebovať príslušnú energiu. Potom bude mať stierač v stĺpci prepojovací vodič, ktorý sa pripája k VO LCD.
Krok 6: Pripojenie Arduina k LCD

Piny 8-13 na Arduine budú prepojené s LCD. Piny 8-11 na Arduine sa pripoja k D8 (7-4) resp. Potom sa pin 12 Arduina spojí s aktiváciou LCD a pin 13 na Arduine sa spojí s registrom LCD.
Krok 7: Implementujte kód
Na používanie matematických operácií s klávesnicou a LCD displejom bude potrebný kód. Kód, ktorý som použil, bude nasledujúci, ale stále môžem implementovať niekoľko zmien, aby bol čistejší a lepší. Neváhajte sa s tým teda trochu pohrať.
#include #include
LiquidCrystal lcd (13, 12, 11, 10, 9, 8);
dlhý prvý = 0;
dlhá sekunda = 0;
dvojitý súčet = 0;
int pozit = 0;
char customKey;
konštantný bajt ROWS = 4;
konštantný bajt COLS = 4;
kľúče znakov [ROWS] [COLS] = {
{'1', '2', '3', '/'}, {'4', '5', '6', '*'}, {'7', '8', '9', '-'}, {'C', '0', '=', '+'}};
bajtové riadky [ROWS] = {7, 6, 5, 4};
byte colPins [COLS] = {3, 2, 1, 0};
Keypad customKeypad = Keypad (makeKeymap (klávesy), rowPins, colPins, ROWS, COLS);
neplatné nastavenie () {
lcd.begin (16, 2);
lcd.setCursor (5, 0);
lcd.clear (); }
prázdna slučka () {
customKey = customKeypad.getKey ();
prepínač (customKey) {
prípad „0“… „9“:
lcd.setCursor (0, 0);
first = first * 10 + (customKey - '0');
lcd.print (prvý);
klad ++;
prestávka;
prípad „+“:
first = (total! = 0? total: first);
lcd.setCursor (predpoklad, 0);
lcd.print ("+");
klad ++;
sekunda = DruhéČíslo ();
celkom = prvý + druhý;
lcd.setCursor (1, 1);
lcd.print (celkom);
prvý = 0, sekunda = 0;
predpoklad = 0;
prestávka;
prípad '-':
first = (total! = 0? total: first);
lcd.setCursor (predpoklad, 0);
lcd.print ("-");
klad ++;
sekunda = DruhéČíslo ();
celkom = prvý - druhý;
lcd.setCursor (1, 1);
lcd.print (celkom);
prvý = 0, sekunda = 0;
predpoklad = 0;
prestávka;
prípad '*':
first = (total! = 0? total: first);
lcd.setCursor (predpoklad, 0);
lcd.print ("*");
klad ++;
sekunda = DruhéČíslo ();
celkom = prvý * druhý;
lcd.setCursor (1, 1);
lcd.print (celkom);
prvý = 0, sekunda = 0;
predpoklad = 0;
prestávka;
prípad '/':
first = (total! = 0? total: first);
lcd.setCursor (predpoklad, 0);
lcd.print ("/");
klad ++;
sekunda = DruhéČíslo (); lcd.setCursor (1, 1);
druhý == 0? lcd.print ("Chyba"): celkom = (float) prvý / (float) druhý;
lcd.print (celkom);
prvý = 0, sekunda = 0;
predpoklad = 0;
prestávka;
prípad „C“:
celkom = 0;
prvý = 0;
sekunda = 0;
predpoklad = 0;
lcd.clear ();
prestávka; }
}
dlhé druhé číslo () {
pričom (1) {
customKey = customKeypad.getKey ();
if (customKey> = '0' && customKey <= '9') {
sekunda = sekunda * 10 + (customKey - '0');
lcd.setCursor (predpoklad, 0);
lcd.print (druhý); }
if (customKey == 'C') {
celkom = 0;
prvý = 0;
sekunda = 0;
predpoklad = 0;
lcd.clear ();
prestávka; }
if (customKey == '=') {
lcd.setCursor (0, 1);
lcd.print ("=");
posit = celkom;
lcd.clear ();
lcd.setCursor (0, 1);
lcd.print ("=");
prestávka; }
}
vráť sa druhý;}
Krok 8: Výsledok


Dúfam, že sa vám tento návod páčil. Ďakujem za čítanie!
Saim.
Odporúča:
Gimbal s 3D tlačenou kamerou (súťaž Tinkercad): 6 krokov

Gimbal s 3D tlačenou kamerou (súťaž Tinkercad): Dobrý deň, toto je kardanový kardan, ktorý som navrhol v Tinkercad. Hlavný kardan bol vyrobený z rukoväte This Jar Handle a päťkrúžkového kardanu / gyroskopu, ktoré už nemôžem nájsť. Dizajn Tinkercad nájdete tu. Toto bolo navrhnuté tak, aby fungovalo na Powers
Robot na kreslenie so štítom Adafruit (súťaž Make It Move): 10 krokov (s obrázkami)

Kresliaci robot s Adafruitovým štítom (súťaž Make It Move): Dobrý deň, volám sa Jacob a ja žijem vo Veľkej Británii. V tomto projekte sa chystám postaviť robota, ktorý vás nakreslí. *Som si istý, že to mnohí z vás chcú vidieť, takže ak to chcete vedieť, preskočte priamo na druhý až posledný krok, ale vráťte sa sem a uvidíte
WALTER (súťaž Arduino): 5 krokov (s obrázkami)

WALTER (Súťaž Arduino): Pls Hlasujte za mňa v súťaži Arduino Contest 2017 [Ospravedlňte moju angličtinu] Veľmi sa mi páči populárna zostava 2 servos arduino hmyzu na youtube. Keď som sa na to pozrel, vždy si pamätám, čo roboti z BEAM robili dlho predtým, ako sa táto zostava stala obľúbenou. Tieto p
Mash Up a LED súťaž: Svietidlo na dávkovač Pez: 5 krokov

Mash Up a LED súťaž: Svietidlo na dávkovanie pezu: Toto je baterka na dávkovanie pezu. Nie je veľmi svetlý, ale je dostatočne jasný na to, aby ste v ňom našli kľúče, kľučky dverí atď
Modul USB zapaľovača Zippo s USB kľúčom (vrecková súťaž! HLASUJTE ZA MNE!): 7 krokov

Modul USB zapaľovača Zippo na zapaľovanie (súťaž vo vreckovom formáte! HLASUJTE ZA MNE!): Ste unavení z toho nudne vyzerajúceho USB disku? Okoreňte to týmto zapaľovacím modom Zippo