2015年07月20日 星期一 10:46
无线通信的应用非常普遍,协议也多种多样,蓝牙是大家都比较熟悉的一种无线通信协议,但其最大的缺陷是通信距离比较短,严重制约了其应用的场景。
nRF24L01是一家挪威公司设计生产的射频(2.4GHz)通信芯片,通过SPI与MCU通信,传输速录可达到2Mbps,在适当的天线配置下,通信距离可以超过200米。
国内有很多家公司生产基于nRF24L01芯片的开发板,使用很方便。
这些开发板都可以通过Arduino来驱动。Arduino与无线开发板的连接关系如下:
无线开发板 Arduino
1,GND GND
2,3V3 3V3
3,CE 9
4,CSN 10
5,SCK 13
6,MOSI 11
7,MISO 12
在GitHub上有好多第三方的Library可供使用。我使用的是下面这个:
https://github.com/maniacbug/RF24
这个Library带有好几个示例程序,但有部分示例运行不稳定,我测试的是pingpair示例程序,运行比较稳定,可以作为基础进行进一步开发。
需要注意的是,我们要进行无线通信,需要有两个nRF24L01的开发板,并使用两套Arduino来驱动。
我在办公室环境进行测试,距离10米左右,隔了一堵墙,通信非常稳定。
参考资料:
Zeuux © 2024
京ICP备05028076号