我正在做contiki的Rime堆栈的广播示例:
https://github.com/contiki-os/contiki/blob/master/examples/rime/example-broadcast.c
当收到广播时,我可以很容易地读出发送者的id:
broadcast_recv(struct broadcast_conn *c, const linkaddr_t *from)
{
printf("Sender: %d.%d\n", from->u8[0], from->u8[1]);
}但是如何获得“我的”/current节点的ID呢?
感谢您的任何帮助
发布于 2019-01-03 17:47:27
Contiki中的本地地址存储在linkaddr_node_addr中
#include "net/linkaddr.h"
...
printf("Local: %d.%d\n", linkaddr_node_addr.u8[0], linkaddr_node_addr.u8[1]);还有另一个变量:uint16_t node_id,至少在大多数平台上是这样。默认情况下等于linkaddr_node_addr.u8[0] + (linkaddr_node_addr.u8[1] << 8)。为此添加#include "sys/node-id.h"。
发布于 2021-05-31 14:43:12
添加这个头文件:#include "sys/node-id.h",然后使用"node_id"可以获得节点的自身id!
https://stackoverflow.com/questions/54018822
复制相似问题