unsigned char receivedata ()
{ unsigned char bitcount , rdata = 0 ;
SDAT = 1 ; ////就是此处,加上读的数据就正确了...只是不明白为什么....
for ( bitcount = 0 ; bitcount < 8 ; bitcount ++ ) { SCLK = 0 ; someNOP() ;
SCLK = 1 ;
_nop_() ;
_nop_() ;
if ( SDAT == 1 ) rdata = ( rdata << 1 ) + 1 ;
else rdata <<= 1 ;
_nop_() ;
_nop_() ;
SCLK = 0 ;
}
return ( rdata ) ;
} |