完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
在协议栈中,我用组播方式发送39个字节的数据,每秒钟发送10次,但接收程序却只能大约340ms接收一次,也就是一秒钟接收三次。用串口助手观察接收到数据,发现接收程序每接收到三四次就会出间隔大约1.5秒不接收,然后再接收三四次,如此循环,就像卡顿一样。谢谢指导!
下面贴出我的发送和接收程序 发送程序 static uint8 msg_wireless_send[52]; if ( AF_DataRequest( &SampleApp_Flash_DstAddr, &SampleApp_epDesc, SAMPLEAPP_FLASH_CLUSTERID,/* 被Profile(属性)指定的有效的集群号*/ 39, /* 发送数据长度 */ msg_wireless_send, /* 发送数据缓冲区 */ &SampleApp_TransID, /* 任务ID号 */ AF_DISCV_ROUTE, /* 有效位掩码的发送选项 */ AF_DEFAULT_RADIUS ) == afStatus_SUCCESS ) 接收程序 void SampleApp_MessageMSGCB( afIncomingMSGPacket_t *pkt ) [ uint8 i; /* clusterId 簇ID号。 pkt->clusterId表示结构体 pkt 下的 clusterId 元素 */ switch ( pkt->clusterId ) /* 判断簇ID号 */ [ /* 收到广播数据 */ case SAMPLEAPP_PERIODIC_CLUSTERID: /* SAMPLEAPP_PERIODIC_CLUSTERID 是 1 */ break; /* 收到组播数据,本例为组播数据 */ /* 控制LED亮灭 */ case SAMPLEAPP_FLASH_CLUSTERID: /* SAMPLEAPP_FLASH_CLUSTERID 是 2 */ memcpy(receive_RC_value, pkt->cmd.Data, pkt->cmd.DataLength); AD7147_C_UartT_Send (receive_RC_value); UartTX_Send_R (receive_RC_value); /* 串口显示接收到的电容电阻值 */ int8 rssi_value[1]; rssi_value[0] = pkt->rssi; /* 将RSSI的值取出 */ UartTX_Send_rssi(rssi_value); break; case SAMPLEAPP_ADDR_CLUSTERID: for(i=0; i if(mDevice.id==pkt->cmd.Data[0]) [ mDevice.shortAddr=BUILD_UINT16(pkt->cmd.Data[1], pkt->cmd.Data[2]); ] ] // ] break; ] ] |
|
相关推荐
3 个讨论
|
|
只有小组成员才能发言,加入小组>>
601 浏览 0 评论
1654 浏览 0 评论
2096 浏览 0 评论
为啥BQ7693003DBTR芯片在和BQ769X0盒子通讯时收不到信号?
1542 浏览 0 评论
DSP 28027F 开发板 XDS100v2调试探针诊断日志显示了 Error -150 (SC_ERR_FTDI_FAIL)如何解决
1386 浏览 0 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
1794浏览 29评论
2821浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
1748浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
1667浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
1681浏览 13评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-14 23:33 , Processed in 1.283527 second(s), Total 68, Slave 53 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1208