Hirdetés
- Milyen TV-t vegyek?
- AMD Navi Radeon™ RX 9xxx sorozat
- Milyen HASZNÁLT notebookot vegyek?
- Milyen billentyűzetet vegyek?
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Androidos tablet topic
- Apple MacBook
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Nem akármilyen módon ugrik rá a memóriapánikra a Valve
- Vezeték nélküli fejhallgatók
-
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
-
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
- Autóápolás, karbantartás, fényezés
- Kertészet, mezőgazdaság topik
- Milyen légkondit a lakásba?
- Milyen TV-t vegyek?
- World of Tanks - MMO
- Formula-1
- Autós topik
- Google Pixel 9a - a lapos munka
- AMD Navi Radeon™ RX 9xxx sorozat
- Counter-Strike: Global Offensive (CS:GO) / Counter-Strike 2 (CS2)
- További aktív témák...
- Lenovo ThinkPad X13 Gen 4 i5-1345U 16GB DDR5 512GB SSD FHD+ Garancia 2027.11.10-ig
- HP EliteBook 640 G10 i5-1335U 16GB RAM 256GB SSD FHD Garancia
- Lenovo ThinkPad X13 Gen 2 i5-1145G7 16GB RAM 256GB SSD FHD+ gari.l 4g modem
- MSI Thin GF63 12UDX 15.6" FHD IPS i5-12450H RTX 3050 16GB 512GB NVMe magyar vbill gar
- Dell Precision 5570! 4K Touch / i7-12800H / RTX A2000 / 32GB DDR5 / 512GB NVMe! BeszámítOK
- Playstation 4 Fat 500 GB + kontroller 6 hó garancia, számlával!
- GYÖNYÖRŰ iPhone 12 mini 256GB Blue -1 ÉV GARANCIA -Kártyafüggetlen, MS3625, 100% Akkumulátor
- Bomba ár! HP EliteBook 830 G8 - i7-1185G7 I 16GB I 512SSD I HDMI I 13,3" FHD I Cam I W11 I Gari!
- Felújított laptopok számlával, garanciával! Ingyen Foxpost!
- Bomba ár! Dell Latitude 7420 - i7-1185G7 I 16GB I 256SSD I HDMI I 14" 4K I Cam I W11 I Garancia!
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
ekkold

