-
PROHARDVER!
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
- PlayStation 5
- OLED TV topic
- Kerékpárosok, bringások ide!
- Norvégia átmenetileg betiltja az áramigényes kriptobányászatot
- Nehéz helyzetben az SMIC, régebbi chipet használ az új Huawei laptop
- Linux kezdőknek
- Fortnite - Battle Royale & Save the World (PC, XO, PS4, Switch, Mobil)
- Milyen HASZNÁLT notebookot vegyek?
- E-roller topik
- Bestbuy játékok
- További aktív témák...
- X1 Carbon 9th 14" 4K UHD+ IPS i7-1185G7 32GB 512GB NVMe ujjlolv IR kam gar
- Apple watch series 9 45mm újszerű állapotban, 100% akku 2027.05.20-ig Media Markt gari
- Latitude 7410 27% 14" FHD IPS i5-10310U 16GB 256GB NVMe ujjlolv IR kam gar
- DELL 7490 i7-8650U 8 Gb 256 GB EU BILL WIN11 PRO - ÁFÁS SZÁMLÁVAL
- Dual Sense Kontroller - Death Stranding 2: On the Beach Limited Edition
- Samsung Galaxy S23 Plus 256 GB Kártyafüggetlen 1Év Garanciával
- AKCIÓ! Épített KomPhone R5 4500 16GB RAM 240GB SSD RX 6500 XT 4GB GAMER PC termékbeszámítással
- ÁRGARANCIA! Épített KomPhone Ryzen 5 5500 16/32/64GB RAM RTX 4060 8GB GAMER PC termékbeszámítással
- DELL PowerEdge R730xd 26SFF rack szerver - 2xE5-2680v3 (24c/48t, 2.5/3.3GHz), 64GB RAM, 10G, H730p
- BESZÁMÍTÁS! Gigabyte B760M i5 13400F 16GB DDR4 512GB SSD RTX 3070 8GB Pure Base 500DX fehér 650W
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged