-
Fototrend
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
gyapo11
őstag
A while feltétele 1, ami igaz, vagyis örökké fog futni.
curr = digitalRead(NYOMOGOMB);
beírja a curr változóba a gomb állapotát.
if ((curr == 0) && (prev != 0)) {
Mivel prev=1, vagyis igaz, hogy nem 0, csak akkor igaz az if feltétele, ha curr=0. Vagyis amíg curr=1, addig nem történik változás, az if nem fut le,
prev = curr;
prevbe beírja a curr-t, vagyis 1-et, vár 100 msecet, és újra kezdi a while-t.Egyszer megváltozik a gomb állapota, és a curr-ba 0 kerül. Ekkor az if feltétele már igaz lesz, mert curr=0 és prev nem 0.
state ^= 1;
A ^ jel a bitwise xor, vagyis 1-gyel xorolja a biteket, aminek következtében ami 0 volt az 1 lesz, ami 1 volt az 0 lesz. A state eddig 0 volt, vagyis most 1 lesz.
digitalWrite(LED, state);
Vagyis a LED pinbe 1-et ír, a led világítani kezd.
prev = curr;
A prevbe 0 kerül, innen már tudjuk, hogy az if nem fog lefutni, mert a prev nem 0 feltétel nem teljesül, egészen addig, amíg a nyomógomb állapota ismét nem változik és válik 1-gyé.
delay(100);
Ez a pergésmentesítés miatt kell, hogy a nyomógomb lenyomásakor és felengedésekor létrejövő többtucat ki-be kapcsolást figyelmen kívül hagyjuk. Csak az első változást dolgozzuk föl, utána várunk 100 msecet, addig ezek a parazita kapcsolások megszűnnek.
Új hozzászólás Aktív témák
- Honda topik
- Lexus, Toyota topik
- Genshin Impact (PC, PS4, Android, iOS)
- SzDavid99: Van 20 perced? Akkor tanulj meg koreait olvasni!
- sziku69: Szólánc.
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- Kerékpárosok, bringások ide!
- Amlogic S905, S912 processzoros készülékek
- További aktív témák...
- GYÖNYÖRŰ iPhone 13 128GB Blue -1 ÉV GARANCIA -Kártyafüggetlen, MS3688, 100% Akkumulátor
- Lenovo ThinkPad T14s Gen 2 i5-1135G7 16GB 512GB 1 év garancia
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7700X 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 16/32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9800X3D 64GB RAM RTX 5090 32GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest