- gban: Ingyen kellene, de tegnapra
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- Gurulunk, WAZE?!
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- eBay-es kütyük kis pénzért
- bitpork: Phautós tali a Balcsinál 2025 Augusztus 2 napján (szombat)
- bambano: Bambanő háza tája
- Magga: PLEX: multimédia az egész lakásban
- Meggyi001: RTX 5060 - Az új népkártya?
Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
-
LOGOUT
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
-
its_grandpa
tag
válasz
lanszelot #20000 üzenetére
Előrebocsájtom, hogy nem ismerem ezt a Digispark lapot, úgy ötletelek.
A gombnyomások számát a loop-ban figyeljük 10 sec-enként.A gombnyomás(ok) számolásához kell egy interrupt fv. a pin, meg egy változó.
const byte interruptPin = 2;
volatile int gombNyomas = 0 ; /*valtozo a gomb nyomas szamlalasara*/
void gombotnyom(){
gombNyomas ++; /* növeljük 1-el a gombnyomások számát */
}
A setup: (zanzásítva)
void setup() {
Serial.begin(9600); /*elindítja a sorosportot ...*/
pinMode(interruptPin, INPUT_PULLUP); /*inicializálja a gomb pin-t inputnak , default HIGH !!! */
attachInterrupt(digitalPinToInterrupt(interruptPin), gombotnyom, LOW); /* meghívjuk az fv.-t ha LOW-ra húzod a pin-t */
/* ami még a setupba kell */
} /* setup_end */
És most jöjjön a loop.
void loop() {
if (millis() - lastms > 10000) /* eltelt 10 sec ? */
{
lastms = millis();
if gombNyomas > 0 /* volt valamennyi gombnyomás */
{
megnyomva();
gombNyomas = 0 ; /* nullázzuk a nyomások számát
}
} /* gombnyomások számának olvasás időzítése */
Serial.println(gombNyomas); /* kiírjuk hány gombnyomásnál tartasz */
} /* loop_end */
Jöjjön a megnyomva fv.void megnyomva() {
switch (gombNyomas) {
case 1:
mindenRajtaVan();
break;
case 2:
homeroVanRajta();
break;
case 3:
gazVanRajta();
break;
}
} /* megnyomva_end */
Most látom írtál közben.
A kódomban az interrupt pin a 2-es, neked ott a gázérzékelő van, szóval valamit módosítani kell. Én az arduinóból indultam ki, ott az Uno, Nano, Mini, other 328-based lapokon csak a 2,3 pin használható interruptra.
Új hozzászólás Aktív témák
- Samsung Galaxy A56 - megbízható középszerűség
- gban: Ingyen kellene, de tegnapra
- Nyomtató topik
- Könyvajánló
- sziku69: Fűzzük össze a szavakat :)
- Xbox Series X|S
- Samsung Galaxy S25 - végre van kicsi!
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Fortnite - Battle Royale & Save the World (PC, XO, PS4, Switch, Mobil)
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- További aktív témák...
- Szinte új, minőségi, állítható ritkítóolló
- LG 34GS95UE - 34" Ívelt OLED / QHD 2K / 240Hz & 0.03ms / 1300 Nits / NVIDIA G-Sync / AMD FreeSync
- Xiaomi Redmi 9 32GB, Kártyafüggetlen, 1 Év Garanciával
- Telefon felvásárlás!! Xiaomi Redmi Note 10, Xiaomi Redmi Note 10s, Xiaomi Redmi Note 10 Pro
- DELL PowerEdge R730xd 26SFF rack szerver - 2xE5-2680v3 (24c/48t, 2.5/3.3GHz), 64GB RAM, 10G, H730p
Állásajánlatok
Cég: FOTC
Város: Budapest