aso... den ausdruck "strcmp" hab ich nicht gefunden. Aber die while schleife macht ja genau das was ich brauche.

Hab jetzt nur das Problem das er irgendwie nicht zwischen den eingaben unterscheidet...
Code:
#include "RP6BaseServoLib.h"
#include "RP6RobotBaseLib.h"

int8_t deltaX = 0;
int8_t deltaY = 0;
char receiveBuffer[UART_RECEIVE_BUFFER_SIZE];


uint8_t test = 0;

void getCMD(void)
{
	receiveBytesToBuffer(1, &receiveBuffer[0]);
	
	test = receiveBuffer[0] - 48;
	
	if(receiveBuffer[0] == '0')
		{
			deltaX = deltaX;deltaY = deltaY;
		}
	else if(receiveBuffer[0] == 'w')
		{
			deltaX++;
		}
	else if(receiveBuffer[0] == 's')
		{
			deltaX--;
		}
	else if(receiveBuffer[0] == 'a')
		{
			deltaY++;
		}
	else if(receiveBuffer[0] == 'd')
		{
			deltaY--;
		}


}

int main(void)
{
   initRobotBase();
   
   writeString_P("\n\n   _______________________\n");
   writeString_P("   \\| RP6  ROBOT SYSTEM |/\n");
   writeString_P("    \\_-_-_-_-_-_-_-_-_-_/\n\n");

   writeString_P("################\n");
   writeString_P("<<RP6     Base>>\n");
   writeString_P(" Servo - Test 1 \n");
   writeString_P("  Version 1.20  \n");
   writeString_P("################\n\n");
   mSleep(2500);

   setLEDs(0b111111);
   mSleep(500);
   powerON();
   
   initSERVO(SERVO1 | SERVO2);

     
   while(true) 
   {
   
   servo1_position = MIDDLE_POSITION+deltaX;
   servo2_position = MIDDLE_POSITION+deltaY;
	
	getCMD();
	
      task_SERVO();
      task_RP6System();
	  
	  
   }
   return 0;
}
das test = receiveBuffer[0] - 48; hab ich der vollständigkeit halber übernommen.