2---节点对节点的无线电通信[兼容模式]-DrKeShi.PDF

2---节点对节点的无线电通信[兼容模式]-DrKeShi.PDF

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2---节点对节点的无线电通信[兼容模式]-DrKeShi

Lesson 2 节点对节点的无线通信 介绍TinyOS 系统的通信模块,熟悉TinyOS i h 中支持通信的接口和组件。 S 使用message_t类型数据 (即TinyOS 2.x的消 e 息缓冲区) K 发送一条消息缓冲到无线电。 T 从无线电接收一条消息缓冲。 S U H 一、介绍 TinyOS 提供了很多的接口来抽象底层的通 信服务,以及提供或实现这些接口的组件。 所有的接口和组件使用了一个共同的消息 缓冲抽象,称为message_t. message_t可以通过nesC 的结构体来实现 (类似于C语言中的结构体struct )。 message_t 的成员是不透明的,因此不能直 接访问。 1.1 基本通信接口 Packet :提供了对message_t抽象数据类型的基本访问。这 个接口的命令有:清空消息内 ,获得消息的有效载荷区 长度,获得消息有效载荷区的指针。 Send :提供基本的自由地址的消息发送接口。这个接口 提供的命令有:发送消息,取消未成功发出的消息。接口 还提供了事件来指示一条消息是否成功发送。它也提供了 一些便利的函数,来获得消息的最大有效载荷区长度以及 消息有效载荷区的指针。 Receive :提供最基本的消息接收接口。这个接口提供了 接收消息后的事件。它也提供了些命令,可以方便地获得 消息的有效载荷区长度以及消息有效载荷区的指针。 PacketAcknowledgements :提供了一种机制来要求对每 个信息包的确认。 RadioTimeStamping :为无线电发射和接受提供时间标 记信息。 1.2 活动消息接口 由于经常有多个服务需要使用相同的无线电来交流, TinyOS 提供了活动消息(active message,缩写AM ) 来实现多渠道访问无线电。 AM type在功能上类似于以太网的数据帧、IP 协议以及 UDP 端口,所有这些都是为了达到多路访问一个通信服务 的目的。 AMPacket :类似Packet,提供对message_t抽象数据类型 的基本的AM 访问。这个接口提供的命令有:获得节点的 AM 地址,AM信息包的目标地址以及AM信息包的类型。 除此之外还有,设置AM信息包目标地址和类型,检查目 标地址是否为本地节点。 AMSend :类似Send ,提供了基本的活动消息发送接口。 AMSend 与Send 之间的关键区别是,AMSend 在其发送命 令里带有AM 目标地址参数。 1.3 组件 AMReceiverC :Receive, Packet, and AMPacket. AMSenderC :AMSend, Packet, AMPacket, PacketAcknowledgements as Acks. AMSnooperC :Receive, Packet, and AMPacket. AMSnoopingReceiverC :Receive, Packet, and AMPacket. ActiveMessageAddressC:提供了获得和设定节点活动消息 地址的的命令。这个接口不能作为一般使用,修改活动消 息地址可能破坏网络堆栈,所以尽量不要使用,除非程序 员 常清楚自己在做什么。 二、tinyos2.x消息缓冲抽象 Tinyos2.x 用message_t代替了tinyos1.x的TOS_Msg, 作为底层数据结构。 tos/typ

文档评论(0)

2105194781 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档