4051 mux problem?

Stewart Pye stew at uq.net.au
Fri Jul 23 22:29:15 CEST 1999


At 11:31 AM 23/07/99 -0500, Grant Richter wrote:
>LM324s are not the best choice for this application.
>Use FET input op-amps like TL084 or LF444.
>That should reduce your bias current by a factor
>of 1000.
>
>Sample and holds will be adequate for the job.
>
>On most micros, a timer can be used to generate
>an interrupt. This is the interrupt service routine I spoke
>of. The MIDI input would generate an interrupt of higher
>priority, so the refresh will hold off until the MIDI
>routine clears.



That would be nice if the PIC16F84 had interrupt priority. I thaught the
next best thing was to poll the timer overflow flag. There is only going to
be a small variation in timer overflow detection time.  <100us for sure. 

I was going to use FET input OpAmps but I was trying to keep it single
supply. I might try -5v on the mux 4051 and see if it helps then I could
use it for some TL084 as well.

Regards,
Stewart.



   
>----------
>> From: Stewart Pye <stew at uq.net.au>
>> To: Grant Richter <grichter at execpc.com>; synth-diy at mailhost.bpa.nl
>> Subject: Re: 4051 mux problem?
>> Date: Friday, July 23, 1999 2:33 AM
>> 
>> At 12:13 AM 23/07/99 -0500, Grant Richter wrote:
>> >That would be the current out of the op-amp input.
>> >Remember, even if they are FET inputs, they still require
>> >some finite amount of current flow to stay active.
>> >
>> >In this case they source current, so the voltage drifts up.
>> >If they sank current the voltage would drift down to -V.
>> >
>> >Typically in this arrangement you would write an interrupt service
>routine
>> >that scans a certain number of memory locations into the
>> >sample and holds. That way, the main code routine only has to write
>> >values to the RAM buffers and the interrupt routine takes
>> >care for scanning them out. For MIDI, you would like the service routine
>> >to refresh all channels within one millisecond.
>> >
>> >One basic assumption is that time differences less than a millisecond
>> >are not perceptible. Possibly wrong, but that is the reason MIDI has
>> >such a low baud rate. If your triggers are within a millisecond of
>> >each other, it should have minimum "flam" effect.
>> 
>> 
>> The MIDI input is the only interupt used. (It's a software serial pot
>using
>> the 
>> EXT INT pin).
>> 
>> -The timer is polled to check if it's ready for an output update,
>including
>> bringing a tigger low again.
>> -Each trigger output is triple buffered using 3*8 bytes of 'TrigOn' 
>flags
>> (8 triggers) registers. 
>> -The actual output values are stored in 8 'VelOut'     registers. 
>> -When a relevant noteon velocity byte byte is e
>> 
>> This ensures that almost as soon as the MIDI velocity byte is recieved it
>> is output to te DAC and MUX. Certainly before another MIDI message will
>be
>> recieved. (I have to buy new batteries for my calculator tomorrow!). It
>> also ensures the pulse width doesn't vary too much, while enabling
>> reasonably long pulses. 
>> 
>> Thanks Grant,
>> Stewart
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> >> From: Stewart Pye <stew at uq.net.au>
>> >> To: synth-diy at mailhost.bpa.nl
>> >> Subject: 4051 mux problem?
>> >> Date: Thursday, July 22, 1999 6:58 PM
>> >> 
>> >> Hi...
>> >> 
>> >> I've built a midi to drum trigger unit. The output of the micro goes
>to a
>> >> DAC and then to a 4051 mux. The mux then goes to an opamp buffer with
>> >> parrallel cap.(S&H similar to paia midiCV) The problem is:
>> >> 
>> >> If I send 00h to the dac then switch through each channel of the DAC
>to
>> >> clear the triggers so no outputs trigger, they stay low for a while
>and
>> >> then start rising which causes oscillation of the drum oscillators. I
>> >would
>> >> have thaught that they would stay low. 
>> >> 
>> >> The 4051 supply is +12V and gnd. Could this be the problem? Maybe I
>> >should
>> >> use -12V instead of ground. It's not really a problem because I just
>keep
>> >> refreshing the mux. I'd really like to know why this is happening
>though.
>> >> Any ideas?? 
>> >> 
>> >> Regards
>> >> Stewart.
>> >
>> >
>
>




More information about the Synth-diy mailing list