Software PWM ist schon die bessere Lösung gibt hier im Forum ja Libs dazu.
Im Prinzip ist das schon richtig, aber das erzeugt auch eine Menge Prozessorlast. Wenns möglich ist würde ich immer Hardware PWM den Vorzug geben.
Es sei denn man braucht mehr Ausgänge, oder die Ausgänge müssen frei wählbar sein, oder die Timer sind mit anderen Aufgaben belegt.