NRF24l01 returns 46 in STATUS register

Hi all:

the strange thing is when I enable auto ack, the sender can go into interrupt with STATUS register’s value 30/31 and receiver can get data, but after I turn off auto ack, I always get 0x46 of STATUS register in the interrupt even the receiver is off, and I also found the FIFO STATUS is 0x17. Any idea can help me? Thanks in advance.

Here is the code to turn off auto ack.

NRF24L01_Write_Reg(WRITE_REG+EN_AA,0x00);

NRF24L01_Write_Reg(WRITE_REG+EN_RXADDR,0x01);

NRF24L01_Write_Reg(WRITE_REG+SETUP_RETR,0x00);

and here is the sender’s inital code:

NRF24L01_CE=0;

NRF24L01_Write_Buf(WRITE_REG+TX_ADDR,(u8*)TX_ADDRESS,TX_ADR_WIDTH);

NRF24L01_Write_Buf(WRITE_REG+RX_ADDR_P0,(u8*)RX_ADDRESS,RX_ADR_WIDTH);

NRF24L01_Write_Reg(WRITE_REG+EN_AA,0x01);

NRF24L01_Write_Reg(WRITE_REG+EN_RXADDR,0x01);

NRF24L01_Write_Reg(WRITE_REG+SETUP_RETR,0x1a);

NRF24L01_Write_Reg(WRITE_REG+RF_CH,40);

NRF24L01_Write_Reg(WRITE_REG+RF_SETUP,0x07);

NRF24L01_Write_Reg(WRITE_REG+CONFIG,0x0e);

NRF24L01_CE=1;