Setze am besten mal F_CPU von Hand, damit auch wirklich sichergestellt wird, dass im Programm mit 16000000 Hz gearbeitet wird. Achte auch auf Warnungen wie "warning: F_CPU redefined" die ein Hinweis darauf sein können, dass im Quelltext F_CPU an irgendeiner Stelle auf einen falschen Wert (mit dem dann weitergearbeitet wird) gesetzt wird.

(Falls du es noch nicht weißt, dass Makro F_CPU wird von z.B. util\delay.h zur Zeitberechnung verwendet. Setzen mit #define F_CPU 16000000ul)

mfg