Hi,

so hab mal den Code bearbeitet:

Code:
#include "RP6RobotBaseLib.h" //Code by Pr0gm4n© v1.1 Fahrtenregler/Servos an ADC0 und ADC1 die entgegengesetzt drehen

void vorwaerts(int geschwindigkeit, int zeit)//geschwindigkeit zwischen 0 und 5, bei 0 = stillstand; zeit in ms
{
     if(geschwindigkeit > 5)geschwindigkeit = 5;
     if(geschwindigkeit < 0)geschwindigkeit = 0;
     int x = 15+geschwindigkeit;
     int i;
     for(i=0;i<(zeit/20);i++)
     {
            PORTA |= 1; 
            sleep(x); 
            PORTA &= ~1; 
            PORTA |= 2; 
            sleep(30-x); 
            PORTA &= ~2; 
            sleep(170);
     }
}

void rueckwaerts(int geschwindigkeit, int zeit)//geschwindigkeit zwischen 1 und 5; zeit in ms
{
     if(geschwindigkeit > 5)geschwindigkeit = 5;
     if(geschwindigkeit < 1)geschwindigkeit = 1;
     int x = 15-geschwindigkeit;
     int i;
     for(i=0;i<(zeit/20);i++)
     {
            PORTA |= 1; 
            sleep(x); 
            PORTA &= ~1; 
            PORTA |= 2; 
            sleep(30-x); 
            PORTA &= ~2; 
            sleep(170);
     }
}

void links() // oder rechts, das musst du testen, hängt davon ab, was an adc0 oder adc1 hängt
{
     int x= 17; // hier kannst du an der geschwindigkeit in der kurve rumprobieren (15 < x <= 20)
     int y= 20; // hier kannst du am Winkel der Drehung rumprobieren, das hängt von den Motoren ab, einfach ausprobieren dann siehst du was gut iss xD
     int i;
     for(i=0; i<y ;i++) 
     {
              PORTA |= 1;
              sleep(x);
              PORTA &= ~1;
              sleep(200-x);
     }
}

void rechts() // oder links, das musst du testen, hängt davon ab, was an adc0 oder adc1 hängt
{
     int x= 17; // hier kannst du an der geschwindigkeit in der kurve rumprobieren (15 < x <= 20)
     int y= 20; // hier kannst du am Winkel der Drehung rumprobieren, das hängt von den Motoren ab, einfach ausprobieren dann siehst du was gut iss xD
     int i;
     for(i=0; i<y ;i++) 
     {
              PORTA |= 2;
              sleep(x);
              PORTA &= ~2;
              sleep(200-x);
     }
}


void initMotoren()
{
     DDRA |=3;
     vorwaerts(0, 10000);
}


int main(void) 
{ 
   initRobotBase(); 
   initMotoren();

   while(true) 
   { 
     vorwaerts(2, 1000);
     vorwaerts(0, 100);
     rueckwaerts(2, 1000);
     vorwaerts(0, 100);
   } 
   return(0); 
}
musst in links(); und rechts(); noch rumprobieren was bei deinen Motoren eine schöne Kurve verursacht xD

LG Pr0gm4n