• 树莓派与Arduino Leonardo使用NRF24L01无线模块通信之基于RF24库 (一) 配置与测试


    引脚连接说明

    与树莓派的连线

    NRF24L01 => 树莓派

    GND          =>   GND

    VCC          =>    3.3V

    CE           =>   GPIO25 即22管脚

    CSN         =>   CE0(GPIO8) 即 24管脚

    SCK         =>   SCLK(GPIO11)即23管脚

    MOSI       =>   MOSI(GPIO10)即19管脚

    MISO       =>   MISO(GPIO9)即21管脚

    IRQ          =>   GPIO18即12管脚

    nRF24L01硬件连接

    此模块是使用SPI方式连接,在标准SPI口基础增加CE和CSN引脚: nRF24L01 Arduino Leonardo
    VCC <-> 3.3V
    GND <-> GND
    CE <-> D9
    CSN <-> D10
    MOSI <-> ICSP MOSI
    MISO <-> ICSP MISO
    SCK <-> ICSP SCK
    IRQ <-> 不接

    配置说明

    树莓派

     将RF24库复制到树莓派(或通过git直接获取),https://github.com/TMRh20/RF24.git。进入RF24目录后执行如下命令,进行编译和安装(选择SPI方式)

    ./configure --driver=SPIDEV
    sudo make install -B

    修改/etc/modprobe.d/raspi-blacklist.conf,如果其中存在
    blacklist spi-bcm2708,将其注释。

    修改/etc/modules文件,在其中追加一行,开启SPI。
    spidev
    reboot重启树莓派后,/dev下会新增spidev0.0和spidev0.1两个设备文件。

    修改RF24/example_linux/GettingStarted.cpp文件,
    同上面的Arduino一样,发送端不必修改,
    接收端将radioNumber从默认的0修改为1。
    在当前目录下执行make后,生成GettingStarted的二进制文件。

    使用sudo ./ GettingStarted执行,并输入0进入接收模式。
    如Arduino的发送端配置、运行正常,则正常发送回应包:

    如果上面图片中的参数为0x00或者0xff,可能连接存在问题。

    Arduino

     从https://github.com/TMRh20/RF24.git下载RF24后,将其复制到Arduino安装目录下的libraries目录下,启动ArduinoIDE后,从例子中选择RF24->GettingStarted。

    发送端不必修改,直接编译上传即可。
    接收端将代码中的radioNumber从默认的0修改为1。

    如上述配置接线正常,可在Serial Monitor中看到发送方和接收方的输出,大致如下:

    可能由于接线问题导致程序无法正确传输数据,此时可以采用下面方法测试arduino是否正确连接nrf24l01:

    去https://github.com/tmirun/Arduino-nrf24l01-learn 下载测试代码下载解压后你可以在里面找到一个叫 rf24_hardware_test 的文件夹, 打开里面的 rf24_hardware_test.ino 文件,

    烧到arduino里面。然后打开串口调试窗口,在arduino加载完代码后 5 秒后会出现类似下面的内容 证明线全部好了, 如果全部出现 0xff 或 0x00请重新查看下链接是否正确。*注意 串口要调到 57600否则会出现乱码。

  • 相关阅读:
    添加配置分析
    day06 prometheus
    电话收藏
    xxljob客户端启动分析
    xxljob运行idea可以,生产环境不行
    Apoll创建项目分析
    xxljob后台admin管理端启动流程
    xxljob服务器端远程触发任务逻辑
    发布配置分析
    Java 线程池工作过程
  • 原文地址:https://www.cnblogs.com/wuchaodzxx/p/8436571.html
Copyright © 2020-2023  润新知