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

nRF24L01+ use with PSoC 3 devices

I Every one !!! Thank for the possibility to participate in this forum. I am trying to initialization configuration of my nRF24L01+ . I am using CY8C3866AXI-040 from Cypress semiconductor. When i try to write a Register the code is:

#define DUMMYDATA 0x00u #define CONFIG_BYTE 0x00u // only for debug purpose

   ( in Power Down mode)

  SPIM_WriteTxData((W_REGISTER |CONFIG));
  SPIM_WriteTxData(CONFIG_BYTE);

When i try to read a Register the code is: It is supposed I will get 0x07, and 0x00 or 0x80 depending of the EN_CRC bit .

SPIM_WriteTxData((R_REGISTER |CONFIG)); SPIM_WriteTxData(DUMMYDATA); SPIM_WriteTxData(DUMMYDATA);

The result is always 0x07 , 0x07, every time I use Spi for Read the bytes nRF24l01 send to MCU' SPI

Please help me because I am stock with this. Thank you in advance.

Parents
  • You must make sure that you don't toggle the CSN line for each byte, in which case you will read out only the status register. This can be clearly seen on figure 26 and 27 in the PS. The status register will have a default value of 0x07, so it seems very likely that this is the problem here.

    Also, you should make sure that your timing is in accordance with the SPI timing requirements given in the Product Specification, tables 22 to 27.

    PS: I've deleted your double post.

Reply
  • You must make sure that you don't toggle the CSN line for each byte, in which case you will read out only the status register. This can be clearly seen on figure 26 and 27 in the PS. The status register will have a default value of 0x07, so it seems very likely that this is the problem here.

    Also, you should make sure that your timing is in accordance with the SPI timing requirements given in the Product Specification, tables 22 to 27.

    PS: I've deleted your double post.

Children
No Data
Related