OpenEdv-开源电子网

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

nrf24l01通信中发送发不出去

[复制链接]

3

主题

9

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2011-11-4
在线时间
0 小时
发表于 2012-7-5 16:02:17 | 显示全部楼层 |阅读模式
<div>u8 NRF24L01_TxPacket(u8 *txbuf)</div>
<div>{</div>
<div><span class="Apple-tab-span" style="white-space:pre;">        </span>u8 sta;</div>
<div>&nbsp;<span class="Apple-tab-span" style="white-space:pre;">        </span>SPIx_SetSpeed(SPI_SPEED_16);//spi速度为9Mhz(24L01的最大SPI时钟为10Mhz) &nbsp;&nbsp;</div>
<div><span class="Apple-tab-span" style="white-space:pre;">        </span>NRF24L01_CE=0;</div>
<div>&nbsp; <span class="Apple-tab-span" style="white-space:pre;">        </span>NRF24L01_Write_Buf(WR_TX_PLOAD,txbuf,TX_PLOAD_WIDTH);//写数据到TX BUF &nbsp;32个字节</div>
<div>&nbsp;<span class="Apple-tab-span" style="white-space:pre;">        </span>NRF24L01_CE=1;//启动发送<span class="Apple-tab-span" style="white-space:pre;">        </span></div>
<div>//<span class="Apple-tab-span" style="white-space:pre;">        </span>delay_us(20);</div>
<div>//<span class="Apple-tab-span" style="white-space:pre;">        </span>NRF24L01_CE=0; &nbsp;&nbsp;</div>
<div><span class="Apple-tab-span" style="white-space:pre;">        </span>while(NRF24L01_IRQ!=0);//等待发送完成</div>
<div><span class="Apple-tab-span" style="white-space:pre;">        </span>sta=NRF24L01_Read_Reg(STATUS); &nbsp;//读取状态寄存器的值<span class="Apple-tab-span" style="white-space:pre;">        </span> &nbsp;&nbsp;</div>
<div><span class="Apple-tab-span" style="white-space:pre;">        </span>NRF24L01_Write_Reg(WRITE_REG+STATUS,sta); //清除TX_DS或MAX_RT中断标志</div>
<div><span class="Apple-tab-span" style="white-space:pre;">        </span>if(sta&amp;MAX_TX)//达到最大重发次数</div>
<div><span class="Apple-tab-span" style="white-space:pre;">        </span>{</div>
<div><span class="Apple-tab-span" style="white-space:pre;">                </span>NRF24L01_Write_Reg(FLUSH_TX,0xff);//清除TX FIFO寄存器&nbsp;</div>
<div><span class="Apple-tab-span" style="white-space:pre;">                </span>return MAX_TX;&nbsp;</div>
<div><span class="Apple-tab-span" style="white-space:pre;">        </span>}</div>
<div><span class="Apple-tab-span" style="white-space:pre;">        </span>if(sta&amp;TX_OK)//发送完成</div>
<div><span class="Apple-tab-span" style="white-space:pre;">        </span>{</div>
<div><span class="Apple-tab-span" style="white-space:pre;">                </span>return TX_OK;</div>
<div><span class="Apple-tab-span" style="white-space:pre;">        </span>}</div>
<div><span class="Apple-tab-span" style="white-space:pre;">        </span>return 0xff;//其他原因发送失败</div>
<div>}<br />
问题是:NRF24L01_TxPacket(u8 *txbuf)返回的是MAX_TX。用示波器看IRQ那个引脚是只有10us的低电平,然后都是高电平?请问大家怎么就发送不能完成呢。</div>
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2012-7-5 20:27:00 | 显示全部楼层
是我们的代码么?
<br>如果是的话,我们的代码一定要有接收端,否则无法发送成功.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

3

主题

9

帖子

0

精华

新手上路

积分
41
金钱
41
注册时间
2011-11-4
在线时间
0 小时
 楼主| 发表于 2012-7-6 09:39:26 | 显示全部楼层
我用了两个开发板啊,只是没有用到显示屏而已。
回复 支持 反对

使用道具 举报

10

主题

24

帖子

0

精华

初级会员

Rank: 2

积分
86
金钱
86
注册时间
2012-8-12
在线时间
0 小时
发表于 2012-9-22 13:44:12 | 显示全部楼层
大哥 你解决了没有啊 小弟有同样的问题
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165309
金钱
165309
注册时间
2010-12-1
在线时间
2108 小时
发表于 2012-9-22 15:06:58 | 显示全部楼层
回复【3楼】woshizu:
<br>---------------------------------
<br>2个开发板,那是可以的哦。耍我们原版的代码试试。注意要通过按键选择模式。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

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

GMT+8, 2024-11-23 19:33

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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