首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Contiki Rime栈如何在Example_Broadcast中获取广播ID

Contiki Rime栈如何在Example_Broadcast中获取广播ID
EN

Stack Overflow用户
提问于 2019-01-03 16:38:59
回答 2查看 622关注 0票数 0

我正在做contiki的Rime堆栈的广播示例:

https://github.com/contiki-os/contiki/blob/master/examples/rime/example-broadcast.c

当收到广播时,我可以很容易地读出发送者的id:

代码语言:javascript
复制
broadcast_recv(struct broadcast_conn *c, const linkaddr_t *from)
{
  printf("Sender: %d.%d\n", from->u8[0], from->u8[1]);
}

但是如何获得“我的”/current节点的ID呢?

感谢您的任何帮助

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-01-03 17:47:27

Contiki中的本地地址存储在linkaddr_node_addr

代码语言:javascript
复制
#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"

票数 0
EN

Stack Overflow用户

发布于 2021-05-31 14:43:12

添加这个头文件:#include "sys/node-id.h",然后使用"node_id"可以获得节点的自身id!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54018822

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档