Как я могу определить сеть в Contiki os

Я новичок в contiki os и симуляторе Cooja. Я хочу знать, как я могу чувствовать сеть, чтобы

  1. Если есть два узла, начните связь
  2. Третий узел перехватывает сообщение и знает IP-адрес отправителя.

Я нашел и попробовал этот код, но что мне добавить, чтобы проверить сеть и канал для определения

if(NETSTACK_RADIO().channel_clear()) {
      printf("channel not busy\n");
    } else {
      printf("channel busy\n");
    }

1 ответ

Я также не являюсь экспертом по contiki, но я думаю, что для решения вашей проблемы вам следует проверить os / net / routing / rpl-lite / rpl-neigbor.c. Если вы скомпилируете свой код по умолчанию, он будет использовать rpl-lite, это стандарт для contiki-ng.

Вы можете сделать что-то вроде этого:

include "net/routing/rpl-lite/rpl.h";

if (rpl_neighbor_count() == 1) {
    // start communication
}

Надеюсь, я смогу помочь.

Другие вопросы по тегам