[sdiy] VCDO using PIC16C771
Andre Majorel
aym-htnys at teaser.fr
Thu Feb 22 17:34:51 CET 2007
On 2007-02-22 10:44 -0500, jean-pierre.desrochers at ville.quebec.qc.ca wrote:
>
> >It seems to me that, for this application, 4 kB of RAM would be
> >more useful than 4 kB of EEPROM. You will have to update the
> >note-number-to-DAC-value table continuously because of temperature
> >drift and EEPROMs can only take so many cycles.
>
> The idea was that the lookup table / PIC combination would keep
> the pitch stable even when the XR2206 drifts.
But when it does, there'll be a potentially large glide at the
beginning of each note. And it's not just until it warms up ; if
you burn the EEPROM in Winter, it will always be off in Summer and
vice-versa.
> >Yes, with RAM, you'll need to initialise the table at power on,
> >but you would have the same problem with an EEPROM ; chances are
> >the data in the EEPROM is for a warm device.
>
> Think of the size of the cpu ROM code "embedded lookup table"!!
> This would take at least 3Kbytes of valuable ROM.
What ROM ? And how is 4 kB of ROM (or RAM) more valuable than 4 kB
of EEPROM ? I don't get it.
> Even with a big log formula to calculate each RAM cells.
> No startup filling RAM routine, the EEPROM has already
> the log values for the VCO XR chip to stay in tune
> with the help of the PIC.
> The idea is to keep less component and small code size.
Unless I'm missing something, the component count is the same.
Lose an EEPROM, gain an SRAM chip. The code size must not be very
different ; the servo routine is the hard part. The auto tune
routine that initialises the table is just a loop around that.
--
André Majorel <URL:http://www.teaser.fr/~amajorel/>
Do not use this account for regular correspondence.
See the URL above for contact information.
More information about the Synth-diy
mailing list