1

我正在寻找有关北欧 wifi的帮助。

我得到纠正的情况是:

当 Nordic 接收数据时,由 allrandom 和 led_strip_color 方法激活的 LED 随机发光。

但是有一种情况,Nordic 没有收到任何数据,我不想在那段时间使用我的电源,我希望所有的 LED 都关闭 ///

 while(!(nrf24l01_irq_pin_active() && nrf24l01_irq_rx_dr_active()));

上面的命令检查 nordic 是否处于活动状态并接收数据,但是当我停止发送数据时,无法执行其中提到的命令。

注释掉的部分是我尝试过的东西,但是我无法找到出路。

while (1) {
    nrf24l01_clear_flush(); // Clears the wifi cache

    nrf24l01_set_as_rx(true); // sets the wifi pin as high
    while(!(nrf24l01_irq_pin_active() && nrf24l01_irq_rx_dr_active())); //checks if it //inactive and loops in that state 
    /*{
    printf(" test nordic wait");
    led_strip_colors[0] = 0xFF0000;  // red // colors each led in led strip
    led_strip_colors[1] = 0;  // green
    led_strip_colors[2] = 0;  // green
    led_strip_colors[3] = 0;  // green
    led_strip_colors[4] = 0;  // green
    led_strip_colors[5] = 0;  // green
    led_strip_colors[6] = 0;  // green
    led_strip_colors[7] = 0;  // green
    led_strip_colors[8] = 0;  // green
    led_strip_colors[9] = 0;  // green
    led_strip_colors[10] = 0;  // green
     //ds_delay_uS(100);
      //for (n = 0; n < LED_STRIP_LEN; n++) { led_strip_colors[n] = 0; }


    }*/
    nrf24l01_read_rx_payload(rxdata, 32);// collects data in rxdata

    ping_count++;                  
    nrf24l01_irq_clear_all();
    printf("%s\n", rxdata);

    if ((ping_count % 10) == 0) {
      addRandom();  // helps to change color randomly
    }
    send_frame();   

    ds_delay_uS(130);
    int i;
    // Delay for 1 second
    for (i=0; i<10; i++) {
      ds_delay_uS(100);
    }
  }
}

我有另一个北欧活动,它连续发送数据。任何帮助将不胜感激** * 我正在尝试制作一个 GeoCacher,当它从钥匙扣接收数据时它会发光,这是它的一部分 *

4

0 回答 0