接收端的话NRF24L01_TX_Mode()函数在while(NRF24L01_Check())之前或者之后无所谓,但是如果在发送端的话,这个NRF24L01_TX_Mode()函数必须在while(NRF24L01_Check())之后。
当我把 NRF24L01_TX_Mode();放到while(NRF24L01_Check())之前。
调试的时候,在NRF24L01_RxPacket(u8 *rxbuf)函数里面STATUS读出来的值是0x1E。0x1E表示达到了最多次重发中断。我在 NRF24L01_Check(void)函数里面读取STATUS值,STATUS=0x1E。
当我把 NRF24L01_TX_Mode();放到while(NRF24L01_Check())之后。总结:在发送端的时候NRF24L01_TX_Mode()函数必须放在while(NRF24L01_Check())之后。如果放在检查函数之前就会导致发送失败。整了3晚就整出这一句话,,,,,,很无语。
调试的时候,在NRF24L01_RxPacket(u8 *rxbuf)函数里面STATUS读出来的值是0x2E。我在 NRF24L01_Check(void)函数里面读取STATUS值,STATUS=0x0E。
更多回帖