peinlich, peinlich... ich wollte eigentlich beides hochladen und habe es vergessen, aber ja klar, hier siehst du beides:

Code:
const int s0 = 53;
const int s1 = 52;
const int s2 = 51;
const int s3 = 50;
const int out = 40;
const int motor1 = 10;
const int motor2 = 11;
const int motor3 = 12;
const int motor4 = 13;
const int trigger = A1;
const int echo = A0;
float red=0,green=0,blue=0;
float redA[10], greenA[10], blueA[10];
float rav=0,gav=0,bav=0;
int counter;
int state=0;
unsigned long time=0;
int currentTime=0;
int previosTime=0;


void setup()
{
pinMode(motor1, OUTPUT);
pinMode(motor2, OUTPUT);
pinMode(motor3, OUTPUT);
pinMode(motor4,OUTPUT);

pinMode(trigger, OUTPUT);
pinMode(echo, INPUT);
// pinMode(irPin,INPUT);

pinMode(s0, OUTPUT);
pinMode(s1, OUTPUT);
pinMode(s2, OUTPUT);
pinMode(s3, OUTPUT);
pinMode(out, INPUT);

//Scaling to 20% frequency
digitalWrite(s0, HIGH);
digitalWrite(s1, LOW);
Serial.begin(9600);

}

int getDistance()
{
long distance=0;
long t=0;
digitalWrite(trigger,LOW);
delayMicroseconds(3);
noInterrupts();
digitalWrite(trigger,HIGH);
delayMicroseconds(10);
digitalWrite(trigger,LOW);
t=pulseIn(echo,HIGH);
noInterrupts();
t=(t/2);
distance=(t/29.1);
return(distance);
}

void driveForward()
{
analogWrite(motor1,200);
analogWrite(motor4,223);
}

void driveBackward()
{
analogWrite(motor2,200);
analogWrite(motor3,223);
}

void turnLeft()
{
analogWrite(motor1,0);
analogWrite(motor4,200);
}
void turnRight()
{

analogWrite(motor1,200);
analogWrite(motor4,0);
}
void brake()
{
analogWrite(motor1,0);
analogWrite(motor2,0);
analogWrite(motor3,0);
analogWrite(motor4,0);
}


void loop()
{

int distance=getDistance();
Serial.println(distance);
if(distance<15)
{
turnRight();
// driveBackward();

}
else
{
driveForward();
}
Achtung nicht alle Variablen werden benutzt. Das liegt daran, dass ich nur den problematischen Code kopiert habe, alles andere läuft.

Und hier das Bild:
Klicke auf die Grafik für eine größere Ansicht

Name:	Schaltplan.jpg
Hits:	12
Größe:	53,1 KB
ID:	33416