1

北欧の wifiに関するヘルプを探しています。

私が修正した状況は次のとおりです。

Nordic がデータを受信して​​いるとき、allrandom メソッドと led_strip_color メソッドによってアクティブ化された LED がランダムに点灯します。

ただし、Nordic がデータをまったく受信していない状況があり、その間は電源を使用したくないので、すべての LED をオフにしたい ///

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

上記のコマンドは、北欧がアクティブでデータを受信して​​いるかどうかを確認しますが、データの送信を停止すると、そこに記載されているコマンドを実行できません。

コメントアウトされたセクションは私が試したことですが、解決策がわかりません。

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