互动倒计时灯:8×8 RGB 矩阵 + 蓝牙语音控制
核心组件
| 组件 | 数量 |
|---|---|
| Adafruit NeoPixel 8×8 RGB LED 矩阵 | 1 |
| SparkFun BlueSMiRF Silver 蓝牙模块 | 1 |
| Arduino Uno | 1 |
| 无源蜂鸣器 | 1 |
| 迷你面包板 + 公母跳线 | 若干 |
| 5V 移动电源 (便携供电) | 1 |
| Windows 10 Mobile 手机 (运行 Virtual Shields App) | 1 |
项目缘起
6 岁女儿没有时间概念,“再玩 2 分钟”对她毫无约束力。微波炉定时器她看不见、听不着。于是萌生想法:做一个便携、可视、可远程设定的倒计时灯。
交互设计
- 视觉隐喻:64 颗 LED 模拟“彩色水滴落下汇聚”,每 1/64 总时长亮一颗,全亮即时间到
- 多档位:1/2/5/10/15/30 分钟可选
- 语音设定:对着手机说 “five minutes” 即可启动,无需按键
- 续时功能:时间到后再次语音指令可追加时长
- 蜂鸣提醒:倒计时结束全屏闪烁 + 蜂鸣器报警
硬件接线 (约 30 分钟)
- LED 矩阵:焊 3P 排针 (VCC、GND、DIN) → 面包板 5V/GND 总线,DIN 接 Arduino D9 (避开 D0/D1)
- 蓝牙模块:VCC/GND 接总线,TX→Arduino RX (D0),RX→Arduino TX (D1)
⚠ 上传代码前必须拔掉 TX/RX 跳线,烧录完成后再插回 - 蜂鸣器:正极接 D3,负极接 GND
- 供电:Arduino USB 接移动电源,即刻便携
软件架构
- Arduino 端:
Adafruit_NeoPixel或Nulsom LEDMatrix库驱动矩阵;VirtualShield库通过蓝牙串口与手机通讯 - 手机端:安装 Windows Virtual Shields for Arduino App,配对蓝牙,授权麦克风/定位权限
- 语音识别由云端完成,Arduino 仅解析 “one/two/five…” 关键词并启动倒计时
代码与原理图
完整代码:GitHub
Fritzing 原理图:项目附件 countdown_timer.fzz
适用场景
- 儿童专注力训练 / 番茄工作法
- 厨房、健身、会议室可视计时
- 无屏幕交互教学演示
制造工艺
- 自制便携树莓派 RetroPie 掌机 – 第 1 部分:电子与测试
- Arduino UNO + MAX7219 自制《UFO攻击》复古射击游戏机
- 理解看门狗定时器:如何防止单片机死机卡死
- 使用 SparkFun 7 段数码管构建可靠的 Arduino 倒计时器
- 光影交响:Arduino DIY 生日祝福灯光音乐装置
- 汽车线束全解析:可靠汽车电气性能的关键概念
- 构建555单稳态多谐振荡器:分步指南
- 电气原理图导线连接约定:清晰指南
- 网络与总线:数字系统布线的清晰指南
- 告别跳线:BreadShield让Arduino直连面包板
- 钛丝:类型、特性与工业应用
- 构建可靠VHDL计时器:从时钟周期计数到小时