| Rx_Led_State() {
 LCD_ShowString(60,150,200,16,16,"NRF24L01 RX_Mode");
 NRF24L01_RX_Mode(Slave_Address);
 delay_ms(50);
 if(NRF24L01_RxPacket(RX_DATA,1)==0);
 {
 LED1=0;
 LCD_Fill(60,230,239,230+16,WHITE);
 if(RX_DATA[0]==LED_ON)
 LCD_ShowString(80,230,239,32,16,"LED_ON");
 else if(RX_DATA[0]==LED_OFF)
 LCD_ShowString(80,230,239,32,16,"LED_OFF");
 else
 {
 sprintf((char*)CHECK_DATA,"%02x",RX_DATA[0]);
 LCD_ShowString(80,230,239,32,16,CHECK_DATA);
 }
 LED1=1;
 }
 
 }
 
 我在NRF24L01_RX_Mode(Slave_Address);与 if(NRF24L01_RxPacket(RX_DATA,1)==0);中间加了一个50ms以上延时才能正常接受,如果不加这个延时就一直不能接收,读出来的数据一直是00,这是为什么呢?
 
 
 |