Die Funktion wait() startet einen Timer der eine kurze wartezeit verursacht, da es mir so bekannt ist, dass man kurz warten sollte nachdem man den triggerimpuls gegeben hat

Code:
void wait(){
    unsigned int i;
    for(i = 0;i < 65000;i++){
        TCNT0 = 0;
        TCNT1H = (0xffff - 16666)>>8;
        TCNT1L = (0xffff - 16666)%256;
        TIFR = 0; 
        TCNT0 = 1;                     
        while(TIFR == 0);
        TIFR = 1;
    }
}
...ich dachte man muss den triggerimpuls nur kurz anmachen danach wieder aus und dann das echosignal abfangen.

...der triggerimpuls wird doch durch den befehl triggerimpuls = 1 gestartet

Danke für die schnelle antwort