Вы, видимо, не до конца поняли сущность SPI. Это же СИНХРОННЫЙ интерфейс. Здесь нет отдельных понятий приема и передачи. Прием происходит одновременно с передачей (для Master). И для того, чтобы что-то получить, надо что-то послать.
while (1)
{
SPDR = *data;
while (!(SPSR & (1 << SPIF))); // Ждем конца ПЕРЕДАЧИ
//LED0_blink();
byte = SPDR; // Сохранить принятые данные
}