Ich mache doch was damit:
oder verstehe ich da was falsch?Code:if(pos < 180 && pos > 0)
{
servo1_position = pos;
}
else
if(pos < 360 && pos > 180)
{
servo2_position = pos - 180;
} .....
Jep, da verstehst du was falsch.
Die Funktion "Eingabe()" liefert dir ja einen Wert zurück. Dieser Wert gibt an, ob die aktuelle Übertragung des Servowerts schon abgeschlossen ist.
Daher musst du natürlich erst auf das Ende warten, bevor du deine Servos einstellen kannst.
Weißt du denn überhaupt, was der Rückgabewert einer Methode ist?
Hm, dann solltest du dich definitiv erst mal mit den Grundlagen von "C" vertraut machen.
Prinzipiell hast du mit deinem Vorschlag aber fast Recht. Du musst solange warten, bis die Methode den paasenden Wert zurückliefert.
Dazu sind nur kleine Anpassungen an dem eben geposteten Code nötig.
@Fabian E. Dein Postfach ist voll ;->
Kennt jemand eine methode um uart zu empfangen, aber so, dass das Programm nicht die while schleife blockiert??
mfG
Philip
Immer noch ?? Das hatte ich eigentlich komplett gelöscht als die Benachrichtigung kam...
@Fabian E.
Wie empfängst du die Daten, in deinem C# programm??
Die Klasse heißt SerialPort.
Ja soweit bin ich auch gekommen ;->
Ich meine du sendest ja "Bat: 123" wie "schneidest" du das "Bat: " aus?