Einfache Lösung:
Aus Schleifen selbst 'ne Verzögerung bauen, bei 2MHz schafft der Tiny 2
Takte/µS, ein Maschinenbefehl braucht 1,2 oder 3 Takte, eine for/next
dann xxx Takte. Im Simulator 2 Breakpoints setzen und aus der Differenz
der Prozessortakte (wird im Sim. unten mit "Cycles" angezeigt) die
tatsächliche Verzögerung errechnen. Tuning der Verz. geht z.B. mit
Einfügen von:
$asm
NOP
NOP
...
$end asm
1 NOP verbraucht einen Prozessortakt
Wird aus dieser selbstgestrickten Verzögerung eine Subroutine gemacht,
so kann sich je nach Aufrufart eine zusätzliche Verzögerung ergeben,
wenn Register gesichert werden.
Fortgeschrittene Lösung:
Timer/Counter verwenden, Start auf Int0 synchronisieren,
Verzögerungswerte in's Compare-Register. Evtl. könnte eine der PWM Modes
dazu "überredet" werden, gleich das Schaltsignal zu liefern.