Arduino Loop Geschwindigkeit beinflussen?
Der Arduino wiederholt ja X-mal in der Sekunde den void loop. Vielleicht liege ich damit schon falsch, aber ich habe das Gefühl das mehr code bzw. mehr Pin abfragen die Wiederholungen verlangsamen. Wenn dies der fall ist, ist es dann möglich den loop wieder zu beschleunigen, wenn man viele abfragen hinter eine if Bedingung schreibt? Weil der im loop dann nur schaut ob die if Bedingung wahr ist und wenn nicht gleich alle abfragen überspringt...
Ich danke im voraus für die antworten!
3 Antworten
Klar wird das langsamer. Ist wie wenn du pro Zyklus mehr machen musst, kannst du es in dem Zyklus nicht so oft. Aber das müsste trotzdem noch über 100x die Sekunde anfragen. Viele Grüße
Klar wird der langsamer, je mehr Code in der Loop ist.
Mache einen
delay(2000);
rein und der Loop wird länger als 2s dauern.
Wenn du was 100x die Sekunde abfragen willst, dann bleibt dir nur die Interruptsteuerung über und du musst sehen, ob der "normale" R3 schnell genug ist, neben der Abfrage auch die Auswertung zu machen.
100x die Sekunde einen Pin abzufragen, langweilt den ATMEGA328p allerdings.
Natürlich wird die Schleife (Loop) langsamer mit jedem zusätzlichen Codestück. Ebenso richtig ist es, den Code durch logisches Optimieren zu beschleunigen.