Guten Morgen
zurzeit arbeite ich an einem kleinen Projekt mit einem Roboter, den ich mit einem STM32F4 Discovery Boars und einem QSC32 über die UART Schnittstelle ansteuere.
Das klappt soweit auch ganz gut.
Der Befehl zum Senden sieht wie folgt aus:
UB_Uart_SendString(COM2, "#10P500T1000",LFCR);
um den fett markierten Text geht es.
# <Nummer des Servos>
P <Pulse zwischen 500 und 2500 für die Richtung des Servos>
T <in welcher Zeit er an der Stelle sein soll>
Wenn ich den Befehl wie oben ausführe klappt es auch, alllerdings will ich ja manche Bewegungen berechnen lassen und möchte wie folgt mit Funktionen zur Bewegung arbeiten.
o.g. ist nur zu Veranschaulichung.
ich habe schon einiges ausprobiert aber nichts funktioniert bis jetzt.
beim printf kann ja wunderbar alles aneinanderreihen, aber ich weiß halt nicht wie ich diese Zeichenkette dann in einem String bekomme. (?)
habe die übergebenen int Werte in chars umgewandelt und versucht mit mehrere strcat Befehlen aneinanderzuketten.
Da kam aber nur ein ? beim anschließenden Printbefehl raus.
Die einzelnen Werte und Zeichen hintereinander zu senden (mit anschließendem LFCR) funktionierte auch nicht.
ist es denn wirklich so schwierig?
Ich hoffe da gibt es eine simple Lösung. Soll ja nicht jedes mal ein riesiger Rechenaufwand sein, wenn ich ein Gelenk bewegen will.
Lieben Gruß
Thimo
zurzeit arbeite ich an einem kleinen Projekt mit einem Roboter, den ich mit einem STM32F4 Discovery Boars und einem QSC32 über die UART Schnittstelle ansteuere.
Das klappt soweit auch ganz gut.
Der Befehl zum Senden sieht wie folgt aus:
UB_Uart_SendString(COM2, "#10P500T1000",LFCR);
um den fett markierten Text geht es.
# <Nummer des Servos>
P <Pulse zwischen 500 und 2500 für die Richtung des Servos>
T <in welcher Zeit er an der Stelle sein soll>
Wenn ich den Befehl wie oben ausführe klappt es auch, alllerdings will ich ja manche Bewegungen berechnen lassen und möchte wie folgt mit Funktionen zur Bewegung arbeiten.
Code:
void bewege(int gelenk,int wert,int zeit)
{
UB_Uart_SendString(COM2, "[B]"#"gelenk"P"wert"T"zeit[/B]",LFCR);
return;
}
o.g. ist nur zu Veranschaulichung.
ich habe schon einiges ausprobiert aber nichts funktioniert bis jetzt.
beim printf kann ja wunderbar alles aneinanderreihen, aber ich weiß halt nicht wie ich diese Zeichenkette dann in einem String bekomme. (?)
habe die übergebenen int Werte in chars umgewandelt und versucht mit mehrere strcat Befehlen aneinanderzuketten.
Da kam aber nur ein ? beim anschließenden Printbefehl raus.
Die einzelnen Werte und Zeichen hintereinander zu senden (mit anschließendem LFCR) funktionierte auch nicht.
ist es denn wirklich so schwierig?
Ich hoffe da gibt es eine simple Lösung. Soll ja nicht jedes mal ein riesiger Rechenaufwand sein, wenn ich ein Gelenk bewegen will.
Lieben Gruß
Thimo