INHOUDSOPGAWE:
- Stap 1: materiaal
- Stap 2: Koppel die 4x4 -klavier
- Stap 3: Gee die broodbord krag en koppel die LCD
- Stap 4: Koppel krag en grond aan op die LCD
- Stap 5: Koppel die potensiometer
- Stap 6: Koppel die Arduino aan die LCD
- Stap 7: Implementeer kode
- Stap 8: Resultaat
Video: Sakrekenaar TinkerCad -wedstryd: 8 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:24
Hey, so onlangs het ek ondersoek hoe ek verskillende soorte kode in 'n stroombaan kan implementeer. Ek het gevind dat die maak van 'n sakrekenaar 'n goeie manier sou wees om 'case' en ander vorme van kode wat ek interessant gevind het, te implementeer. Ek het in die verlede sakrekenaars reguit van die kode gemaak, maar ek het 'n stroombaan daarvoor gemaak. Veral gedurende hierdie tyd van kwarantyn waar ek amper die hele dag op my rekenaar is. Die projek is om wiskundige bewerkings op 'n LCD -skerm te implementeer.
Stap 1: materiaal
Vir stroombaan:
- LCD 16 x 2
- Arduino Uno R3
- Toetsenbord 4x4
- Klein broodbord
- Potensiometer (250 kΩ)
- Weerstand (1kΩ)
- x26 Jumper drade
Stap 2: Koppel die 4x4 -klavier
Verbind die 4 ry-penne op die 4x4-klavier met die Arduino-penne 4-7, en verbind die 4 kolompenne met die Arduino-penne 0-3.
Stap 3: Gee die broodbord krag en koppel die LCD
Ek het 'n kragspanning van 5 vir die broodbord gebruik. Ek het die krag en die grond aan die broodbord gekoppel. Die LCD word op die broodbord geplaas en geplaas sodat al sy penne met die broodbord verbind kan word.
Stap 4: Koppel krag en grond aan op die LCD
Daar sal 3 penne grond nodig wees om aan die LCD gekoppel te word. Die een word gekoppel aan die LCD selfoon, die ander aan die LED van die LCD, en die laaste aan die RW. Die VCC van die LCD en die LED sal krag benodig om aan te sluit. Die krag vir die LED sal egter 'n weerstand benodig, in hierdie geval het ek 'n 1kΩ -weerstand gebruik.
Stap 5: Koppel die potensiometer
Koppel die potensiometer aan die broodbord met 3 gratis kolomme. Dit sal 3 penne hê, die kolom wat die terminale 1 pen bevat, sal grond benodig word. Die kolom wat die terminale 2 -pen bevat, benodig krag. Dan sal die veër 'n jumperdraad in die kolom hê wat aansluit by die VO van die LCD.
Stap 6: Koppel die Arduino aan die LCD
Spelde 8-13 op die Arduino sal aan die LCD gekoppel word. Spelde 8-11 op die Arduino sal onderskeidelik met D8 (7-4) verbind word. Dan sal pen 12 van die Arduino aansluit by die Enable of the LCD, en pen 13 op die Arduino sal aansluit by die register van die LCD.
Stap 7: Implementeer kode
Kode sal nodig wees om wiskundige bewerkings met die bedieningspaneel en LCD te gebruik. Die volgende is die kode wat ek gebruik het, maar ek kan nog steeds verskeie veranderings implementeer om dit skoner en beter te maak. So speel gerus 'n bietjie daarmee.
#include #include
LiquidCrystal lcd (13, 12, 11, 10, 9, 8);
lank eerste = 0;
lang sekonde = 0;
dubbele totaal = 0;
int posit = 0;
char customKey;
const byte RYDE = 4;
const byte COLS = 4;
char sleutels [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};
Toetsenbord customKeypad = Toetsenbord (makeKeymap (sleutels), rowPins, colPins, ROWS, COLS);
ongeldige opstelling () {
lcd.begin (16, 2);
lcd.setCursor (5, 0);
lcd.clear (); }
leemte -lus () {
customKey = customKeypad.getKey ();
skakelaar (customKey) {
geval '0' … '9':
lcd.setCursor (0, 0);
eerste = eerste * 10 + (customKey - '0');
lcd.print (eerste);
posit ++;
breek;
geval '+':
eerste = (totaal! = 0? totaal: eerste);
lcd.setCursor (posit, 0);
lcd.print ("+");
posit ++;
tweede = TweedeNommer ();
totaal = eerste + tweede;
lcd.setCursor (1, 1);
lcd.print (totaal);
eerste = 0, tweede = 0;
posit = 0;
breek;
geval '-':
eerste = (totaal! = 0? totaal: eerste);
lcd.setCursor (posit, 0);
lcd.print ("-");
posit ++;
tweede = TweedeNommer ();
totaal = eerste - tweede;
lcd.setCursor (1, 1);
lcd.print (totaal);
eerste = 0, tweede = 0;
posit = 0;
breek;
geval '*':
eerste = (totaal! = 0? totaal: eerste);
lcd.setCursor (posit, 0);
lcd.print ("*");
posit ++;
tweede = TweedeNommer ();
totaal = eerste * tweede;
lcd.setCursor (1, 1);
lcd.print (totaal);
eerste = 0, tweede = 0;
posit = 0;
breek;
geval '/':
eerste = (totaal! = 0? totaal: eerste);
lcd.setCursor (posit, 0);
lcd.print ("/");
posit ++;
tweede = TweedeNommer (); lcd.setCursor (1, 1);
tweede == 0? lcd.print ("Fout"): totaal = (float) eerste / (float) tweede;
lcd.print (totaal);
eerste = 0, tweede = 0;
posit = 0;
breek;
geval 'C':
totaal = 0;
eerste = 0;
tweede = 0;
posit = 0;
lcd.clear ();
breek; }
}
lang TweedeNommer () {
terwyl (1) {
customKey = customKeypad.getKey ();
if (customKey> = '0' && customKey <= '9') {
tweede = tweede * 10 + (customKey - '0');
lcd.setCursor (posit, 0);
lcd.print (tweede); }
as (customKey == 'C') {
totaal = 0;
eerste = 0;
tweede = 0;
posit = 0;
lcd.clear ();
breek; }
as (customKey == '=') {
lcd.setCursor (0, 1);
lcd.print ("=");
posit = totaal;
lcd.clear ();
lcd.setCursor (0, 1);
lcd.print ("=");
breek; }
}
keer tweede;}
Stap 8: Resultaat
Ek hoop dat julle almal hierdie leersame geniet het. Dankie dat u gelees het!
Saim.
Aanbeveel:
Sakrekenaar vir bankrekeninge: 18 stappe
Bankrekening Spaarrekenaar: Dankie dat u my spaarrekenaar gekies het. Vandag leer ons hoe u 'n BankAccount -klas kan programmeer om u persoonlike uitgawes en besparings by te hou. Om 'n bankrekening te maak om u uitgawes na te gaan, benodig u eers 'n basiese
Bluetooth50g - 'n Upcycle -projek vir 'n gebreekte HP50G -sakrekenaar: 7 stappe
Bluetooth50g - 'n Upcycle -projek vir 'n gebroke HP50G -sakrekenaar.: Die geleidingspaaie na die skerm word gebreek as gevolg van die lekkasie van die battery. Die sakrekenaar werk op sigself, maar die resultate word nie op die skerm getoon nie (slegs vertikale lyne). Die stelsel emuleer 'n bluetooth -sleutelbord en
Verander-'n-HP49G-grafiese-sakrekenaar-in-'n-intervalomet vir Canon Eos: 4 stappe
Verander 'n HP49G-grafiese sakrekenaar in 'n interval vir Canon Eos: Disparador autom à ƒ  ¡ tico y handleiding vir Canon Eos met HP49GPor Abraham [email protected]: //www.flickr.com /foto's/cacholongo/Componentes necesarios: 2n3904, Resistencia 2,2k; Diodo 1n4001, Cable de conexi à ƒ  & su
Kortpaaie vir sakrekenaar !!: 4 stappe
Sleutelbordkortpaaie vir sakrekenaar !!: Hierdie instruksie sal u 'n paar nuttige kortpaaie vir die sakrekenaar wys. Teken asseblief in op my kanaal Dankie
Nextion/Arduino Sakrekenaar: 3 stappe
Nextion/Arduino Sakrekenaar: 'n Nuttige sakrekenaar vir die Arduino Uno. Die sakrekenaar is soortgelyk aan die standaardrekenaar wat saam met Windows 10. Opmerking: dit bevat nie die wetenskaplike en programmeerderfunksies wat die Windows 10 -sakrekenaar doen nie, maar hierdie funksies