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

【源码】基于Arduino的日出模拟时钟

项目简介

这是一个基于Arduino的日出模拟时钟项目,它借助逐渐增加LED串灯亮度来模拟日出,以柔和方式唤醒用户,取代传统刺耳闹铃声。在冬天日出晚时或用户想柔和醒来的场景下,该设备十分实用。

项目的主要特性和功能

电子部分

  • 使用Arduino Mega 2560微控制器,兼容的Arduino板也适用。
  • 用Mega原型护盾搭建电子组件。
  • 由12VDC电源供应器为Arduino和LED串灯供电。
  • 用MOSFET将LED电源调至最高12V,从Arduino的PWM引脚输出控制信号,避免高功率通过Arduino本身,采用IRF530 MOSFET驱动LED。
  • 用Adafruit RTC模块准确读取时间并在断电时保持时间。
  • 通过旋转编码器控制设备设置和时间调整。
  • 在Adafruit的七段LED背光或类似设备上显示时间。

软件部分

  • 编写Arduino Sketch,处理RTC时钟功能、LED时钟显示、用户控制和LED串灯渐变效果。
  • 用EEPROM存储用户设置,断电后设置不丢失。
  • 支持自定义LED引脚、旋转编码器引脚、七段LED地址等。
  • 可调整日出渐变时间,支持RGB LED独立控制。

安装使用步骤

硬件准备

  • 准备Arduino Mega 2560或其他兼容的Arduino板。
  • 连接12VDC电源供应器,保证电源稳定。
  • 连接LED串灯,用MOSFET控制亮度。
  • 连接Adafruit RTC模块和旋转编码器。
  • 连接七段LED显示器。

软件准备

  • 下载并安装Arduino IDE。
  • 下载本项目的源码文件。
  • 安装所需的Arduino库,如Adafruit RTClib、Adafruit LED Backpack等。

编译与上传

  • 打开Arduino IDE,加载项目中的MySunrise.ino文件。
  • 选择正确的Arduino板和端口。
  • 点击“上传”按钮,将代码上传到Arduino板。

配置与使用

  • 用旋转编码器设置当前时间、闹钟时间、显示亮度和LED最大亮度。
  • 双击旋转编码器按钮进入设置模式。
  • 按住按钮可立即启动日出渐变效果。
  • 在日出过程中,单击旋转编码器按钮可取消或重新启用当前的日出周期。

下载地址

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