littlebot
Published on 2025-04-12 / 4 Visits
0

【源码】基于Arduino框架的Attiny85无线传感器网络

项目简介

本项目借助Arduino框架,利用Attiny85微控制器和RFM69无线模块构建了低功耗、高效的无线传感器网络。它支持Attiny85微控制器,具备与RFM69无线模块的通信功能,适用于有低功耗和无线通信需求的场景。

项目的主要特性和功能

  1. 支持Attiny85微控制器,可在资源受限环境下运行。
  2. 通过RFM69无线模块实现节点间无线通信,支持低功耗模式。
  3. 因Attiny85硬件限制,通过直接读取RFM69寄存器实现ACK确认,避免使用中断。
  4. 支持Micronucleus和Optiboot引导加载程序,用户可按需选择。
  5. 采用低功耗设计,适合电池供电的应用场景。

安装使用步骤

准备硬件

  1. 准备一个Arduino(如UNO或Nano)作为编程器。
  2. 按如下方式连接Arduino与Attiny85: | Attiny | Attiny (Pin number) | Arduino (Pin number) | | --- | --- | --- | | Reset/PB5 | (1) | (10) | | PB3 | (2) | - | | PB4 | (3) | - |
    | GND | (4) | GND | | MOSI/PB0 | (5) | (11) | | MISO/PB1 | (6) | (12) | | SCK/PB2 | (7) | (13) | | VCC | (8) | 5V |
  3. 在Arduino的Reset和GND之间添加一个10uF的电容。

配置Arduino IDE

  1. 在Arduino IDE中添加Attiny85支持。
  2. 下载并安装AVRDUDESS工具(用于烧录引导加载程序)。

烧录引导加载程序

  1. 选择Micronucleus或Optiboot作为引导加载程序。
  2. 使用AVRDUDESS工具烧录引导加载程序到Attiny85。

连接RFM69模块

  1. 按如下方式将RFM69模块与Attiny85连接: | Attiny | Attiny (Pin number) | RFM69 | | --- | --- | --- | | SS/PB3 | (2) | SCK | | MOSI/PB1 | (6) | MOSI | | MISO/PB0 | (5) | MISO | | SCK/PB2 | (7) | SCK |
  2. 注意:RFM69不支持5V电压,需使用电平转换器。

上传代码

  1. 使用Arduino IDE上传代码到Attiny85,选择Attiny85(Micronucleus)板和Micronucleus作为编程器。
  2. 注意:Arduino IDE 2.0.4版本可能存在问题,建议使用1.8.x版本。

测试和调试

  1. 上传代码后,进行测试,确保无线通信正常工作。
  2. 根据需要进行调试和优化。

注意事项

  • Attiny85需要至少8MHz的时钟频率。
  • 不要移除写入能力。
  • 不要使用外部时钟。

下载地址

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