
Sisukord:
2025 Autor: John Day | [email protected]. Viimati modifitseeritud: 2025-01-23 14:40

Hei, nii hiljuti uurisin, kuidas erinevat tüüpi koodi ahelasse rakendada. Leidsin, et kalkulaatori valmistamine oleks suurepärane võimalus rakendada "juhtumit" ja muid minu jaoks huvitavaid koodivorme. Olen varem teinud kalkulaatoreid otse koodist, kuid selle jaoks skeemi tegemine tekitas huvi. Eriti praegusel karantiiniajal, kus olen peaaegu terve päeva arvutis. Projekt seisneb matemaatiliste toimingute teostamises LCD -ekraanil.
Samm: materjalid
Ahela jaoks:
- LCD 16 x 2
- Arduino Uno R3
- Klaviatuur 4x4
- Väike leivalaud
- Potentsiomeeter (250 kΩ)
- Takisti (1 kΩ)
- x26 Jumper juhtmed
2. samm: 4x4 klaviatuuri ühendamine

Ühendage 4x4 klahvistiku 4 rea nööpnõelad Arduino tihvtidega 4-7 ja 4 veergunööpi Arduino tihvtidega 0-3.
3. toiming: andke leivalauale toide ja ühendage LCD -ekraan

Leivaplaadi jaoks kasutasin toitepinget 5. Ühendasin toite ja maa leivaplaadiga. LCD -ekraan asetatakse leivaplaadile ja asetatakse nii, et kõik selle tihvtid ühendatakse leivaplaadiga.
Samm: ühendage toide ja maandus LCD -ekraaniga

LCD -ekraaniga ühendamiseks on vaja 3 tihvti maad. Üks neist ühendatakse maapinnaga LCD -ekraaniga, teine ühendatakse LCD -LED -iga ja viimane ühendatakse RW -ga. LCD -ekraani ja LED -i VCC ühendamiseks on vaja toiteallikat. Kuid LED -i toide nõuab sel juhul ühendatud takistit, ma kasutasin 1 kΩ takisti.
Samm: ühendage potentsiomeeter

Ühendage potentsiomeeter 3 vaba veeruga leivaplaadiga. Sellel on 3 tihvti, veerg, mis sisaldab terminali 1 tihvti, tuleb sellele maandada. Veerg, mis sisaldab terminali 2 tihvti, vajab selle jaoks energiat. Seejärel on klaasipuhasti veerus hüppaja, mis ühendub vedelkristallekraani VO -ga.
Samm: ühendage Arduino LCD -ekraaniga

