北欧の 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を作成しようとしています。これはその一部です*