/* void Clock() { SCK = 1; SPI_delay(SDELAY); SCK = 0; SPI_delay(SDELAY); } */ u8 SPI_Read_8Bits() { u8 temp,i; for(i=0;i<8;i++) { SCK_LOW; SPI_delay(SDELAY); temp = temp<<1; if(PORTC & 0x10) temp = temp+1; else temp = temp+0; SCK_HIGH; SPI_delay(SDELAY); SPI_delay(SDELAY); //Clock(); } return temp; }
void SpiWrite( unsigned char spidataH, unsigned char spidataL ) { unsigned char BitBuffer, i; SPI_STB_H(); BitBuffer = spidataL; for ( i = 0; i < 8; i++ ) { SPI_CLK_L(); if(0x01 & BitBuffer) SPI_DATA_H(); else SPI_DATA_L(); SPI_delay(1); SPI_CLK_H(); SPI_delay(1); BitBuffer >>= 1; } BitBuffer = spidataH; for ( i = 0; i < 8; i++ ) { SPI_CLK_L(); if(0x01 & BitBuffer) SPI_DATA_H(); else SPI_DATA_L(); SPI_delay(1); SPI_CLK_H(); SPI_delay(1); BitBuffer >>= 1; } SPI_CLK_L(); SPI_STB_L(); }
void SPI_Send_8Bits(u8 data) { u8 temp,i; temp = data; for(i=0;i<8;i++) { SCK_LOW; SPI_delay(SDELAY); if(temp&0x80) SDO_HIGH; else SDO_LOW; temp = temp<<1; SPI_delay(SDELAY); SCK_HIGH; SPI_delay(SDELAY); SPI_delay(SDELAY); //Clock(); } }