Arduino tihvtid 8-13 ühendatakse LCD-ekraaniga. Arduino tihvtid 8-11 ühendavad vastavalt D8-ga (7-4). Seejärel ühendatakse Arduino tihvt 12 LCD -seadme lubamisega ja Arduino tihvt 13 ühendatakse LCD -registriga.
Samm: rakendage kood
Klaviatuuri ja LCD -ga matemaatiliste toimingute kasutamiseks on vaja koodi. Järgnev on kood, mida ma kasutasin, kuid mitu muudatust saab siiski rakendada, et muuta see puhtamaks ja paremaks. Nii et mängige sellega julgelt natuke.
#kaasama #kaasama
LiquidCrystal LCD (13, 12, 11, 10, 9, 8);
pikk esimene = 0;
pikk sekund = 0;
kahekordne kogusumma = 0;
int posit = 0;
char customKey;
const bait RIDA = 4;
const bait COLS = 4;
sümboliklahvid [ROWS] [COLS] = {
{'1', '2', '3', '/'}, {'4', '5', '6', '*'}, {'7', '8', '9', '-'}, {'C', '0', '=', '+'}};
bait rowPins [ROWS] = {7, 6, 5, 4};
bait colPins [COLS] = {3, 2, 1, 0};
Klahvistik customKlaviatuur = Klaviatuur (makeKeymap (võtmed), rowPins, colPins, ROWS, COLS);
tühine seadistus () {
lcd.algus (16, 2);
lcd.setCursor (5, 0);
lcd.clear (); }
void loop () {
customKey = customKeypad.getKey ();
lüliti (customKey) {
juhtum „0”… „9”:
lcd.setCursor (0, 0);
esimene = esimene * 10 + (customKey - '0');
lcd.print (esimene);
positiivne ++;
murda;
juhtum "+":
esimene = (kokku! = 0? kokku: esimene);
lcd.setCursor (posit, 0);
lcd.print ("+");
positiivne ++;
teine = teine arv ();
kokku = esimene + teine;
lcd.setCursor (1, 1);
lcd.print (kokku);
esimene = 0, teine = 0;
posit = 0;
murda;
juhtum '-':
esimene = (kokku! = 0? kokku: esimene);
lcd.setCursor (posit, 0);
lcd.print ("-");
positiivne ++;
teine = teine arv ();
kokku = esimene - teine;
lcd.setCursor (1, 1);
lcd.print (kokku);
esimene = 0, teine = 0;
posit = 0;
murda;
juhtum '*':
esimene = (kokku! = 0? kokku: esimene);
lcd.setCursor (posit, 0);
lcd.print ("*");
positiivne ++;
teine = teine arv ();
kokku = esimene * teine;
lcd.setCursor (1, 1);
lcd.print (kokku);
esimene = 0, teine = 0;
posit = 0;
murda;
juhtum '/':
esimene = (kokku! = 0? kokku: esimene);
lcd.setCursor (posit, 0);
lcd.print ("/");
positiivne ++;
teine = teine arv (); lcd.setCursor (1, 1);
teine == 0? lcd.print ("Viga"): kokku = (float) esimene / (float) teine;
lcd.print (kokku);
esimene = 0, teine = 0;
posit = 0;
murda;
juhtum „C”:
kokku = 0;
esimene = 0;
teine = 0;
posit = 0;
lcd.clear ();
murda; }
}
pikk SecondNumber () {
samas (1) {
customKey = customKeypad.getKey ();
if (customKey> = '0' && customKey <= '9') {
teine = teine * 10 + (customKey - '0');
lcd.setCursor (posit, 0);
lcd.print (teine); }
if (customKey == 'C') {
kokku = 0;
esimene = 0;
teine = 0;
posit = 0;
lcd.clear ();
murda; }
if (customKey == '=') {
lcd.setCursor (0, 1);
lcd.print ("=");
posit = kokku;
lcd.clear ();
lcd.setCursor (0, 1);
lcd.print ("=");
murda; }
}
tagasitulek teine;}
8. samm: tulemus


Loodan, et teile kõigile meeldis see juhend. Täname lugemise eest!
Saim.
Soovitan:
3D trükitud kaamera kimp (Tinkercadi võistlus): 6 sammu

3D -trükitud kaamera kimp (Tinkercadi võistlus): Tere, see on kaamera kardaan, mille kujundasin Tinkercadis. Peamine kardaan on valmistatud sellest purgi käepidemest ja viie rõngaga kardaanist / güroskoopist, mida ma enam ei leia. Tinkercadi disaini leiate siit. See oli loodud töötama võimude kallal
Joonistusrobot Adafruit Shieldiga (võistlus "Tee liikuma"): 10 sammu (piltidega)

Joonistusrobot Adafruit Shieldiga (Make It Move Contest): Tere, mu nimed Jacob ja ma elan Ühendkuningriigis. Selles projektis kavatsen ehitada roboti, mis teile joonistab. *Olen kindel, et paljud teist tahavad seda näha, nii et kui soovite teada, siis minge otse teise ja viimase sammu juurde, kuid tulge kindlasti siia tagasi, et näha
DIY VR jooksulint- Basys3 FPGA-Digilent võistlus: 3 sammu

DIY VR jooksulint- Basys3 FPGA-Digilent Contest: Kas soovite ehitada VR-jooksulindi, millel saate oma töölauarakendusi ja mänge käivitada? Siis olete jõudnud õigesse kohta! Tavamängudes kasutate keskkonnaga suhtlemiseks hiirt ja klaviatuuri. Seetõttu peame saatma
Fpga juhitav RC servomootoriga robotkäsi - Digilentide võistlus: 3 sammu

Fpga juhitav RC servomootori robotkäepide - Digilent Contest: FPGA juhitav servomootoriga robotkäepide Selle projekti eesmärk on luua programmeeritav süsteem, mis võimaldab jootmistööd plaadil. Süsteem põhineb Digilent Basys3 arendusplaadil ja see on võimeline ühisjootma
WALTER (Arduino võistlus): 5 sammu (koos piltidega)

WALTER (Arduino võistlus): Pls Hääletage mind Arduino Contest 2017 jaoks [Palun vabandage minu inglise keelt] Mulle meeldib väga YouTube'is populaarne 2 servos arduino putuka ülesehitus. Kui ma seda vaatasin, mäletan alati, mida BEAM-i robotipoisid tegid ammu enne, kui see ülesehitus lemmikuks sai. Need p