Hirdetés
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- Parci: Milyen mosógépet vegyek?
- sziku69: Szólánc.
- Magga: PLEX: multimédia az egész lakásban
- D@reeo: Pi-hole és a Telekom Sagemcom F@st 5670 DNS beállítása
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- djculture: Éhezők ssd és memória viadala.
-
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
-
JulianSinulf
őstag
Sziasztok!
Akadt egy kis bajom a "if and or" használatával.
Itt a kódrészlet. Remélhetőleg az oldal megfelelően fogja kezelni:void step0_1mm()
{
heTest();
for (uint32_t i=0; i<2850; ++i)
{
vegallas_fent();
vegallas_lent();
if (v == 1)
{
if (((digitalRead(KAPCSOLO_VEGALLAS_FENT) == LOW) && (digitalRead(KAPCSOLO_FORGASIRANY) == HIGH)) || ((digitalRead(KAPCSOLO_VEGALLAS_LENT) == LOW) && (digitalRead(KAPCSOLO_FORGASIRANY) == LOW)))
{
break;
}
}
else
{
digitalWrite(STEP_PIN, !digitalRead(STEP_PIN));
delayMicroseconds(STEP_DURATION);
}
}
}A "v" int változó és a vegallas_fent és vegallas_lent részben kaphat 1-es értéket. Amúgy nullával indul.
A végállás részek majdnem ugyan úgy néznek ki, a különbség a figyelt kapcsolóban van.
A cél az lenne, ha valamelyik "és" feltétel teljesül, akkor álljon meg a ciklus, ha nem, akkor fusson tovább.
De nem így tesz.
Ha a forgásirány kapcsoló magas értéken van, akkor nem hajtja végre az "else" utáni részt, ellenben lefut a ciklus 2850-szer. Gondolom, nem számoltam meg, de a végállás részekben kiíratom, hogy aktív a kapcsoló és az jó sokszor ott van a soros monitoron.
Ha a forgásirány kapcsoló alacsony értéken van, akkor megáll a program.Próbálkoztam egy ilyennel is, de az eredmény változatlan:
void step0_1mm()
{
heTest();
for (uint32_t i=0; i<2850; ++i)
{
vegallas_fent();
vegallas_lent();
if (v == 1)
{
if (digitalRead(KAPCSOLO_VEGALLAS_FENT) == LOW && digitalRead(KAPCSOLO_FORGASIRANY) == HIGH)
{
break;
}
}
else
{
digitalWrite(STEP_PIN, !digitalRead(STEP_PIN));
delayMicroseconds(STEP_DURATION);
}
if (v == 1)
{
if (digitalRead(KAPCSOLO_VEGALLAS_LENT) == LOW && digitalRead(KAPCSOLO_FORGASIRANY) == LOW)
{
break;
}
}
else
{
digitalWrite(STEP_PIN, !digitalRead(STEP_PIN));
delayMicroseconds(STEP_DURATION);
}
}
}És azt sem értem, hogy először be van állítva a "v" nullára, majd amikor utána lefut a végállás rész (itt már 300 ms van a "v = 0" és végállás rész között), akkor a "v"-t át kell állítani 1-re (mert a kapcsoló érteke LOW) és ezzel együtt egy kimenetet magas állapotba kell tennie. Ezt nem teszi meg indulásnál.
Ha futtatom a "step" részt, akkor az a bizonyos kimenet magas állapotba kerül.Azért ide teszem a végállás részt is:
void vegallas_lent()
{
if (digitalRead(KAPCSOLO_VEGALLAS_LENT) == LOW)
{
v = 1;
digitalWrite(LED_VEGALLAS, HIGH);
Serial.println("Végálláskapcsoló lent aktív!");
}
else
{
v = 0;
digitalWrite(LED_VEGALLAS, LOW);
}
}
Új hozzászólás Aktív témák
- TCL LCD és LED TV-k
- 5.1, 7.1 és gamer fejhallgatók
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- Diablo IV
- Milyen notebookot vegyek?
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- World of Tanks - MMO
- Búvárkodás
- Milyen Android TV boxot vegyek?
- Milyen TV-t vegyek?
- További aktív témák...
- Asus H110-PLUS/ i3 6100/ ingyen foxpost/ garancia
- Eladó Gamer PC ASUS TUF GAMING B550M-E / Ryzen 5 5600X / RTX 3060 Ti XC3
- Eladó Gamer PC ASUS TUF GAMING B550M-E / Ryzen 5 5600X / EVGA RTX 3080 XC3
- Eladó Gamer PC ASRock B450M Pro4 / Ryzen 7 2700 / Gigabyte RTX 3070 Eagle
- Eladó Gamer PC ASUS ROG STRIX B450 / Ryzen 7 5700G / MSI RTX 3080 Suprim
- BESZÁMÍTÁS! ASROCK B650M R7 8700F 32GB DDR4 512GB SSD RX 6800XT 16GB Zalman Z1 PLUS 750W
- Bomba ár! Dell Vostro 5490 - i5-10GEN I 16GB I 256SSD I 14" FHD I HDMI I Cam I W11 I Gari!
- ÁRGARANCIA!Épített KomPhone Ryzen 7 7700X 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- Dell Latitude 7320 i5-1145G7 16GB 512GB 1 év garancia
- HIBÁTLAN iPhone 13 Pro 256GB Sierra Blue 1ÉV GARANCIA -Kártyafüggetlen, MS3743, 91% Akkumulátor
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopszaki Kft.
Város: Budapest
ekkold
