Projekt: Stopky na čtyřmístném 7-segmentovém displeji

Teoreticky to přes delay udělat můžeš, ale :

1 - nejsem si jistý, že delay_ms(1) bude trvat přesně 1 ms.
2 - ne každý průběh smyčky bude trvat stejně dlouho v závislosti na splněných/nesplněných podmínkách rozhodování

Načítání impulzů (tedy času) se v těchto případech vždy dělá pomocí čítače a buď procesor běží na krystalu nebo alespoň čítač běží v asynchronním režimu na externí krystal nebo jiný přesný zdroj hodin. Řešil jsem podobnou věc (i když ne stopky) s mcu ATmega8A. Procesor jsem nechal běžet na IntRC 8 MHz, naprogramoval jsem pojistku CKOPT a na piny TOSC1/TOSC2 jsem připojil krystal 32768 Hz jako zdroj hodin pro Timer/Counter2, který jsem přepnul do asynchronního režimu a který zajišťuje co možná nejpřesnější čítání.