Hi All,
I have an Arduino Due that's trying to communicate to two devices over SPI: a Flash chip and a TFT Display.
I started running into problems when I had both devices connected to the due. I have a test program for the flash chip, and was getting either corrupted values or constant 255 values being read from the chip. When I remove the SCLK pin from the TFT Display, however, I get the expected values being written/read from the chip... Weird. Even when I hooked up my oscilloscope to the SCLK pin, it caused incorrect values to be read to the chip, which I was pretty surprised by.. I was only able to get oscilloscope readings without corrupting the SCLK signal by switching the probe from reading 1X to 10X. But I guess all this means is the issue isn't caused by a bad display. Also, throughout all of this, I'm getting the proper activity from the display, so the clock must be working well enough for the tft to pick it up...
And FYI, I have multiples of the same flash chip, due, and LCD (actually even have two separate circuits on different breadboards too), and am finding this issue with any combination of the parts... So its not due to faulty parts, from what I can tell.
I've attached two screenshots of my oscilloscope, one with the display connected to the SCLK, and one without it connected. The one with it connected looks like it has less of a sharp "attack" on the rise and fall, but would this really be enough to affect the chip? It still rises up to 3.3v... But if this is the reason, does anyone have a suggestion of what can be done to make the rise and fall sharper?
Any help is appreciated! Thanks,
Pat