[sdiy] Reverse Sawtooth
Matthew Smith
matt at smiffytech.com
Mon Jan 24 12:04:54 CET 2011
Quoth Tim Parkhurst at 24/01/11 20:43...
...
> To save some memory, have you thought of only keeping half the wave in
> the lookup table, and inverting & offsetting it for the second half?
Thanks, think I saw that technique in an article I was pointed to in the
last couple of days. However, I've tried stripping back the table
(actually dumping one of the waveforms) and have found that there is
still very little programme space left - probably not enough to do the
calcs!
So - for the purposes of testing, I will stick with the ATTINY2313 but:
* remove the triangle wave from the wavetable
* strip the software to bare bones and time the system externally, using
INT0. (Even sending the frequency over serial was too much for the
available memory.)
Testing should actually be easier like this (and it only took me about 4
minutes to write the programme!) as I can drive the interrupt pin from a
signal generator. Will take a couple of variables out of the debugging
process.
After Tom's comment about the DAC on the XMega, I thought I'd better
check the datasheet of my external DAC (DAC0800LCN) to make sure that
was fast enough! Phew - it was. 100ns settling time, which this
calculator makes 10MHz.
Thinking about my "more FLASH but slow ATMega8," I think I'll re-add the
triangle and reverse-sawtooth, bump my samples up to 256 bits and see
what the code size looks like - should give me a nice LFO.
Cheers
M
--
Matthew Smith
Smiffytech - Technology Consulting & Web Application Development
Business: http://www.smiffytech.com/
Blog/personal: http://www.smiffysplace.com/
LinkedIn: http://www.linkedin.com/in/smiffy
Skype: msmiffy
Twitter: @smiffy
More information about the Synth-diy
mailing list