Tartalomjegyzék:
Videó: Egyszerű, praktikus Arduino stopper: 4 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:43
Keressen a weben az Arduino stopperóra. Valószínűleg csak akkor tetted, ha itt vagy. Személyes tapasztalatból elmondhatom, hogy az interneten található bármely stopper túl bonyolult (kódban, kezdőknek), vagy túl leegyszerűsített és nem praktikus, mint azok, amelyek csak másodperceket számolnak visszaállítás nélkül.
Te is így gondolod, mi? Hát találd ki mit. Megtettem, és mi több, közvetlenül a millis () függvényből veszem az inputomat- a számok végtelen sora (49 napig, vagy bármi más). A legjobb rész? Ez csak egy sor.
Az alaphelyzetbe állítás a stopper tényleges kemény része. Középhaladó, programozók számára, ha még nem tette meg, menjen előre, és próbálja meg ezt megtenni, másodpercekkel, percekkel és órákkal együtt. Megérted, amiről beszélek.
Kezdőknek olvassanak tovább, és élvezzék elmém zsenialitását.
Csak viccelek, de a megoldás, amit találtam, elég ügyes. Íme, mi ez:
1. lépés: A megoldás
Tehát a probléma az alaphelyzetbe állítás. Folyamatos, ismétlődő számciklusra vágyunk, a sorozatos számok végtelen kimenetéből (millis () - alapvetően ezredmásodperceket számol, vagy valójában 1,024 ezredmásodpercet, de mindegy).
Az első dolog, ami eszünkbe jut, a különbség használata, például az idő1 -idő2 és a késleltetés. Felejtsd el. A rendszerindításhoz legalább hat sornyi kód és egy if utasítás szükséges.
Tehát itt van, hogyan kell csinálni. Van egy korlátunk (59). Azt akarjuk, hogy minden 0 és 59 között ismétlődjön újra és újra. Hogyan?
Mi lenne, ha… a millis függvény fennmaradó részét elvonnánk osztva 59 -tel…. Bingó!
Tehát így kell lennie:
(60 [kezdeti értékként, mert a határ 59] + millis () / 1000 [1000 ezredmásodperc másodperc]) % 60
Ok, magyarázzuk el. (%) vagy modulus, alapvetően olyan operátor, mint a (+), amely megtalálja a maradékot. Mint 9 % 2 = 1.
Így:
- (60 + 0) % 60 = 0
- (60 + 1) % 60 = 1
- (60 + 58) % 60 = 58
- (60 + 59) % 60 = 59
- (60 + 60) % 60 = 60
- (60 + 61) % 60 = 1
Lát!
Most az alkatrészekről.
2. lépés: Az alkatrészek
Nem sokat, egyáltalán
- Bármilyen arduino
-
Bármilyen kijelző (0,96 -os OLED -et használtam, de bármit használhat, csak győződjön meg arról, hogy a megfelelő változókat a kijelző megjelenítési funkcióiba helyezi.)
Ez az.
3. lépés: A kód
Tessék. Elég egyértelműen kommentált, így nem lehet probléma. A könyvtárak és az init a 0,96 -os OLED -hez a kódban vannak. Cserélje ki saját kijelzőjére, ha más.
// 0,96 OLED könyvtárak
#befoglalni
#befoglalni
#befoglalni
#befoglalni
// 0,96 OLED Init
#define OLED_RESET 4
Adafruit_SSD1306 kijelző (OLED_RESET);
int másodperc;
int perc;
int óra;
void setup () {
// Még néhány 0,96 -os OLED Init
display.begin (SSD1306_SWITCHCAPVCC, 0x3C);
display.clearDisplay (); display.setTextSize (2); display.setTextColor (FEHÉR); }
void loop () {
másodperc = (60 + millis () / 1000) % 60;
perc = (60 + millis () / 60000) % 60; óra = (25 + millis () / 3600000) % 25;
display.clearDisplay ();
display.setCursor (0, 22); // a kijelző visszaállítása óta eltelt órák számának nyomtatása.print (óra); display.print ("h:");
// kinyomtatja a visszaállítás óta eltelt percek számát
display.print (perc);
display.print ("m:");
// a kijelző visszaállítása óta eltelt másodpercek számának nyomtatása.print (másodperc); display.print ("s");
display.setCursor (0, 0);
display.print ("Stopper"); display.drawLine (0, 18, 128, 18, FEHÉR); display.display ();
}
4. lépés: A véglegesítés…
Szóval ennyi! Most pedig csinálj vele, amit akarsz. Időt egy kis tojást, vagy átveszi a környéken.
Üdv, Aarush
Ajánlott:
Versano: multifunkcionális praktikus eszköz (arduino Nano): 6 lépés
Versano: multifunkcionális praktikus eszköz (arduino Nano): Szükségem volt egy praktikus multiméterre, amely bárhová könnyen hordozható. Azt akartam, hogy kicsi és miniatűr legyen a camparisonban a normál multiméterekkel. Órákig tartó kódolással és áramkör -tervezéssel végül olyan eszközt készítettem, amely képes mérni a feszültséget
Egyszerű CloudX M633 digitális stopper: 4 lépés
Egyszerű CloudX M633 digitális stopper: Ebben a projektben egy olyan digitális óra verzióját készítjük el, amely órákat, perceket és másodperceket rögzít, akár a mobiltelefon stopperje! LCD -t fogunk használni az idő megjelenítésére
Halloween ijesztgetőgép PIR, 3D nyomtatott sütőtök és a Troll Arduino kompatibilis audio tréfa/praktikus vicc tábla használatával: 5 lépés
Halloween -ijesztőgép PIR -t, 3D -s nyomtatott tököt és a Troll Arduino -kompatibilis audio tréfát/praktikus vicc táblát használva: A Troll táblát Patrick Thomas Mitchell készítette az EngineeringShock Electronics -ból, és nem is olyan régen teljes mértékben finanszírozták a Kickstarteren. Néhány héttel hamarabb megkaptam a jutalmamat, hogy segítsek néhány használati példát írni, és egy Arduino könyvtárat felépíteni
Praktikus Arduino ESP32 vezeték nélküli fali konnektor LED szalagvezérlő: 6 lépés
Praktikus Arduino ESP32 vezeték nélküli fali konnektor LED szalagvezérlő: Ez egy nagyon praktikus DIY vezeték nélküli fali kimeneti vezérlő alacsony költségű LED csíkokhoz. Ez helyettesíti az ebayen értékesített olcsó wifi vezérlőket. Jól működnek az RGB Led szalagokkal. Az EBay Wifi vezérlő nincs jól felépítve, és könnyen törik. Als
Egyszerű Arduino óra / stopper: 6 lépés (képekkel)
Egyszerű Arduino óra / Stopper: Ez az " utasítható " megmutatja és megtanítja, hogyan készítsen egy egyszerű Arduino Uno órát, amely stopperként is működik néhány egyszerű lépésben