完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我正在进行PAwR的调试,例程微调后性能测试可正常使用,目前想加入应用协议。我在server端是这么修改的:
1.在app_pawr_se_rsp_cb接口下不直接发送pawr_snd_se_rsp_central,而是压入应用处理队列; 2.加入应用处理逻辑,单独创建一个线程; 3.单独创建一个驱动线程,在应用处理完后,调用pawr_snd_se_rsp_central发送应答。 目前测试发现,在client和server刚上电时,可以保持一小段时间的双向通信,后面server回的rsp在client端就收不到了。开server端代码调试未发现异常,pawr_snd_se_rsp_central可返回成功。我在client的时间配置如下,实测应用处理时间是6ms,用户数据目前没有超过16字节,想问下是时序配置异常还是pawr_snd_se_rsp_central调用方式不正确。 |
|
相关推荐
1个回答
|
|
根据您提供的信息,我将尝试分析可能导致PAwR-server端rsp丢包的原因,并提供一些建议来解决这个问题。
1. 网络问题:首先,检查网络连接是否稳定。如果网络连接不稳定,可能会导致数据包丢失。确保服务器和客户端之间的网络连接正常。 2. 线程同步问题:由于您在服务器端创建了一个单独的应用处理线程和一个驱动线程,可能存在线程同步问题。请确保在应用处理线程和驱动线程之间正确地同步数据和状态。 3. 队列管理问题:您提到在app_pawr_se_rsp_cb接口下不直接发送pawr_snd_se_rsp_central,而是压入应用处理队列。请确保队列管理正确,没有出现队列溢出或数据丢失的情况。 4. 应用处理逻辑问题:检查应用处理逻辑是否有可能导致数据包丢失或延迟。例如,如果应用处理时间过长,可能会导致数据包在队列中等待时间过长,从而影响通信。 5. 客户端接收问题:检查客户端的接收逻辑是否正确。如果客户端的接收逻辑有问题,可能会导致无法正确接收服务器发送的rsp。 6. 时间配置问题:您提到在client的时间配置上可能存在问题。请检查客户端的时间配置,确保它与服务器端的时间配置相匹配,以避免由于时间差异导致的数据包丢失。 7. 调试和日志记录:在调试过程中,增加日志记录可以帮助您更好地了解问题所在。记录关键步骤和状态,以便在出现问题时能够快速定位问题。 8. 性能测试:在修改代码后,进行性能测试以确保修改没有引入新的问题。如果性能测试出现问题,可以尝试逐步回退修改,以找出导致问题的具体原因。 综上所述,要解决PAwR-server端rsp丢包的问题,您需要从多个方面进行排查和调试。希望这些建议能对您有所帮助。 |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
1231 浏览 0 评论
会员风采!华秋电子——致力于“为电子产业增效降本”的数字化智造平台
849 浏览 0 评论
【应用笔记】BlueNRG-LP、BlueNRG-LPS+省电模式
7884 浏览 1 评论
11066 浏览 0 评论
16139 浏览 1 评论
浏览过的版块 |
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-1 07:41 , Processed in 0.393376 second(s), Total 42, Slave 35 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191