NRF24L01P
文章平均质量分 63
dancebit
我若成魔 佛奈我何
展开
-
NRF24L01调试的一些经验之谈
这次大大小小又搞了一个星期,还特地做了测试版。图中大部分是SI24R1,和NRF24L01+完全兼容,关键是还便宜。需求要做一个无线通讯大网,一个主机和上百个从机通讯。该模块有自动应答功能,发送一个包到应答数据收到,只需要1ms以内的时间就能完成,数据包还自带CRC校验。比485,CAN总线这些高效很多。还不需要布线。说说经验记录,1、不管是PTX还是PRX端,在初始化模块之后,CE一直保持高即可,不要去操作CE脚。PTX端发送缓冲区有数据就自动发送,无数据就等待有数据再.原创 2022-05-12 14:42:50 · 1242 阅读 · 4 评论 -
NRF24L01 PID问题
我在测试的时候遇到一个神奇的现象,因为是测试,所以PTX和PRX两端都重复发送一些数据。会出现如下现象:PTX发送端能正常发送数据并收到ACK应答包; 然而PRX端没有收到任何数据,状态寄存器STATUS和缓冲区寄存器FIFO_STATUS也没有任何变化。计时单片机不运行,PTX端收到依然还在正常进行。将PRX端断电PTX才发送失败了。分析:就是说,出现如上现象时,PRX端应答PTX了,但是PRX却不认为自己收到有效数据了. 再将发送端数据的第一个字节自增1,PRX就能正常收到数据。原创 2022-05-11 15:14:17 · 293 阅读 · 0 评论 -
NRF24L01-状态寄存器
STATUS寄存器当接受到数据后BIT_RX_DR置1,并且RX_P_NO 设置为对应接收通道。当读取出接收缓冲区数据后,RX_P_NO 变为111,但BIT_RX_DR不变,需手动清除。BIT_RX_DR可以不清除,只需要把数据读出就可以再次接收。即使BIT_RX_DR清除,RX_P_NO和数据依然有效。所以,为了防止标志位BIT_RX_DR手动清除的延时问题,可以不关心BIT_RX_DR,只判断RX_P_NO,当他小于6时,说明有数据,读出自动清除RX_P_NO。FI..原创 2021-12-17 13:53:58 · 1392 阅读 · 0 评论 -
NRF24L01P全双工串口设计
原理细节这个文章写得很详细,讲解NRF24L01P无线收发模块这里说些大白话,全是满满的干货。说来惭愧,这是我花了整整一个星期研究出来的结果。工作原理:无线通许采用2.4GHz载波通讯,收发的数据均是再载波上传输的,同一时刻只能发送或者接受。 由于同一个时刻只能一方发送,所以需要规定时序,由谁发送?什么时候发送?所以需要时间同步信号(此处说的是方便理解,其他地方并未提到同步信号这一说)。 为了确定谁发谁收,所以NRF24L01P需要设置发送模式(PTX)和接收模式(PRX),PRX接..原创 2021-03-15 15:15:52 · 579 阅读 · 0 评论