项目简介
本项目借助Arduino框架,利用Attiny85微控制器和RFM69无线模块构建了低功耗、高效的无线传感器网络。它支持Attiny85微控制器,具备与RFM69无线模块的通信功能,适用于有低功耗和无线通信需求的场景。
项目的主要特性和功能
- 支持Attiny85微控制器,可在资源受限环境下运行。
- 通过RFM69无线模块实现节点间无线通信,支持低功耗模式。
- 因Attiny85硬件限制,通过直接读取RFM69寄存器实现ACK确认,避免使用中断。
- 支持Micronucleus和Optiboot引导加载程序,用户可按需选择。
- 采用低功耗设计,适合电池供电的应用场景。
安装使用步骤
准备硬件
- 准备一个Arduino(如UNO或Nano)作为编程器。
- 按如下方式连接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 | - 在Arduino的Reset和GND之间添加一个10uF的电容。
配置Arduino IDE
- 在Arduino IDE中添加Attiny85支持。
- 下载并安装AVRDUDESS工具(用于烧录引导加载程序)。
烧录引导加载程序
- 选择Micronucleus或Optiboot作为引导加载程序。
- 使用AVRDUDESS工具烧录引导加载程序到Attiny85。
连接RFM69模块
- 按如下方式将RFM69模块与Attiny85连接: | Attiny | Attiny (Pin number) | RFM69 | | --- | --- | --- | | SS/PB3 | (2) | SCK | | MOSI/PB1 | (6) | MOSI | | MISO/PB0 | (5) | MISO | | SCK/PB2 | (7) | SCK |
- 注意:RFM69不支持5V电压,需使用电平转换器。
上传代码
- 使用Arduino IDE上传代码到Attiny85,选择Attiny85(Micronucleus)板和Micronucleus作为编程器。
- 注意:Arduino IDE 2.0.4版本可能存在问题,建议使用1.8.x版本。
测试和调试
- 上传代码后,进行测试,确保无线通信正常工作。
- 根据需要进行调试和优化。
注意事项
- Attiny85需要至少8MHz的时钟频率。
- 不要移除写入能力。
- 不要使用外部时钟。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】