Du hängst an den PWM Ausgang einen Tiefpass.
Dann legst du dir ein Array an, das grobe Werte einer Sinus-Schwingung
beinhaltet.
Mit einem Timer-Interrupt lädts du dann nacheinander die Werte des
Arrays in dein PWM-Modul, wodurch du am Ende eine Sinus-Schwingung am
Ausgang hinbekommst und somit eine schöner konstanter Ton.
Natürlich kannst du in das Array auch eine x-beliebige Tonfolge ablegen
oder einfach ein WAV-File rein laden und dieses dann mit dem Timer
abspielen lassen. (Gewünschtes 8-bit WAV-File mit einem Hex-Editor
öffnen, geeigneten Bereich suchen und in ein Array kopieren)