Der Code wird Euch überraschen, der ist so einfach. Hab selten so wenig Code gebraucht für so eine komplizierte Sache.
Voraussetzung ist natürlich der Umbau auf die IR-Hinderniserkennung. Siehe Beitrag: https://www.roboternetz.de/phpBB2/viewtopic.php?t=11114

Code:
#include "asuro.h"
#include <stdlib.h>

int main(void)
{
   Init();
   DDRD |= (1 << DDD1);
   PORTD &= ~(1 << PD1);
   OCR2  = 0xFD;			//Pulsbreite 2
   MotorSpeed(250,250);
   
   while(1)
   {
	if (PIND & (1 << PD0)){
		StatusLED(GREEN);
		MotorDir(FWD,FWD);}
	else{
		StatusLED(RED);
		MotorDir(RWD,RWD);}
   }
   return 0;
}
Gruß Waste