[sdiy] Top Octave Generator (was Chinese MG-1s??!?)

ASSI Stromeko at nexgo.de
Thu May 1 13:03:41 CEST 2008


On Donnerstag 01 Mai 2008, Veronica Merryfield wrote:
> I suspect you could probably roll any differences of 3 to 4 cycles
> say together thus reducing the table size. Now if these micros could
> have an instruction 'stall Rs' that stalled the micro for a number of
> clocks, the code would be very simple - just walk an index down a
> table outputting the word from one table, waiting the amount in the
> other table then incrementing the index. The table of time
> differences could have the code execution time for the loop removed
> hence the adding events together.

What you are looking for is not an instruction on your standard 8-bit 
uC, but is typically implemented as a timer peripheral function.  For a 
TOG, you'd need one or more timer(s) with individual compare units that 
can toggle an output pin of the uC and produce an interrupt to request 
the new compare value.  This means you'd need to service the compare 
reload interrupt in less than 239 timer ticks even in the presence of 
contention and be able to deal with nested interrupts.  Since you need 
12 or 13 compare channels for a complete TOG, this is not easily found 
in a low-end uC.  The upcoming ATxmega will be able to deal with that 
if I read their datasheets correctly, but cannot replace a TOG chip 
directly as it has no 5V I/O.


Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk]>+

DIY Stuff:
http://Synth.Stromeko.net/DIY.html




More information about the Synth-diy mailing list