打印
[AVR单片机]

小弟最近调试NRF24L01发送,但不知为何TX_FIFO寄存器老是非空,还清不掉

[复制链接]
2406|18
手机看帖
扫描二维码
随时随地手机跟帖
楼主
因为使能了自动重发,所以发送失败时自动重发,TX仍是非空

使用特权

评论回复
沙发
ningling_21| | 2017-3-4 14:38 | 显示全部楼层
arios0409 发表于 2017-3-4 14:31
不不不,我失能了自动重发的,RETR是0x00,所以才非常头疼

STATUS 寄存器的值是多少?

使用特权

评论回复
板凳
ningling_21| | 2017-3-4 14:55 | 显示全部楼层

Status=0x2E 不是发送成功了?

使用特权

评论回复
地板
ningling_21| | 2017-3-4 15:02 | 显示全部楼层
本帖最后由 ningling_21 于 2017-3-4 15:04 编辑
arios0409 发表于 2017-3-4 14:58
是,2E应该是没问题的,但是FIFO_STATUS里的TX_FIFO应该清空不是吗,只是觉得好奇怪啊,现在在调试接收, ...

FIFO_STATUS =0x01 表示  1:RX FIFO 寄存器空

接收缓冲区是空的,可以继续接收

使用特权

评论回复
5
ningling_21| | 2017-3-4 15:05 | 显示全部楼层
arios0409 发表于 2017-3-4 14:59
是不是可以不用在意这个,放心去调接收?

不是,当接收缓冲区满了就不能继续接收了,发送缓冲区也一样

使用特权

评论回复
6
ningling_21| | 2017-3-4 15:18 | 显示全部楼层
arios0409 发表于 2017-3-4 15:14
但高四位的tx_empty是0,TX_FIFO寄存器非空,但也没满,不应该发送了变成空的么?是因为我用display显示函 ...

缓冲区一般不会自动清零,需程序控制
发送FIFO没满时可以继续填数据

使用特权

评论回复
7
ningling_21| | 2017-4-16 17:43 | 显示全部楼层
电路小哥XM 发表于 2017-4-16 17:34
我也在调试NRF24L01,发送是可以了,就是接收每次只有上电接收一次,IRQ只能中断一次,然后就再也接收不到 ...

多检查状态寄存器,看看它的值就知道原因

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则