Hallo,
ich möchte mit einem Taser 4 unterschiedliche Funktionen steuern.
Also 1 mal antippen des Tasters 1erste Funktion
2mal antippen 2te
3mal antippen 3te
und wenn man für 3 sekunden den Taster hält soll es wieder ausgehen.
problem dabei ist dass mein Taster in einer Fernbedienung sitzt und der Empfänger ein PWM Signal ausgibt.
zwischen 1400 und 1500 ist Normalstellung
800 bis 1000 kommt raus wenn der Taster gedrückt ist.
Ich glaube auch nicht, dass es ein PWM Signal ist. Wahrscheinlich meinst Du damit, dass der Empfänger eine Frequenz von 1400 bis 1500 Hz ausgibt. Da wäre noch spannend zu wissen, ob Sinus, Rechteckt oder sonstwas sowie die Amplituden-Spannung.
Ich mein es ist ein PWM signal, denn die Servos werden mit so einem Signal angesteuert.
Die Zahl bekomme ich wenn ich mit " pulseIn " das Signal auswerte.
Aber ist ja eigentlich doch egal...denn ich habe das Signal ja schon so umgewandelt, dass der Arduino was damit anfangen kann.
Mir geht es nur darum wie ich das Mit dem Zähler machen kann.
Vermutlich handelt es sich um das typische PCM Signal für Servo-Motoren, mit Impulsbreiten von 1-2ms.
Zum Auswerten kann man pulseIn() verwenden, oder einen eigenen Codeschnipsel in loop() einbauen. Der wartet auf die erste Flanke, und schaut nach 1,5ms nach, ob der Impuls schon zu Ende ist - das gibt dann entsprechend Taster ein/aus.
Ein zweiter Schnipsel wartet darauf, daß der Taster gedrückt wird, und schaltet dann den Zähler weiter. Gleichzeitig wird die Zeit gespeichert, zu der der Taster gedrückt wurde, und wenn der nach 3s immer noch gedrückt ist, wird der Zähler zurückgesetzt.