@SprinterSB

danke, ich denke, ich habe es jetzt verstanden.

Ich baue mir eine Schleife die alle 0,1ms "Tick" hochzählt.
Im Timer Int. (10ms) zähle ich "Duty" hoch.
Beide Zähler zählen jeweils bis 200. Wobei "Tick" dann wieder auf "0" gesetzt wird.
Somit erhöht sich in 200 Schritten ( 2 Sekunden) der "pwm=1" Zyklus in 0,1 ms Schritten.

Das der Controller während dessen nichts anderes machen kann, ist kein Problem.
Ich werde es heute mal ausprobieren.

@wkrug

wenn ich einen Timer frei hätte, würde ich Hardware PWM dafür nehmen.