littlebot
Published on 2025-04-03 / 1 Visits
0

【源码】基于Arduino的TinySigfox通信库

项目简介

TinySigfox是专门为Arduino平台设计的库,用于和Wisol SFM10R4 Sigfox模块进行通信。此库提供简单易用的接口,支持通过AT命令在Sigfox网络进行数据上传(Uplink)和下载(Downlink),适用于低功耗物联网(IoT)应用。

项目的主要特性和功能

  • 低功耗设计,适用于低功耗IoT设备,支持深度睡眠模式,功耗仅2.5uA。
  • 支持Sigfox RC4区域网络,提供Uplink和Downlink功能。
  • 与Arduino UNO、Leonardo、ESP8266、ESP32、STM32等多种微控制器平台兼容。
  • 支持硬件串口和软件串口,满足不同硬件配置需求。
  • 提供调试模式,便于开发和故障排查。
  • 支持获取模块的ID、PAC、温度和电压信息,提供模块的复位和休眠功能。

安装使用步骤

假设用户已经下载了本项目的源码文件。 1. 导入库文件:将TinySigfox库文件夹放入Arduino项目的libraries目录中,或者通过Arduino IDE的库管理器导入。 2. 配置硬件连接:根据硬件平台,连接Wisol SFM10R4模块到Arduino的串口引脚,确保电源电压在2.5V到3.8V之间。 3. 编写代码 - 在Arduino IDE中创建一个新的Sketch,并包含TinySigfox库的头文件: ```cpp

include

- 根据硬件平台,选择合适的串口通信方式。例如,使用Arduino UNO的软件串口:cpp

include

SoftwareSerial mySerial(10, 11); // RX, TX Tiny wisol(&mySerial, &Serial, 3, true); 4. **初始化模块**:在`setup()`函数中初始化模块:cpp void setup() { Serial.begin(115200); wisol.begin(9600); // 初始化模块,设置波特率为9600

Serial.print("ID: "); Serial.println(wisol.ID()); // 获取模块的ID

Serial.print("PAC: "); Serial.println(wisol.PAC()); // 获取模块的PAC } 5. **发送数据**:在`loop()`函数中发送数据到Sigfox网络:cpp void loop() { uint32_t data = 12345; // 要发送的数据 Serial.println(wisol.SEND(data)); // 发送数据并打印结果

delay(10000); // 延迟10秒 } ``` 6. 编译和上传:编译代码并上传到Arduino板,打开串口监视器查看输出信息。

许可证

本项目代码遵循Apache 2.0开源许可证。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】