您现在的位置:首页 >> 滚动 >> 正文
以太网网关节点在节能计量系统中的设计
发表时间:2014年5月27日 11:42 来源:中电网 责任编辑:编 辑:麒麟

您可以参考下面的示意图来理解

图4-4-9 Coordinator程序流程图

enddevice.c的内容介绍

End Device的运行过程仍然是从AppColdStart开始。这一函数和Co-ordinator的运行方式完全的不同,下面将详细的讲解这个过程。

1.AppColdStart调用vInitSystem,这个函数将初始化IEEE 802.15.4的协议栈

2.AppColdStart调用vStartActiveScan开始对于活动通道的扫描, End Device将向扫描的通道发送信标请求,并接收PAN Co-ordinator的信标请求回应。需要扫描的通道和速率将在config.h中定义。扫描请求的初始化和发送的工作可以通过MLME请求的方式通过IEEE 802.15.4的MAC层发送。

3.AppColdStart将通过vProcessEventQueues来检查和处理MLME回应。这个函数将调用vProcessIncomingMlme来处理收到的MLME回应。vHandleActiveScanResponse会被调用处理返回的活动通道扫描结果:

如果找到PAN Co-ordinator,函数将保存相应的Co-ordinator信息(比如 PAN ID,短地址,逻辑通道),并且调用vStartAssociate向Co-ordinator来提交入网请求,这一请求将通过MLME请求的方式提交。

如果PAN Co-ordinator没有被找到(可能是由于Co-ordinator还没有初始化完成)。这一函数将重新调用vStartActiveScan来重新启动扫描。

4. AppColdStart将循环的调用vProcessEventQueues等待来自Co-ordinator的入网回复。当收到回复后就将调用vProcessIncomingMlme,然后将调用vHandleAssociateResponse来处理回复,接下来的函数将检查回复的状态:

如果PAN Co-ordinator接受的入网请求,将设备置于联网状态。

如果PAN Co-ordinator拒绝了入网的请求,函数就将重新调用vStartActiveScan来开始搜索另外一个PAN Co-ordinator。

5. AppColdStart接下来将循环的调用vProcessEventQueues来等待来自于PAN Co-ordinator的MCPS信息或者硬件的队列信息。

当数据到达了MCPS队列,vProcessEventQueue首先使用函数vProcessIncomingMcps来接收数据帧,接着调用vHandleMcpsDataInd,接着调用vProcessReceivedDataPacket,开发人员可以在这个函数里面编写自己的数据处理过程。

[1]  [2]  [3]  [4]  [5]  
关于我们 | 联系我们 | 友情链接
新科技网络【京ICP备14006744号】
Copyright © 2014 Hnetn.com, All Right Reserved
版权所有 新科技网络
本站郑重声明:本站所载文章、数据仅供参考,使用前请核实,风险自负。