Ja, mijn stukje code is in C.
Ik had een functie "plot (x, y)" bedacht als je circels had willen tekenen.
Mijn voorbeeld functie is handig als je sin (en evt cos) achter mekaar nodig hebt, bijvoorbeeld omdat je een circel aan het tekenen bent, of omdat je een sinus signaal wilt uitsturen.
Als je 10 bits nodig hebt, kan je x initializeren op 511, en alle bits van de x (of y) variabele gebruiken.
Als je meer dan 256 stapjes nodig hebt per radiaal, dan moet je meer shiften voordat je ze er bij optelt. Als je minder stapjes nodig hebt, moet je minder shiften.
Is echt super simpel aan te passen voor wat je nodig hebt.
Als ik begrijp dat je met 10 bits PWM een audio signaal wil maken, en je systeem loopt op 20MHz, dan kan je een volgende sample na 50 us aanleveren. Hmm. 20kHz. nog niet zo gek. Als je een 1 kHz signaal wil maken, heb je dus 20 puntjes op de circel nodig. Ongeveer 3 puntjes per radiaal. Als je dan met 16 stapjes per radiaal (dus x += y>> 4) gaat werken, en dan de juiste "ongeveer 5 stapjes" neemt, zal dat behoorlijk nauwkeurig genoeg zijn, hoor.