Also hier man Quellcode:

Die nötigen Konstanten:

Code:
// Konstanten
#define TRIGGER_IMPULS PORTB.3
#define ECHO_PIN PIND.6
Diese Funktio ist zunächst mal für den Triggerimpuls:

Code:
// Funktion um Triggerimpuls zu erzeugen
void trigger(){              
    unsigned int i;   
    TRIGGER_IMPULS = 1; 
    for(i = 0;i<1000;i++); 
    TRIGGER_IMPULS = 0;    
}
Diese Funktion dient dann zum eigentlich Messen des Abstandes:

Code:
// Funktion zum messen der Distanz zwischen Roboter und Gegenstand
unsigned int distanzmessen(){
    unsigned int entfernung;
    entfernung = 0; 
    trigger();   
    while(ECHO_PIN == 0);    
    while(ECHO_PIN == 1){
        entfernung++; 
    }                                                                            
    return entfernung;
}

Und zum Schluss noch eine Funktion mit dem man dass ganze Auswertet und dementsprechende Dinge ausführt wie anhalten und fahren:

Code:
// Funktion zum anhalten wenn ein Gegenstand im Weg ist
void vorgegenstandhalten(){
    unsigned int l, entfernung2;
    entfernung2 = distanzmessen(); 
    for(l = 0;l<0xffff;l++);
    if(entfernung2 <= 2000){
        Motorstop();
    }else if(entfernung2 > 2000){
        Motorvor();
    }  
}
Vielleicht hilf es ja noch jemandem weiter

Danke nochmal an euch alle!!!!!