This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Loading the nRF24L01p registers for initialisation

Hi folks,

I'm trying to write a program to check out a pair of nRF24L01p modules talking to each other, and I'm a bit confused about two aspects of initialisation:

  1. Should you have the 'PWR_UP' bit in the CONFIG register on or off when you want to write the various data into the other registers? I think it should be off, so the chip is in a standby mode.
  2. Also, when you write data into any of the chip's registers, what is the content of the STATUS register that's returned during the write?

I guess these questions are pretty simple and reveal my lack of experience with these impressive chips, but an answer would be very much appreciated.

Thanks, Jim

Parents
  • Hi Jim

    1. I usually write to the CONFIG register first, and set the PWR_UP bit, but I think you can write to the configuration registers even without the PWR_UP bit set. It is definitely not required to disable the PWR_UP bit before altering configuration registers, you just need to make sure the CE (chip enable) pin is not set.

    2. The default value of the STATUS register is 0x0E (b00001110), if no interrupts have fired and there are no packets in the TX or RX fifo.

    Best regards
    Torbjørn

  • Thanks Torbjorn, that answer was very helpful. But I'm still a bit confused about managing the CE pin. I gather that it needs to be pulsed high for writing to the TX FIFO, but does it also need to be pulsed high for writing to one of the registers? Also does it need to be held high to read from a register? Thanks, JimR

Reply Children
No Data
Related