我想在contikirpl中的mrhrof目标函数中实现DAG度量容器目标类型,如能量、吞吐量、延迟、跃点计数。我正在尝试获取数据包详细信息,如数据包发送/接收的时间戳、直接父mote接收的数据包等。
实验设置:一个接收器(mote1)(udp server.c),三个源(mote2,3
远程1
(1) 为了计算收到的数据包,我在neighbor\u link\u callback()中尝试了非常简单的代码,因为此函数接收链路层邻居信息。(…contiki-3.0/核心/净/rpl/rpl mrhof.c)
#包含“sys/node-id. h”
(包含在文件中以访问node-id)
static uint16_t pkt1=0,pkt2=0,pkt3=0; /* pkt1,2 and 3 store incoming packets for mote2,3 and 4 respectively */
if(status == MAC_TX_OK) // pkts transmission successfully
{
switch (node_id) {
case 2:
pkt1++;
break;
case 3:
pkt2++;
break;
case 4:
pkt3++;
break;
default:
PRINTF("Other::error outside of three mote \n");
break;
}
}
这段代码的问题是,我在这些变量中得到了更多的数据包。我认为,因为它存储所有类型的数据包(html" target="_blank">控制和数据包)。如何仅获取这些变量(pkt1、pkt2、pkt3)中的数据包。
(2) 为了计算延迟,我想在mrhrof中获得发送/接收数据包的时间戳。尽管如此,但我只能在udp服务器上获得时间。c和udp客户端。c
(....../contiki-3.0/examples/ipv6/rpl udp)
为此,我编写了以下代码:udp-Client. c
静态uint16\U t pkt1\U s=0,pkt2\U s=0,pkt3\U s=0;
“静态void send\u数据包(void*ptr)”内
pkt_send_time = clock_seconds();
switch (node_id) {
case 2:
PRINTF("::No of pkt_send:: %u by \t mote %d at \t pkt_send_time:: %u \n",++pkt1_s,node_id,pkt_send_time);
break;
case 3:
PRINTF("::#pkt_send:: %u \t by mote %d at \t pkt_send_time:: %u \n",++pkt2_s,node_id,pkt_send_time);
break;
case 4:
PRINTF("::#pkt_send:: %u \t by mote %d at \t pkt_send_time:: %u \n",++pkt3_s,node_id,pkt_send_time);
break;
default:
PRINTF("::error send pkt outside range \n");
break;
}
我为udp服务器编写了相同类型的代码。c
在这里,我面临着以下问题:
通过使用
#include "net/ipv6/uip-ds6.h"
#include "net/ip/uip-udp-packet.h"
本文向大家介绍如何在SAP-MDG中存储详细信息?,包括了如何在SAP-MDG中存储详细信息?的使用技巧和注意事项,需要的朋友参考一下 如果您不想创建自定义表,则可以借助重用方法来创建数据模型。然后,您可以将此新创建的数据模型保存在暂存MDG中。您还有其他选择是Z表。您可以创建一个Z表来保留数据。 希望这可以帮助!
正如你看到我的问题,我很困惑,因为我看到了许多文章和条纹文档解决方案,每次我得到不同的东西。我的应用程序流程类似于第一个用户,他将有两个选项 以前保存的卡片 输入新卡 在这样做的时候,我从客户那里获取卡的详细信息,然后我生成令牌并发送将从db获取的令牌和CusterId(如果是老客户),这意味着客户已经生成,在后端,我首先使用添加付款信息后获得的条带令牌创建客户(如果没有找到CusterId),然
有没有办法(内置或通过插件)限制Eclipse中其他包对Java包的访问? 例子: 包(在同一项目中): com.my.project.common 通用域名格式。我的项目服务1 通用域名格式。我的项目服务V2 现在我想限制对serviceV1和serviceV2的公共访问。但是当然应该允许这些服务访问公共包
我对开源项目的贡献是新的。我正在Android Studio做一个项目。我将gradle tools版本更新到3.3.0。我发现一个警告(不是错误),上面写着“API'variant.getJavaCompile()'已过时,并已被替换为'variant.getJavaCompileProvider()'。”但是,variant.getJavaCompile()在问题分级文件中没有显式说明。我必须
问题内容: 我正在编写一个python软件包,其中包含需要在子目录中打开数据文件的模块。现在,我已经将文件的路径硬编码到了我的类和函数中。我想编写更健壮的代码,无论子目录在用户系统上的安装位置如何,都可以访问该子目录。 我尝试了多种方法,但是到目前为止,我还没有运气。似乎大多数“当前目录”命令返回系统的python解释器的目录,而不是模块的目录。 看来这应该是一个微不足道的普遍问题。但是我似乎无法
问题内容: 我想获取Python3中Exception的详细信息 例如…在foo.py中 和标准输出是… 我想从实例“ err”中获得有关此内置异常类的更多信息, 如 文件:foo.py 行:4 讯息:“ dict”对象没有属性“ encode” 就像这段代码的标准输出 这个 问题答案: 使用该模块可打印当前位置或给定异常的回溯。 您没有说明期望的输出,但是无论哪种模块,该模块很可能都能产生最适合