Davon abgesehen, dass du mit einer Menge Funktionen um dich wirfst, die ich nie gesehen/gebraucht habe, folgender Code funktioniert in der Simulation ohne Probleme:
Code:
#include <avr/io.h>
#include <util/delay.h>

int main(void)
{
    DDRB=0xFF;

    while(1)
    {
        for(uint8_t i=0;i<10;i++) {
            _delay_ms(100);
            PORTB ^= (1 << PB1);
        }
        PORTB ^= (1 << PB0);
    }

    return 0;
}
Unterschiede: Keine komischen Funktionen zum setzen/umschalten von Pins, keine komischen Bezeichner für die einzelnen Pins.

mfG
Markus