Zigbee 1.4.3 高层串口接收数据

无线龙提供的材料很差劲,而且1.4.1给的文档到了1.4.2就不给了,更可气的是TI的Zigbee协议栈明明有安装包,就是不给,非要给个拆开了的,不用他们的开发板,自己做板子的话,麻烦死你。不清楚什么用意。怀疑是想搞技术垄断,但问题是就这点技术,你垄断谁去,中国人窝里斗的典范。严重声讨一下!

 

这里专门讨论一下UART串口通讯部分,在网络上看了不少方法,基本上是直接操作HAL,其实不必的,发送操作HAL就算了,接收部分可以用SPIMgr来实现。

 

1. 把预定义宏MT_TASK和ZTOOL_P1去掉, 添加上ZAPP_P1,或者ZAPP_P2也行,看你用哪个口

在相关文件中引用SPIMgr.h

 

2. 在应用层MYAPP_INIT或者SAPI_Init函数中添加:

  SPIMgr_RegisterTaskID( myApp_TaskID );
  SPIMgr_ZAppRxStatus   = SPI_MGR_ZAPP_RX_READY;

告诉SPIMgr收到串口消息后通知应用层

 

3. 在MYAPP_ProcessEvent中(或者SAPI_ProcessEvent)处理系统消息那一段加上对事件SPI_INCOMING_ZAPP_DATA的处理动作

  case SPI_INCOMING_ZAPP_DATA:

      myCode_ProcessIncomingSerialPortData( pMsg );

      break;

 

4. 在合适的myApp.h(或者sapi.h)中声明函数

  extern void myCode_ProcessIncomingSerialPortData( osal_event_hdr_t * );

 

5. 在合适的地方实现这个动作

void myCode_ProcessIncomingSerialPortData( osal_event_hdr_t * pMsg )

{

    // TODO 在此处理串口数据
    // pMsg->status 存储的是数据长度
    // (uint8 *)(pMsg+1) 存储的是数据

}

 

这就行了, 起始真正有用的就是1, 2, 3, 剩下的完全可以根据个人喜好去弄。

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值