Arduino teljesítménye?
Eléggé meggyűlt a bajom az Arudino Mega 2560-nal. Ezt a programrészletet nem tudja 25ms alatt végrehajtani, holott szerintem simán képesnek kellene rá lennie:
DurationOLD = 500000/ZFT;
DurationNEW = pulseIn(Signal, LOW);
if (DurationNEW > DurationOLD*2.5) {
FHP= 1;
}
else {
FHP= 0;
}
A "DurationNEW" kiszámítása értelemszerűen a "Signal"-tól is függ, de nem ez okozza a lassulást, mert nem túl alacsony a "Signal" órajele - 500 Hz körül van, amivel legrosszabb esetben is 2-3ms alatt végeznie kellene.
Még nem igazán foglalkoztam eddig Arduino-val, csak PIC16f-ekkel, ott egy ilyen 2 szorzást és 1 osztást tartalmazó programrészlet simán lefut ennyi idő alatt, holott az sem erősebb hardverikusan.
Az meg csak hab a tortán, hogy ugyanezt (kivétel a pulseIn) bizonyos körülmények között el kellene végeztetnem vele 1-2 ms alatt is. Esetleg erre valami ötlet? Hardverváltás?
Köszönöm a válaszokat. Megoldódott a probléma, újratelepítettem az IDE-t és a kód feltöltése után már jól működött.
Nem tudom, hogy miért produkálta a hibát, meg hogy miért csak ennél a kódnál...
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!