Continuous SPI for multiple bytes

  if (Serial.available()) {
    serialRead();
...
  Word1 = Serial.read();
  Word2 = Serial.read();
  Word3 = Serial.read();
  Word4 = Serial.read();
  Word5 = Serial.read();
  Word6 = Serial.read();
  Word7 = Serial.read();
  Word8 = Serial.read();
  Word9 = Serial.read();

You wait for what is almost certainly a single byte then read 9 bytes from the serial port, that doesn't seem kosher.

The whole point of sync serial comms is that it's not timing dependant, gaps between bytes should have no effect.

How about you test one thing at a time, try sending hard-coded bytes to the chip, when that works prove that you are receiving bytes correctly, then join the two up.


Rob