
Sisällysluettelo:
2025 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2025-01-23 14:41

Hei kaverit tässä ohjeessa, teemme laskimen Arduinolla, joka voi tehdä peruslaskelmia. Joten periaatteessa otamme syötteet 4x4 -näppäimistöltä ja tulostamme tiedot 16x2 lcd -näyttöön ja arduino tekee laskelmat.
Vaihe 1: Tarvitsemasi asiat




Tätä ohjetta varten tarvitsemme seuraavia asioita: Arduino Uno (mikä tahansa versio toimii)
16 × 2 LCD -näyttö
4 × 4 Näppäimistö 9 V Akku Leipälevy Johtojen liittäminen
Vaihe 2: Liitännät


Tämän Arduino -laskinprojektin täydellinen piirikaavio on esitetty edellä. Kytkentäkaaviossa näkyvä +5V ja maadoitus voidaan saada Arduinon 5V ja maadoitusliittimestä. Arduinoa voidaan käyttää kannettavasta tietokoneesta tai DC-liittimestä 12 V: n sovittimen tai 9 V: n akun avulla. Käytämme LCD-näyttöä 4-bittisessä tilassa Arduinon kanssa, joten vain nestekidenäytön neljä viimeistä databittiä on kytketty Arduinoon. Näppäimistössä on 8 ulostulonappia, jotka on liitettävä nastasta 0 nastaan 7, kuten yllä on esitetty. näppäimistöä ohjelman lataamisen aikana.
Vaihe 3: Koodi

