Hirdetés
- OLED TV topic
- Milyen billentyűzetet vegyek?
- Milyen monitort vegyek?
- ZIDOO médialejátszók
- Kormányok / autós szimulátorok topikja
- Projektor topic
- Vezetékes FEJhallgatók
- Régóta ott van a fiókban az Intel válasza az AMD-féle 3D V-Cache-re
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Milyen széket vegyek?
-
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
-
its_grandpa
tag
válasz
lanszelot
#20318
üzenetére
Ez a kód (szerintem) annyi sebből vérzik, hogy kénytelen vagyok ....
Az ISR-ben használt változók, volatile, tehát a definiciók:
volatile int keses = 1000;
volatile uint32_t lastms= 0;ISR-ben nem írunk a soros portra, ha jót akarunk magunknak.
Vegyunk fel a változásra egy boolean-t.volatile bool tekertem = false;
void teker(){
if (millis() - lastms > 200)
{
lastms = millis();
tekertem = true;
if(digitalRead(DT) == currentStateCLK) keses = keses+100;
else if (keses > 100) keses = keses-100;
lastStateCLK = currentStateCLK;
}
else tekertem = false;
} /* teker fv end */A void loop() -ban lehet kiírni a soros portra ha volt tekerés
if (tekertem)
{
serial.print-ek
}Sem a counter, sem a currentDir változó értékét nem módosítod, mindig ua.-t fogja kiírni.
És a hab a tortán.
Nem is értem miért működik mert ugyan INPUT_PULLUP a 2,3-as pin de az ISR fv. a 0-as pin-re van konfigurálva, nem szépen.attachInterrupt(0, teker, CHANGE);
Így illene:attachInterrupt(digitalPinToInterrupt(PIN), teker, CHANGE);
Új hozzászólás Aktív témák
- Samsung Galaxy Buds3 Pro Fülhallgató Teljesen Új Eladó!!!
- ASUS ROG STRIX RTX 4070 Ti SUPER OC Edition 16G (kishibás) videokártya garanciával
- OHH! HP EliteBook 850 G8 Fémházas Tartós Laptop 15,6" -65% i7-1185G7 16/512 Iris Xe FHD
- SZÉP! HP EliteBook 850 G8 Fémházas Tartós Laptop 15,6" -65% i7-1185G7 32/512 Iris Xe FHD
- Corsair Vengeance 64GB (2x32GB) DDR5 6000MT/s CL40 XMP black kit - ÚJ, bontatlan, garis - ELADÓ!
- Corsair MM350 pro XL egérpad, új
- HIBÁTLAN iPhone 14 Pro Max 256GB Purple -1 ÉV GARANCIA -Kártyafüggetlen, MS3932, 100% Akkumulátor
- Csere-Beszámítás! Macbook Air M1 8/256 Retina! Makulátlan! Akksi 96%!
- LG 32GQ850-B - 32" NANO IPS ATW / 2560x1440 / 260Hz 1ms / NVIDIA G-Sync / AMD FreeSync / HDR 600
- REFURBISHED és ÚJ - Lenovo ThinkPad 40AY Universal USB-C Dock
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi
ekkold

