I want to build a generic multiplexer for arduino, that would be capable of PWM controlling 8~16 outputs, for example.
I've read that the 4051/4067 are not recommendable, however I cannot find the reasons why. The 5940 seems ideal, but is too expensive and has a current output that I do not need (plan to use mosfets).
I have considered the 74hc374 and 74hc595, but they both seem to receive negative comments, not always specifying in what exactly they are not good.
I'm not expecting you to explain all of them to me, just maybe point some good reading resources, since most I could find were rather superficial.
[my knowledge in 'programming logic' and syntax is not very developed, please pardon my ignorance.]
Your application doesn't really match the chips are you suggesting.
Except for the TLC5940 none of the chips you researched are viable for PWM outputs. Part of the reason the TLC5940 costs what it does is that it provides 16-channels of PWM.
what I want/need is 16 different channels of PWM ('simultaneous' and individually controlled), something like controlling a 4x4 LED matrix for example (not this case). I do not want to build a matrix every time I have to use this setup. It seems to be something of a "perfect" solution, at least to me, so I would understand if its something that does not exist. Maybe just too perfect...
Mike,
Thanks for your suggestion, I was looking for a "hardware" solution if possible, in some cases I might need extra CPU headroom. In any case I will try this solution, since it seems to be the one with best cost/benefit in simpler cases.
You may want to look at my examples here: http://www.blinkenlight.net. Depending on the frequency requirements different solutions are possible. If binary PWM is acceptable this will give you a lot of CPU headroom. I am working on binary PWM examples but Google will find some for you right now.