Hallo Zusammen, ich bin neu in der Welt des Arduinos und will mich nun mal an einem Projekt versuchen. Mein Ziel ist es, den Arduino nur für einen Prototyp zu gebrauchen und die entstandene Schaltung als Grundlage für eine eigene Platine zu verwenden. Mein Vorhaben ist nicht komplex, hat aber so seine Tücken. Ein Baustein des Projekts ist die Ansteuerung eines Motors, wobei ein Taster verwendet werden soll. Funktion 1: Wird der Taster gehalten, läuft der Motor; wird der Taster losgelassen, soll der Motor stehen. Funktion 2: Wird der Taster zweimal kurz hintereinander betätigt, läuft der Motor und der Taster kann losgelassen werden. Zum Anhalten des Motors muss der Taster dann erneut betätig werden.
Hier der Code für Funktion 1:
void setup() { pinMode(2, INPUT_PULLUP); pinMode(3, OUTPUT); }
void loop() { if (digitalRead(2)== LOW) { digitalWrite(3, HIGH); } else { digitalWrite(3,LOW); } }
Ich wurde zudem auf einen Umstand aufmerksam gemacht, der mit der Rechengeschwindigkeit zusammenhängt. Mein Kollege meinte, je größere das Programm ist, desto größer ist die Abweichung bei den Zeiten. Das könnte für mich bedeuten, dass ich bei einem kleinen Programm (Funktion 2) den Taster sehr schnell betätigen muss und mir bei einem großen Programm mehr Zeit bleibt.
Zu meinen Problemen, mir fehlen ein paar grundlegende Programmbausteine, die mir es ermöglichen von Funktion 1 u. 2 zu unterscheiden und Funktion 2 auszuführen. Des Weiteren will ich im Hinterkopf behalten, dass der Arduino (so vielfältig die Möglichkeiten auch sind) nur für den Prototyp verwendet werden soll.
Eventuell hat jemand eine Idee, wie ich Funktion 2 auf dem Arduino umsetzen kann; oder eine Anmerkung.