- Samsung Galaxy A56 - megbízható középszerűség
- Mindenki Z Fold7-et akar
- iPhone topik
- Samsung Galaxy Watch7 - kötelező kör
- Három Redmi 15 érkezett a lengyel piacra
- Milyen okostelefont vegyek?
- Samsung Galaxy A54 - türelemjáték
- Garmin Venu X1 - vékony, virtuóz, váltságíjas
- Honor Magic6 Pro - kör közepén számok
- Profi stratégiára vált a Galaxy S26
Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
-
Mobilarena
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
válasz
zoombiee #14015 üzenetére
Két dolog biztos kell, a pergésmentesítés és az időzítés.
A nyomógomb prelljére legegyszerűbb megoldás az adott idő utáni új beolvasás. Ha 0-ra vált a bemenet, onnantól kb. 50 ms múlva újra be kell olvasni, és ha még mindig 0, akkor a nyomógomb megnyomott állapotban van. Fölengedésnél ez nem kell, tételezzük föl, hogy megnyomott állapotban egy pillanatra sem szakad meg a vezetése.
Az időzítés pedig a millis() használatával és egy gomb figyelésével a következő:
if(1-es gomb megnyomva && regimill==0)
{regimill=millis()}if(1-es gomb megnyomva && (millis()-regimill)>1000)
{lejárt az 1 másodperc}if(regimill>0 && (millis()-regimill)>1000)
{regimill=0}A lényeg, hogy ne álljon le a loop pörgése, sok programban ez gond lenne, nálad is kerülhet be olyan programrészlet, aminek folyamatosan futnia kell, ezért ne használd a delayt.
Amint az 1-es gomb megnyomott állapotba kerül és a regimill változó értéke 0, beíródik a regimillbe a millis() aktuális értéke. Ez az if a továbbiakban a regimill nullázásáig nem hajtódik végre.
A második if-ben két feltételnek kell teljesülnie, ekkor lejárt az 1 másodperc.
A harmadik if biztosítja, hogy ha letelt az 1 másodperc, akkor is nullázza a regimill változót, ha közben fölengedték az 1-es gombot.
Még azt érdemes megoldnani, hogy a gomb fölengedésekor azonnal nullázza a regimill változót, hogy a következő gombnyomáskor indulhasson a számlálás.
Új hozzászólás Aktív témák
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Samsung Galaxy A56 - megbízható középszerűség
- Kerékpárosok, bringások ide!
- Amlogic S905, S912 processzoros készülékek
- FOTÓS beárazás
- Motorolaj, hajtóműolaj, hűtőfolyadék, adalékok és szűrők topikja
- Soundbar, soundplate, hangprojektor
- Épített vízhűtés (nem kompakt) topic
- Kínai és egyéb olcsó órák topikja
- Autós topik
- További aktív témák...
- Asztali Konfig - z97 - 4770K - Sapphire RX580 8GB- 8 GB DDR3
- ÚJ, GARIS! Dell Latitude 5450 - 14" FHD / Ultra 5 125U / 16GB DDR5 / 512GB NVMe SSD / HDMI 2.1
- Megkímélt állapotban Samsung Galaxy A51 4/128GB
- Full HD Gaming PC -Z390, i7 -8700K, Vega 56 8GB, 16 GB RAM, 512GB SSD
- Samsung Galaxy A13 4G 4/64 karcmentes kijelzővel
- 24 hónapos PlayStation Plus Premium előfizetés a legolcsóbban, egyenesen a PlayStation-től!
- Bomba ár! Dell Latitude 5590 - i5-8GEN I 8GB I 256SSD I 15,6" FHD I HDMI I CAM I W11 I Gari!
- BESZÁMÍTÁS! Asus Maximus VIII Hero i7 6700K 16GB DDR4 512GB SSD RX 5700 XT 8GB Zalman i3 NEO 700W
- Apple iPhone SE 16GB, Kártyafüggetlen, 1 Év Garanciával
- AKCIÓ! Dell Latitude 5550 notebook - Intel Ultra 7 165U 16GB DDR5 RAM 1TB SSD Intel Graphics WIN11
Állásajánlatok
Cég: FOTC
Város: Budapest