Wenn du nen Port in ner while Schleife toggelst, wirst du mit nem 24MHz Controller nie 24MHz erreichen. Da müsste er ja mindestens 3 Befehle (Port ein, Port aus, springe zurück) in einem Zyklus schaffen. Das geht nicht. Für genaue Delays im us-Bereich solltest du dir mal die Timer angucken... Für was einfaches und zum Ausprobieren reicht auch schon mal eine For-Schleife.