STM32
直播中

golabs

8年用户 903经验值
擅长:可编程逻辑 电源/新能源 MEMS/传感技术 测量仪表
私信 关注
[问答]

STM32+NRF24L01一直返回最大重发次数值的原因?

STM32+NRF24L01一直返回最大重发次数值的原因?

回帖(1)

孙婷婷

2021-12-17 10:39:34
现象:发送端发送数据,接收端能接收到。 但发送端判断为发送失败,查看返回值为0X10。
即NRF24L01_TxPacket(tmp_buf)的值为0X10,TX_OK值为0X20,故虽然接收端能收到数据。但 发送端显示“发送失败”



  深入查看“NRF24L01_TxPacket(tmp_buf)”函数。
printf显示,state的值为0X1e,不是正常值0X2e。



原因:
1、当使用通道0时,发送地址,和接收地址必须一样。返回值才是0X20,正常。
当使用通道0时,将发送地址和接收地址改一样的。就能正常了。





发送端





接收端





解决方案,改变为通道1发送和接收。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分