I do not know what to do next. I ordered the same LED Matrix display as Anobium. And from the same ebay link that he suggested. Also, I ordered another GLCD KS0108. 2 pieces in my attempts did not work ...
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
OK. We start at the beginning. I am assuming this is the same as the demo code and therefore this is a PPS device.
Cut back to the basic #chip 16f18855, define the constants for SPI but no PSS. Then, within a DO-LOOP check each communication line by toggling on and off. Inspect these signals at the MAX7219 LED Matrix. Only check one line at a time, then, check the next next line. See LEDMATRIX_Max7219_TestConnectivity_16f18855.gcb in your demos for this test.
If the all the lines are toggling then we know that connections are good. So, now add back in the PPS for the SPI. Removing the tests for the connectivity change the code within the DO-LOOP to SPI. Set the SPI Mode (outside the DO-LOOP) and within the DO-LOOP send using SPITransfer (you will need to recieve also). Test - are you get data on the SDA? and the other lines? See LEDMATRIX_Max7219_TestSPI_16f18855.gcb in your demos for this test. You can connect a USB/Serial converters to assist in the diags.
As you can tell from the two programs above - I had communication issue and I thought these tests would be useful to others.
Test and let us know the results.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Yes, one display of two was damaged. I add one display for the test. With this test program, it flashes 3 times, then pauses for about 15 seconds, then flashes 3 times again. The pauses are irregular, the display behaves differently after each restart.
#chip 16f18855,32
#config MCLRE=on
#option Explicit
'Set SPI pins for the Max7219
#define Max7219_DI portb.4
#define Max7219_DO portb.5
#define Max7219_SCK portb.3
#define Max7219_CS portc.3
dir Max7219_DO out
dir Max7219_SCK out
dir Max7219_CS out
do
set Max7219_DO on
set Max7219_SCK on
set Max7219_CS on
wait 1 s
set Max7219_DO off
set Max7219_SCK off
set Max7219_CS off
wait 1 s
loop
end
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hook up an LED with resistor. Connect that to the connection on the LED Matrix. Ensure you get the flashing LED on one and only one of the connections on the LED Matrix.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Pulses the Max7219_SCK and Max7219_CS is regularly, LED flashes with 1sec interval, but on the Max7219_DO is not regulary LED Flashing, sometimes LED cut off.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
The above test code is used. red LED connected to Max7219_CS portc.3, blue LED Max7219_DO portb.5
I think the video will be better: https://youtu.be/wFPAjKrFiD4
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Yess
I do not know what to do next. I ordered the same LED Matrix display as Anobium. And from the same ebay link that he suggested. Also, I ordered another GLCD KS0108. 2 pieces in my attempts did not work ...
OK. We start at the beginning. I am assuming this is the same as the demo code and therefore this is a PPS device.
Cut back to the basic #chip 16f18855, define the constants for SPI but no PSS. Then, within a DO-LOOP check each communication line by toggling on and off. Inspect these signals at the MAX7219 LED Matrix. Only check one line at a time, then, check the next next line. See LEDMATRIX_Max7219_TestConnectivity_16f18855.gcb in your demos for this test.
If the all the lines are toggling then we know that connections are good. So, now add back in the PPS for the SPI. Removing the tests for the connectivity change the code within the DO-LOOP to SPI. Set the SPI Mode (outside the DO-LOOP) and within the DO-LOOP send using SPITransfer (you will need to recieve also). Test - are you get data on the SDA? and the other lines? See LEDMATRIX_Max7219_TestSPI_16f18855.gcb in your demos for this test. You can connect a USB/Serial converters to assist in the diags.
As you can tell from the two programs above - I had communication issue and I thought these tests would be useful to others.
Test and let us know the results.
Yes, one display of two was damaged. I add one display for the test. With this test program, it flashes 3 times, then pauses for about 15 seconds, then flashes 3 times again. The pauses are irregular, the display behaves differently after each restart.
You will get randon stuff on the LED Matrix during these tests. You need to check each line indepentenlty.
Testhing the Max7219_DO.
Do you have a scope? I would check the Max7219_DO connection on the LED Matrix. You need to see the pulse that is specified in the program.
Then, test Max7219_SCK then Max7219_CS. Again, test with scope.
Essentially, you are testing all three lines independently. This is to confirm the connectivity is correct.
No, I do not have scope. What would you recommend?
Hook up an LED with resistor. Connect that to the connection on the LED Matrix. Ensure you get the flashing LED on one and only one of the connections on the LED Matrix.
Pulses the Max7219_SCK and Max7219_CS is regularly, LED flashes with 1sec interval, but on the Max7219_DO is not regulary LED Flashing, sometimes LED cut off.
Take a photograph. Hi_res please - post. I can think of no reason why this would be the case. You need a stable line for SPI to work. :-)
Change the connecting wire (maybe you already tried this). Inspect the board etc.
Anyone else got an idea?
The above test code is used. red LED connected to Max7219_CS portc.3, blue LED Max7219_DO portb.5
I think the video will be better:
https://youtu.be/wFPAjKrFiD4
Nice idea. Videos do explain things.
But, the URL to YouTube does not work - for me. It may not be shared correctly.
Meybe now work?
https://youtu.be/wFPAjKrFiD4
Anobium, now you can see the video?
I can see it, but, I cannot help as I do not have the tools with me.
Really, really sorry but unless I have some huge inspiration I do not think we can resolve until vacation is over.
:-(
Yes, during your vacation you have to enjoy your holidays. :)