OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5161|回复: 4

NRF24L01数据发送两次,程序就停在 等待发送完成那句了;

[复制链接]

32

主题

275

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1278
金钱
1278
注册时间
2014-3-27
在线时间
339 小时
发表于 2014-3-27 16:01:05 | 显示全部楼层 |阅读模式
工作分为两部分,一部分是采集4个传感器的数据(都测试成功),第二部分就是将传感器数据 通过无线模块发送到一从机。<br />
开始测试过程是,单独让主无线模块发送一段字符串给从机,通信也完成正常。用的都是0通道,都开启了自动应答,程序参考的是正点原子的代码。<br />
但是,将传感器返回的数据 发送给从机时,(因为传感器数据大多是浮点型,我是用先转换为整数,再以字符串的形式发送出去的。),就只能发两次,而且从机也没有收到。调试发现,主机的程序停在了,等待发送完成那句while(NRF24L01_IRQ!=0);<br />
问题是,我单独发一串字符时,通信就是正常的,程序也不会死到那句。<br />
请大神们看看分析下是哪方面的问题。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

69

主题

475

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1334
金钱
1334
注册时间
2013-12-28
在线时间
197 小时
发表于 2014-3-27 16:11:31 | 显示全部楼层
那你单独发送一串字符的时候,这个字符串是多长,超过32了吗?
回复 支持 反对

使用道具 举报

32

主题

275

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1278
金钱
1278
注册时间
2014-3-27
在线时间
339 小时
 楼主| 发表于 2014-3-27 16:22:42 | 显示全部楼层
单独发送一串字符,定义的就是32字节,而且字符串是小于32的,通信是正常的。而发送传感器数据时,我先只发一个浮点型数据,定义的是5个字节,是可以发两次的,而且我测的发出数据是正确的,但是发完两次就停在&nbsp;&nbsp;while(NRF24L01_IRQ!=0);了,而且从机没收到数据。
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
11
金钱
11
注册时间
2019-10-30
在线时间
1 小时
发表于 2019-10-30 19:17:08 | 显示全部楼层
楼主解决了吗,我也遇到了这个问题
回复 支持 反对

使用道具 举报

4

主题

116

帖子

0

精华

论坛元老

Rank: 8Rank: 8

积分
3500
金钱
3500
注册时间
2017-11-15
在线时间
295 小时
发表于 2019-10-31 09:15:46 | 显示全部楼层
最好学一下用中断的方式,发送完产生一个中断。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-5-29 12:26

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表