Kopioi seuraava koodi ja lataa siihen arduinoosi:/ * * Arduino -näppäimistölaskinohjelma */#sisältää "LiquidCrystal.h" // LCD -otsikkotiedoston osoitteesta https://www.arduino.cc/en/Reference/LiquidCrystal# sisälly "Keypad.h" // Näppäimistön otsikkotiedosto osoitteesta https://github.com/Chris--A/Keypadconst byte ROWS = 4; // Neljä riviriviä tavu COLS = 4; // Kolme saraketta // Määritä avainnumeronäppäimet [RIVIT] [COLS] = {{'7', '8', '9', 'D'}, {'4', '5', '6', ' C '}, {' 1 ',' 2 ',' 3 ',' B '}, {'*',' 0 ','#',' A '}}; tavu rowPins [ROWS] = {0, 1, 2, 3}; // Liitä näppäimistö ROW0, ROW1, ROW2 ja ROW3 näihin Arduino -nastoihin. Tavua colPins [COLS] = {4, 5, 6, 7}; // Kytke näppäimistö COL0, COL1 ja COL2 näihin Arduino -nastoihin. // Luo näppäimistökonst. Int rs = 8, en = 9, d4 = 10, d5 = 11, d6 = 12, d7 = 13; // Nastat, joihin LCD on liitetty LiquidCrystal lcd (rs, en, d4, d5, d6, d7); pitkä Num1, Num2, Number; char -näppäin, toiminta; boolen tulos = false; void setup () {lcd.begin (16, 2); // Käytämme 16*2 LCD -näyttöä lcd.print ("DIY Calculator"); // Näytä intro -viesti lcd.setCursor (0, 1); // aseta kohdistin sarakkeeseen 0, rivin 1 viive (2000); // Odota, kunnes näytössä näkyy tiedot lcd.clear (); // Puhdista sitten} void loop () {key = kpd.getKey (); // painetun näppäimen arvon tallentaminen charifiin (avain! = NO_KEY) DetectButtons (); if (result == true) CalculateResult (); DisplayResult (); } mitätön DetectButtons () {lcd.clear (); // Puhdista se, jos (key == '*') // Jos peruutuspainiketta painetaan {Serial.println ("Button Cancel"); Luku = Num1 = Num2 = 0; result = false;} if (key == '1') // Jos painiketta 1 painetaan {Serial.println ("Button 1"); jos (luku == 0) luku = 1; else Luku = (luku*10) + 1; // Painamalla kahdesti} if (key == '4') // Jos painiketta 4 painetaan {Serial.println ("Button 4"); jos (luku == 0) luku = 4; else Luku = (luku*10) + 4; // Painamalla kahdesti} if (key == '7') // Jos painiketta 7 painetaan {Serial.println ("Button 7"); jos (luku == 0) luku = 7; else Luku = (luku*10) + 7; // Painamalla kahdesti} if (key == '0') {Serial.println ("Button 0"); // Painiketta 0 painetaan, jos (luku == 0) numero = 0; else Luku = (luku*10) + 0; // Painamalla kahdesti} if (key == '2') // Painike 2 on painettu {Serial.println ("Button 2"); jos (luku == 0) luku = 2; else Luku = (luku*10) + 2; // Painamalla kahdesti} if (key == '5') {Serial.println ("Button 5"); jos (luku == 0) luku = 5; muu Luku = (luku*10) + 5; // Painamalla kahdesti} if (key == '8') {Serial.println ("Button 8"); jos (luku == 0) luku = 8; muu Luku = (luku*10) + 8; // Painamalla kahdesti} if (key == '#') {Serial.println ("Button Equal"); Num2 = luku; tulos = totta; } if (key == '3') {Serial.println ("Button 3"); jos (luku == 0) luku = 3; else Luku = (luku*10) + 3; // Painamalla kahdesti} if (key == '6') {Serial.println ("Button 6"); jos (luku == 0) luku = 6; muu Luku = (luku*10) + 6; // Painamalla kahdesti} if (key == '9') {Serial.println ("Button 9"); jos (luku == 0) luku = 9; muu Luku = (luku*10) + 9; // Painamalla kahdesti} if (näppäin == 'A' || näppäin == 'B' || näppäin == 'C' || näppäin == 'D') // Tunnistuspainikkeet sarakkeessa 4 {Num1 = luku; Luku = 0; if (key == 'A') {Serial.println ("Lisäys"); action = '+';} if (key == 'B') {Serial.println ("Vähennys"); toiminta = '-'; } if (key == 'C') {Serial.println ("Kertolasku"); action = '*';} if (key == 'D') {Serial.println ("Devesion"); action = '/';} viive (100); }}
mitätön CalculateResult () {if (action == '+') Number = Num1+Num2; jos (toiminta == '-') Luku = Num1-Num2; if (toiminta == '*') Luku = Num1*Num2; jos (toiminta == '/') Luku = Num1/Num2; } mitätön DisplayResult () {lcd.setCursor (0, 0); // aseta kohdistin sarakkeeseen 0, rivi 1 lcd.print (Num1); lcd.print (toiminta); lcd.print (Num2); jos (tulos == tosi) {lcd.print ("="); lcd.print (luku);} // Näytä tulos lcd.setCursor (0, 1); // aseta kohdistin sarakkeeseen 0, rivi 1 lcd.print (Number); // Näytä tulos}
Vaihe 4: Laskimen lähtö



Joten valmistimme yhteydet ja latasimme koodin arduinoon ja sen aika kytkeä virta ja tehdä joitain laskelmia ja kuten näet, teen laskelmia näppäimistöllä ja näet tulokset LCD -näytöllä. Joten pidä hauskaa tehdä oma DIY -laskin käyttämällä arduinoa.
Suositeltava:
Hallitse talon valoja Google Assistantin avulla Arduinon avulla: 7 vaihetta

Hallitse talon valoja Google Assistantin avulla Arduinon avulla: (Päivitys 22.8.2020: Tämä ohje on 2 vuotta vanha ja perustuu joihinkin kolmansien osapuolien sovelluksiin. Kaikki heidän puolellaan tehdyt muutokset saattavat tehdä projektista toimimattoman. Se voi olla tai ei työskentele nyt, mutta voit seurata sitä viitteenä ja muokata sen mukaan
Useiden ESP-keskustelujen tekeminen ESP-NOW: n avulla ESP32: n ja ESP8266: n avulla: 8 vaihetta

Useiden ESP-keskustelujen tekeminen ESP-NYT: n avulla ESP32: n ja ESP8266: n avulla: Käynnissä olevassa projektissani tarvitsen useita ESP: itä puhuakseni keskenään ilman reititintä. Tätä varten käytän ESP-NOW-ohjelmaa langattoman viestinnän tekemiseen keskenään ilman ESP: n reititintä
4X4 LED MATRIX 74hc595 IC: n avulla: 7 vaihetta

4X4 LED MATRIX käyttäen 74hc595 IC: tä
Arduino LCD 16x2 -opetusohjelma - Liitäntä 1602 LCD -näyttö Arduino Unolla: 5 vaihetta

Arduino LCD 16x2 -opetusohjelma | Liitäntä 1602 LCD -näyttö Arduino Unon kanssa: Hei kaverit, koska monet projektit tarvitsevat näytön tietojen näyttämiseen, olipa kyseessä jokin diy -mittari tai YouTube -tilauslaskimen näyttö tai laskin tai näppäimistön lukitus näytöllä ja jos kaikenlaisia projekteja tehdään arduino he määrittelevät
4x4 matriisikalvonäppäimistö Arduino Nanon avulla: 4 vaihetta

4x4 Matrix Membrane -näppäimistö Arduino Nanon avulla: 4x4 Matrix Membrane -näppäimistö on näppäimistömoduuli, jota käytetään usein Arduino -projektien tekemiseen, kuten laskimiin, salasanan syöttöön ja muihin. Tärkeimmät tiedot: Maxi