MAX7219 Strangeness

I'm trying to get a MAX 7219 hooked up to my Arduino Uno and some very strange things are happening.

I've gone through the process of writing my own code to drive it, then taking the playground example of an 8x8 matrix, but neither of these is actually making any change to the LED state. Because of this, I've been slowly stripping away sections of code to get back to something that works.

I've now got to the stage where I have completely removed the arduino :astonished:

I've got this prototyped up on breadboard - schematic attached - and my test LED is always on from the moment power is applied. According to the datasheet, this chip should power on in a shutdown mode, with all outputs disabled, that needs to be setup via the serial interface before any LEDs will turn on. Additionally, If I don't ground the DIN/LOAD/CLK lines then the LEDs flicker annoyingly between a full bright (measured at 10mA, the set value from R1) and barely on.

I've tried adding some close decoupling by means of C1 and C2, with no difference.

Has anyone experienced this before?

Every webpage, blog and forum post espouses how simple and easy to use these chips are, but that's not my experience. So far I've tried two different chips, I've got another 8 to go, but I'm reluctant to just throw them in and see what happens, in case it's me thats breaking them.

As they were bought for not very much money via ebay from some guy in HK, is it conceivable that they could be fakes or mistreated?

Pol.

Fakes? Certainly possible.

I did the same as you - read the datasheet, set up the various registers, successfully write out 8 digits now.

Datasheet says "Display Blanked on Power-Up", why would expect the LED you show to light up?

"On initial power-up, all control registers are reset, the
display is blanked, and the MAX7219/MAX7221 enter
shutdown mode. Program the display driver prior to
display use. Otherwise, it will initially be set to scan one
digit, it will not decode data in the data registers, and
the intensity register will be set to its minimum value."

With CS/ low, the chip is expecting to have data sent in. Maybe that is doing weird things to it as it powers up.

Thanks CrossRoads,

Fakes? Certainly possible.

A great man once said "when things look too good to be true, they probably are". I got 10 for £5, whereas farnell is charging £15 each - meep.

why would expect the LED you show to light up?

I've just re-read what I wrote about and it's not the clearest - I was expecting the LED to be off as indicated in the datasheet, however I got light :~

The line you refer to varies in purpose, on the 7221 it is "CS/", on the 7219 it is "LOAD". I've just tried pulling it high, rather than grounding it and there's no change in behavior.

Cheers,
Pol.