hinterher ist er 0, wäre es dann nicht besser es als Globale Variable "volatile" und die Richtung zu ändern

Die Schleife meine ich
Code:
for(i=0;i<15;i++)
{
if(mask | word) SPI_MOSI_PORT|=(1<<SPI_MOSI_PIN); 
else SPI_MOSI_PORT&=~(1<<SPI_MOSI_PIN); 
if(SPI_MISO_PIN == 1) temp |= mask;
SPI_CLK_PORT |=(1<<SPI_CLK_PIN); 		//CLK-Takt HIGH
SPI_CLK_PORT &=~(1<<SPI_CLK_PIN); 		//CLK LOW
mask >>= 1;
}