0
\$\begingroup\$

I'm using a max 7219 to control 7 highside drivers (which provides power to two higher voltage common cathode displays). The components on my breadboard are connected according to this schematic: ignore the buttons and leds connected to the Arduino The highside drivers work as expected when not used with the max7219. The P channel mosfet is normally off since it's gate is at 12v, but when 5v is applied to the base of the npn transistor, the gate of the mosfet is pulled low which allows current to flow to the segments. If a common cathode of the 7 segment displays is connected to ground, a segment will light up.

However, when the max7219 is connected to the circuit, it displays the correct numbers (according to the code i'm running on the arduino) but all the segments that are turned on are dimly lit. The ones that are "off" also posses some brightness. I measured the output voltage of all segment drivers on the max7219, while on and off, and it turns out the "high" state is 1.278v and the "low" state is 0.654v.

In the datasheet of the max7219 it reads "On the MAX7219, when a segment driver is turned off it is pulled to GND." Which does not happen in my case. The output voltage of the segment drivers are also too low. I don't really know what is at fault here. I can post pictures of the breadboards if needed.

Any help would be massively appreciated.

Edit: I solved the problem. There was a problem with the code I wrote.

\$\endgroup\$
  • \$\begingroup\$ Since you've solved the problem, could you post an answer and explain what the problem with the code was? Then accept the self-answer. \$\endgroup\$ – Nick Alexeev Apr 8 at 19:50
  • \$\begingroup\$ Yes I will. However I recently stumbled upon another problem, which I will try to solve so I can phrase my answer better incase anyone else has the same issue. \$\endgroup\$ – Jesper Bolin Apr 10 at 14:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.