Пардон с SPI_SendByte( *data ) - я лажанулся у Вас все верно. Скорость действительно для слэйва устанавливает мастер.
А порядок бит в байте совпадает?
И уж больно долго у Вас программа в прерывании находится.
Может так:
char *t=data;
SIGNAL(SIG_SPI)
{
if(*t == 0 )
t=data;
SPDR = *t++;
LED0_blink();
}