I have been looking at the SPI signals using a Saleae Logic analyser and I'm seeing some strange SCK signals. My attached SPI devices, SD Card R/W, nRF24L01+ etc. seem to be working OK but I can't understand what I am seeing and I wonder of anyone could comment on my findings?
The image below shows what I consider to be a valid SPI signal set with SCK pulses for each data bit etc. This was captured from the ArduinoISP sketch while bootloading an Atmega328.
However, when I do the same capture for my SD Card or nRF24L01+ module I see this:
Almost all of the SCK pulses seem to be missing yet, the modules seem to be working properly.
What sample rate did you select for your logic capture? You want to make sure that it's at least as high as the SPI clock frequency (I'm wondering whether your second capture is aliased or something due to undersampling)
I would have stated quite firmly that I was sampling at a high enough frequency until I opened the Saleae software this morning and saw that, somehow, the sample rate, which I thought had been set at 4MHz for the duration of my tests, is now sitting at 1MHz.
I did not willingly change it and must have altered it by accident. Somewhere between my original good sample and my subsequent bad samples it changed.
My thanks to you for spotting the obvious cause of my concern and I will now wipe the egg off of my face.