2

用于Xmesh无线传感器节点,

1-可以使节点Motes)相互发送和接收?不仅仅是向基站发送信息??

2-我可以修改它的数据包以添加一些字段吗?

3-可以在 Motes 存储中存储一些值吗?

我使用 TinyOs 对 motes 进行编程,从 type MICAZ??

4

1 回答 1

2

1-是的,如果您研究消息头,则有目标地址和源地址。当您使用 AMSend 接口发送数据包时,您可以为该方法的第一个参数提供您尝试访问的节点的 ID。

节点的 ID 在编译期间设置。例如,如果您运行以下命令,您将为开发板提供一个可以发送到的唯一 ID。当然,您可以为多个节点提供任意数量的 id:

$make telosb install.1 bsl,/dev/ttyUSB0

上面的命令会将您的程序上传到一个节点并为其提供一个唯一的 ID 1。现在在另一个节点中,当您收到数据包时,您可以检查 ID。这可以从数据包标头中提取,或者只是在您自己的自定义数据包中,您可以unit16_t从常量中存储节点 ID,TOS_NODE_ID该常量始终等于您在上传期间指定的唯一 ID。

2 - 是的,您可以拥有一个 255 字节大的数据包。您可以定义数据包,例如:

typedef nx_struct MyPacket
{
    nx_uint16_t NodeID;
    nx_uint8_t yourCustomField;
    nx_uint32_t anotherField; //and so on

} MyPacket_t;

3-微尘存储?如果您的微尘带有闪存芯片,是的,您可以。如果可用,有一些接口和组件允许您从传感器板上的闪存芯片写入/读取。

您可以从我的教程中了解更多信息

于 2013-03-29T03:32:26.243 回答