uint8_t TM_NRF24L01_ReadBit(uint8_t reg, uint8_t bit) { uint8_t tmp; tmp = TM_NRF24L01_ReadRegister(reg); if (!NRF24L01_CHECK_BIT(tmp, bit)) { return 0; } return 1; }
void TM_NRF24L01_WriteBit(uint8_t reg, uint8_t bit, BitAction value) { uint8_t tmp; tmp = TM_NRF24L01_ReadRegister(reg); if (value != Bit_RESET) { tmp |= 1 << bit; } else { tmp &= ~(1 << bit); } TM_NRF24L01_WriteRegister(reg, tmp); }
void TM_NRF24L01_WriteBit(uint8_t reg, uint8_t bit, uint8_t value) { uint8_t tmp; /* Read register */ tmp = TM_NRF24L01_ReadRegister(reg); /* Make operation */ if (value) { tmp |= 1 << bit; } else { tmp &= ~(1 << bit); } /* Write back */ TM_NRF24L01_WriteRegister(reg, tmp); }
uint8_t TM_NRF24L01_GetRetransmissionsCount(void) { /* Low 4 bits */ return TM_NRF24L01_ReadRegister(NRF24L01_REG_OBSERVE_TX) & 0x0F; }
uint8_t TM_NRF24L01_RxFifoEmpty(void) { uint8_t reg = TM_NRF24L01_ReadRegister(NRF24L01_REG_FIFO_STATUS); return NRF24L01_CHECK_BIT(reg, NRF24L01_RX_EMPTY); }