ich hänge hier an einem Projekt an dem ich (als Newbie) nicht weiterkomme, aber die richtigen Asse wahrscheinlich den Code im Schlaf können.
Also, ich will einen Schrittmotor mit der IR-Fernbedienung steuern.
Ich hab schon den Code soweit dass ich den SM mit ner Taste z.B. um 1000 Schritte vor oder zurückdrehen kann.
Nun würde ich aber gerne auf den Tasten die Schrittzahl eingeben, z.B. 2-0-4-8-> drücken, dass der Motor 2048 Schritte vor macht bzw. 2-0-4-8-< für die Schritte rückwärts.
Keine Ahnung wie ich das anstellen soll, bin noch relativ neu was C+ angeht…
NormanIGB:
Nun würde ich aber gerne auf den Tasten die Schrittzahl eingeben, z.B. 2-0-4-8-> drücken, dass der Motor 2048 Schritte vor macht bzw. 2-0-4-8-< für die Schritte rückwärts.
Zunächst alle Zifferntasten dekodieren. Dann ungefähr so (ungetestet):
Nun, das eigentliche Problem, dass sich mir stellt, ist dass ich die Eingabe mehrstelliger Zahlen nicht implementieren kann, mir fällt dazu kein Code ein.....
Ich kann die Zahlen 1-9 einprogrammieren, ab 10 hörts dann auf....
Wenn du nicht anzeigst, was du bisher empfangen hast, wird das nichts.
Neben den Abschluss-Tasten > und < brauchst du mindestens eine ‘Clear’ Taste.
int Zahl;
switch (received_key) {
case CLEAR: Zahl = 0; break;
case KEY_0:
...
case KEY_9: Zahl = Zahl*10 + getDigit(received_key); break;
case KEY_R: doStepper(Zahl); /* evtl */ Zahl = 0; break;
case KEY_L: doStepper(-Zahl); break;
}
display(Zahl);
NormanIGB:
Nun, das eigentliche Problem, dass sich mir stellt, ist dass ich die Eingabe mehrstelliger Zahlen nicht implementieren kann, mir fällt dazu kein Code ein.....
Die Beiträge #2 und #4 zeigen, wie es geht, ich beziehe mich auf #2: