void SPI_INIT()
{
volatile char *dir_b,*outB,*spcr; // initialization of portb and control register
dir_b=0x24;// address of data direction port B
outB=0x25; // Address of output port B
spcr=0x4c; // Address of control register
*dir_b=0x07; // output mode - DIN, SCK
*outB=0x01; // SS= 1;
*spcr=0x51;
}
void SPI_TRANSMIT(char ch)
{
volatile char *spdr,*spsr;
spsr=0x4d;
*spsr=0x00;
spdr=0x4e;
*spdr=ch;
while(!*spsr);
delay(5);
}
void setup() {
// put your setup code here, to run once:
SPI_INIT();
}
void loop()
{
volatile char *dir_b,*outB;
dir_b=0x24;
outB=0x25;
*dir_b=0x01;
*outB=0x00;
SPI_TRANSMIT(0x08);
SPI_TRANSMIT(0x01);
*outB=0x01;
}