ich habe den rp6 zu weihnachten bekommen und das m32 und das lcd display dazu. es hat alles super gefunzt, bis ich das m32 draufgebaut habe. seitedem weiß ich nich wie ich die motoren richtig ansteuere. hier is meine arbeit (is vieles aus beispielen kopiert):

Code:
#include "RP6ControlLib.h" 	
#include "RP6I2CmasterTWI.h"	
#include "RP6Control_I2CMasterLib.h"


void I2C_requestedDataReady(uint8_t dataRequestID)
{
	checkRP6Status(dataRequestID);
}


void I2C_transmissionError(uint8_t errorState)
{
	writeString_P("\nI2C ERROR - TWI STATE: 0x");
	writeInteger(errorState, HEX);
	writeChar('\n');
}


void Bumpers(void)
{
	if (bumper_left || bumper_right)
	{
		moveAtSpeed(0,0);
		
		if (bumper_left)
		{
		changeDirection(BWD);
		moveAtSpeed(150,150);
		}
	
		else if (bumper_right)
		{
		move(60,BWD,1000,1);
		changeDirection(FWD);
		moveAtSpeed(150,150);
		}
	
		else if (bumper_left && bumper_right)
		{
		move(60,BWD,500,1);
		rotate(60,LEFT,90,1);
		changeDirection(FWD);
		moveAtSpeed(60,60);
		}
	
	}
	
	
}



void ACS (void)
{
	if(obstacle_left)
	{
		setCursorPosLCD(1, 12);
		writeStringLCD_P("LEFT");
		rotate(50, RIGHT, 180, 1);
	}
	
	else
	{
		clearPosLCD(1, 12, 4);
	}
	
	if(obstacle_right)
	{
		setCursorPosLCD(1, 0);
		writeStringLCD_P("RIGHT");
		moveAtSpeed(90,40);
	}
	else
	{
		clearPosLCD(1, 0, 5);
	}
	
	if(obstacle_left && obstacle_right)
	{
		setLEDs(0b0110);
		setCursorPosLCD(1, 7);
		writeStringLCD_P("MID");
		moveAtSpeed(0,0);
		changeDirection(FWD);
		moveAtSpeed(50,50);
	}
	else
	{
		setLEDs(0b0000);
		clearPosLCD(1, 7, 3);
	}
	
	
	
	if(obstacle_left)
	{
		setLEDs(0b0001);
	}
	if(obstacle_right)
	{
		setLEDs(0b1000);
	}
	
	if(obstacle_left && obstacle_right)
	{
		sound(140,10,0);
	}
	else
	{
		if(obstacle_left)
			sound(100,5,0);
		if(obstacle_right)
			sound(120,5,0);
	}
}





int main(void)
{
	initRP6Control();  
	initLCD();
	

	ACS_setStateChangedHandler(ACS);
	BUMPERS_setStateChangedHandler(Bumpers);
	
	

	I2CTWI_initMaster(100);  
	I2CTWI_setRequestedDataReadyHandler(I2C_requestedDataReady);
	I2CTWI_setTransmissionErrorHandler(I2C_transmissionError);

	sound(180,80,25);
	sound(220,80,25);

	setLEDs(0b1111);

	showScreenLCD("ATTENTION", "");
	mSleep(1000);
	setLEDs(0b0000);
	
	I2CTWI_transmit3Bytes(I2C_RP6_BASE_ADR, 0, CMD_SET_ACS_POWER, ACS_PWR_MED);
	I2CTWI_transmit3Bytes(I2C_RP6_BASE_ADR, 0, CMD_SET_WDT, true);
	I2CTWI_transmit3Bytes(I2C_RP6_BASE_ADR, 0, CMD_SET_WDT_RQ, true);
	
	startStopwatch1();
	
	
	changeDirection(FWD);
	
	moveAtSpeed(80,80);
	
	while(true) 
	{ 
	    task_I2CTWI();
		task_LCDHeartbeat();
	}
	return 0;
}
wenn ich moveAtSpeed(x,x) schreibe, dann fährt er auch, aber wenn ich rotate benutze, dann macht er das zwar auch, aber danach passiert nichts mehr
ich bitte um hilfe, bin noch absoluter neuling
lg mo
thx