void main()
{
init905();
Config905(); // Config nRF905 module
while(1)
{
SetTxMode(); // Set Tx Mode
TxPacket(); // Transmit Tx buffer data
SetRxMode();
//=====================等待NRF905接收
if (DR) // If recive data ready...
RxPacket(); // ... recive data
if(RxBuf[0]==0x01)
{
RxBuf[0] =0;
LED1 = 0 ;
Delay(1000); // ...light led
LED1 = 1 ;
Delay(500); // ...light led
}
}
}
这是主机程序,主机发送出去,从机收到后立即将数据返回发送给主机,之后主机却接收不到从机的数据,可以确定从机确实回复给主机数据了,而且主机假如单独接收从机发送的数据时是可以接收到的。现在不知道是不是因为主机发送过数据后导致不能接收了,恳请大神们能够指导一下。
关于NRF905一点对多点通信的问题
答案:1 悬赏:50 手机版
解决时间 2021-01-30 16:40
- 提问者网友:贪了杯
- 2021-01-30 05:57
最佳答案
- 五星知识达人网友:不想翻身的咸鱼
- 2021-01-30 06:15
可以用突发请求模式实现 接收端始终处于常开态,发送端先侦听,数据量不大时可省略侦听,然后发送带有本机地址的请求信令,待接收端准许后发送数据,数据需带校验,出错重发,这是因为即使如此也不能完全避免冲突干扰,故要确认数据传输的正确性。具体应用时,还需根据应用的特点制定合适的协议。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