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,这是为什么呢?
|