A friend and I are making a LED-matrix (about 7x10, white 3.1V-diodes) controlled by an Arduino mini multiplexing both ground (rows) and voltage (columns), but we're having some trouble with our circuit for the control of the power (columns) for the LEDs.
Basically we are doing it with transistors connecting a supply and a resistor to the diode and ground (pic (b)). The problem is, though, that the actual LED matrix and their connection to ground is already made, and we have a bunch of 2N7000 npn-transistors lying around. As far as we have been able to read around the interwebs, the n-channel mosfet is supposed to be connected directly to ground, but this is not possible as the 'diode-ground' component is already made (pic, part (a)).
So my questions are:
1) Is it possible to use these transistors for our purpose, or does the diode between ground and the transistor mess the gate-source voltage reference up in some way (voltage over Rgs in part (c) of the picture)? Will we have to order a new set p-channel mosfets instead?
2) Another problem is that the mosfet needs a minimum voltage of 2.1 from gate to source to turn fully on, and when the diode takes 3.1V, a voltage of at least 3.1+2.1=5.2V should be needed at the gate. The Arduino only outputs about 4.5V which, following my theory here, isn't enough. Could this be solved by using 2 transistors for each diode connection and using the 9V battery supply in some way?
As far at testing we have tried the circuit in part (b), and it partly works. We have some trouble turning the diodes fully off (in practice it's the transistor that isn't off I guess). Furthermore, even though we set all the diodes in the matrix on for the same amount of time, some of them emits more light than others. Could this be due to the missing reference for the transistors between gate and source in the tested circuit (picture, (b))?
We've been developing this beside our studies for some months now, and this problem alone has taken at least half the time (and 9/10 of the frustration), so I decided to try and reach out for some clever heads out there so see if we were missing something.
Thanks in advance.