unsigned char readRegister(unsigned char regAddr, unsigned char regValue[], unsigned char bytes) { PORTB&=~(1<<CSN); SPDR=R_REGISTER(regAddr); while(!(SPSR & (1<<SPIF))); unsigned char status = SPDR; for(unsigned char i=0;i<bytes;++i) { SPDR=regValue[i]; while(!(SPSR & (1<<SPIF))); regValue[i]=SPDR; } PORTB|=(1<<CSN); return status; }
static uint8_t nrf24l01p_singleReadReg( uint8_t reg ){ uint8_t data; nrf24l01p_doCommand( R_REGISTER(reg), 0, &data, 1 ); return data; }
static void nrf24l01p_readReg( uint8_t reg, uint8_t *data, uint8_t len ){ nrf24l01p_doCommand( R_REGISTER(reg), 0, data, len ); }