Hi, I am wondering if anyone here could help me take the next step with my electronics and help me realise what i am missing with this circuit i am working on. I am building a "16 step sequencer" which outputs 16 control voltage levels in a sequence to drive an analogue synthesizer, there are numerous resources for this on the web, the most populour beginners version being the "baby 10 sequencer". This uses a 4017 decade counter to step through 10 different resistors in time with an incoming clock signal and will play notes on an analog synthesizer (the synth treats 1v as an octave over a span of 5v). Anyway to cut a long story short, the limitation of 8 or 10 steps has lead me to want to build a 16 step version (I bought a hardware unit for doing this last xmas, but at £400 GBP, I couldn't justify the xost as its just a hobby so I returned it to the store and have set upon building my own version for a mere fraction of that cost (and learning electronics in the process!).... the circuit below is not really how my circuit is now because I have discovered Arduino so have used Arduino to do a lot of the grunt work, it also gives me some great flexibility I couldn't get with the CMOS circuit (ie. the ability to move the sequence backwards, or randomly, which makes for a far more interesting device).
However the Arduino I have (UNO) has a limited amount of outputs so creating the 16 step machine I want is still not entirely possible but I had a thought about using AND gates and a different counter which is reset after the 8 steps, then using logic determinig whether the 8 steps should be driving the 1st 8 steps or the 2nd 8 steps (9-16). I ended up having to use 4 Quad AND gates (I haven't actually built it yet...but have tested the theory with one QUAD and gate and doing a dual 4 step which 2 counters which only count to 2). I then realised i could do the same with CMOS so have the circuit built below, but my final will use Arduino.
I just think there must be a better way of doing this however? I have read about shift registers and heard phrases like "Gate Array logic" I am thinking maybe that is the option I need to go down but I can't find anything that explains it in a way that makes sense to me. Can anyone tell from the diagram if I am doing it right or if there are easier ways? I really want to have physcial control of all 16 outputs, I have done things like using arrays in arduino and storing the value with an input pot and switching between the variables to set the output and using PWM through a filter to do a similar thing, but going through a menu to set each output value defeats the purpose of this instrument. The 5V output from the Arduino matches exactly the requirements for my synthesizer, but I need an LED indicator next to each pot so I know where the sequencer is. In this diagram I have just drawn the LED's coming off the gates but in reality this steals too much current and affects the output. With an eight step version I have used 8 NPN transistors and fed the base a tiny current through a 2M resistor after the GATE and driven the LED's with a 9V battery instead. It works real well but ideally I'd like the circuit to have just one power supply, I'm also worried that the 9v power could get into the arduino. I also would like to avoid having to use 16 transistors, are there alternatives here? What is the correct way to do this? Should I be using opto isolators? And can I do something like have multiple voltage regulators with one for powering the arduino and one for powering the LED's?
Hope this post isn't too long winded! Appreciate any insights into how to design this better! (I know there are some completed circuits already kicking around on the web for this, but I'm determined to try learn how to do this myself!
)
ps. I have seen designs which slave two 4017's (ie. one enabling the other, but what I'm trying to simulate here is the limited outputs from the arduino!) Apologies if the diagram isn't very clear, I can explain it fuller if anyone is particularly interested in the function?