项目简介
本项目是一个Arduino LoRa库,与其他库不同之处在于,它为常见应用提供了大量工作示例。该库支持多种Semtech LoRa设备,可用于各类LoRa模块的开发,致力于让相同的程序草图能跨不同频段的LoRa模块使用。此外,它实现了直接访问LoRa设备内部数据缓冲区的功能,代码风格简单易懂,便于用户根据自定义应用进行修改。
项目的主要特性和功能
- 丰富的示例程序:包含基本收发示例,以及发送接收传感器数据、远程控制设备、GPS跟踪、低功耗睡眠模式应用、高空气球跟踪、大数据数组或文件传输、图像收发、可靠数据包传输、距离测量等多种实际应用场景。
- 可靠数据包传输:库函数自动为每个数据包附加有效负载CRC和网络ID,接收器可确认数据包来源和顺序,发送器可要求接收器有效确认响应后再继续传输。
- 直接访问内部缓冲区:可将变量或字符数据直接写入LoRa设备内部缓冲区,无需在Arduino中使用内存缓冲区,简化数据包收发方式。
- 多设备支持:支持SX1262、SX1268、SX1272、SX1276 - SX1279、SX1280、SX1281等Semtech LoRa设备。
- 灵活的引脚配置:支持SPI总线,可根据不同模块灵活设置引脚,还提供减少引脚使用的方法。
- 详细的设备设置:提供多种库函数用于设置LoRa设备的工作模式、频率、调制参数、数据包参数等。
安装使用步骤
安装库
- 打开Arduino IDE,选择“Sketch”,然后选择“Include Library”。
- 选择“Add .ZIP library”,浏览并选择下载的ZIP文件(“SX12xx - master.zip”)。
测试新设置
可以先运行“Basics”文件夹中的“2_Register_Test”示例程序,该程序仅对LoRa设备进行简单的寄存器打印。若此程序无法运行,则其他示例程序也可能无法正常工作。此程序独立运行,无需安装库。
运行示例程序
- 许多示例程序已在SX126x设备上测试通过,在SX127x库上编写并测试的示例程序,只需进行一些小修改即可在SX126x和SX128x设备上运行。
- 部分示例中的“Settings.h”文件包含LoRa设备的设置,如频率、扩频因子、带宽和编码率等。使用时需检查所在地区是否允许使用相应频率。
- 一些示例草图,特别是相机和文件传输草图,使用了额外的Arduino库,部分库需自行下载安装。
注意事项
- 此库支持的Semtech设备为3.3V逻辑电平设备,若使用5V逻辑电平的Arduino,需实现某种形式的逻辑电平转换。
- 本库仅支持基于SPI接口的LoRa模块,不支持基于UART接口的模块,如Ebyte和Microchip的模块。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】