Zigbee MAC层 程序框架

 

macFSM :

  phyFSM() ==========物理层的状态机

if (macTXBusy())=====如果正在发送数据

    macTxFSM()==== mac发送状态

macRxFSM()========mac 接收状态

switch (macState)

case MAC_STATE_IDLE:

 switch (cmd)

   case LRWPAN_MACCMD_ORPHAN:===========孤立通知

       case LRWPAN_MACCMD_ASSOC_REQ:========关联请求

   case MAC_STATE_COMMAND_START:===============MAC层命令开始

  switch(a_mac_service.cmd)

case LRWPAN_SVC_MAC_ERROR:==============错误

case LRWPAN_SVC_MAC_GENERIC_TX:=====发送一般的数据包

case LRWPAN_SVC_MAC_RETRANSMIT:=====重新发送数据包

case LRWPAN_SVC_MAC_ORPHAN_NOTIFY:==发送孤立通知

case LRWPAN_SVC_APS_NWK_LEAVE:=======解关联命令

case LRWPAN_SVC_MAC_DATA_REQ:========数据请求

case LRWPAN_SVC_MAC_BEACON_REQ:======发送信标请求

case LRWPAN_SVC_MAC_GTS_REQ:==========GTS请求

case LRWPAN_SVC_MAC_ASSOC_REQ:========发送关联请求

case MAC_STATE_ASSOC_REQ_WAIT1:====发送完关联请求进入等待阶段1

case MAC_STATE_ASSOC_REQ_WAIT2:====发送完关联请求进入等待阶段2

case MAC_STATE_ORPHAN_WAIT1:=======孤立等待1

case MAC_STATE_ORPHAN_WAIT2:=======孤立等待2

case MAC_STATE_ACK_SEND_START:=====发送ACK

case MAC_STATE_GENERIC_TX_WAIT:=====

case MAC_STATE_GENERIC_TX_WAIT_AND_UNLOCK:

 

case MAC_STATE_HANDLE_ORPHAN_NOTIFY:=====处理孤立通知

case MAC_STATE_SEND_BEACON_RESPONSE:=====发送信标响应

case MAC_STATE_SEND_ASSOC_RESPONSE:=======向发送关联响应

 

特殊颜色的表示是仅有FFD 有的

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值