[sdiy] Soft ADSR ways?

karl dalen dalenkarl at yahoo.se
Mon Feb 14 09:21:51 CET 2011


>You always finish up with a LUT because anyone who tries to
>do maths on a $2 processor is having a laugh.

I'm laughing all the time...almost...in between compile
sessions i cry and rip's off my non existent hair.

> Doing all the maths beforehand and storing
> the results in a LUT is the only sensible way to avoid hard
> sums. There are one or two situations where doing actual....

> Hi Karl,
Hi again Tom! :)
 
> I tried various approaches along the lines of calculating
> simple RC charging/discharging curves when I was designing
> my VCADSR. This is essentially an impulse and a IIR filter,
> I guess. I found that the output wasn't bad, but that
> getting sufficient control resolution was very difficult. I
> wanted a 1:10000 range (1ms to 10secs) and I found I needed
> ridiculous levels of accuracy for my control variables.
> Ridiculous for an 8-bit PIC, anyway.

I found a neat example at dsp list, goes like this:
vout = 15 * ( 1 - exp(t/(RA*C))
vout = 10 * exp(t/(RD*C))
vout = VS * exp(t/(RR*C))

Sustain obvious and the exp and log by LUT.

KD





More information about the Synth-diy mailing list