Hi,
300000000 ist unmöglich da die variale nur max. 65536 zulässt.

und warum schreibst du:
PORTB = (15<<PB0); // Enable pullup on

Ich würddas schreiben:
PORTB |= (1<<PB0); // Enable pullup on

Grüße
Superhirn

PS: Mit deinem Problem kenn ich mich nicht so aus. aber dass ist das, was ich nicht verstehen kann.