VisRoboris
Newbie level 4

Hi there.
I'm quite a newbye in this field, but I'd like to show you my ideas and possibly discuss how to improve them.
In my current project I need to create a little Led stick of 16 led with a simple interface so that any mcu may control it.
In essence, I have 4 pin to address a single led , an analog pin and an enable digital signal. When enable is high, the analog voltage is written to the memory linked to the specified led so that one can execute something like "SetLedBrighness(num, brightness)".
I use the 4 pin bus as the select input to two 6 channels demultiplexers to connect the enable and analog signals to a specific pin. Then, to store the analog value, I simply use a capacitor with a buffer like this:

The problem is, I have to repeat this for each and every LED (*3 if I use RGB led) and it would become quite complicated to do in a PCB..
so my first question is: how can i simplify this circuit? Maybe there are some ICs that already implement this?
I'm quite a newbye in this field, but I'd like to show you my ideas and possibly discuss how to improve them.
In my current project I need to create a little Led stick of 16 led with a simple interface so that any mcu may control it.
In essence, I have 4 pin to address a single led , an analog pin and an enable digital signal. When enable is high, the analog voltage is written to the memory linked to the specified led so that one can execute something like "SetLedBrighness(num, brightness)".
I use the 4 pin bus as the select input to two 6 channels demultiplexers to connect the enable and analog signals to a specific pin. Then, to store the analog value, I simply use a capacitor with a buffer like this:

The problem is, I have to repeat this for each and every LED (*3 if I use RGB led) and it would become quite complicated to do in a PCB..
so my first question is: how can i simplify this circuit? Maybe there are some ICs that already implement this?