方案介绍
本方案是基于 Rpi Pico 的万圣节通话时钟,是一个万圣节会说话的时钟,每点钟播放一次声音。只需要几个外部组件即可。
概念:
市场上很多音乐挂钟都没有改变原声的可能性。可以使用嵌入式系统构建具有该功能的时钟。但是选择哪一个呢?选择 Raspberry Pi Pico 有以下三个原因:
无需为初始固件下载安装软件
板载内存 2 兆字节的闪存可以存储一定数量的声音,而无需外部存储器
可由 2 节 AA 电池供电,无需额外组件
Rpi Pico 在其最低功耗模式(深度睡眠)下消耗约 1.6 mA。看起来不多,但对于电池供电的电路来说太高了,因为它们会在大约两个月内耗尽。因此,添加了可以完全关闭电路板的外部电源电路。之后,功耗降低到 70 uA,因此电池可以使用一年。
Rpi Pico 充当声音存储和播放器。为了显示时间并产生 O'clock 信号,使用了带触发器的石英钟机芯。结合这两个元素,一个会说话的声音时钟诞生了
主要特点:
软件:
上电后,Rpi Pico 将连接到电源电路的 GPIO 置于低电平以保持其通电,然后决定播放哪个文件,声音结束后,将高电平置于 GPIO 断电皮科。此外,读取光传感器以在黑暗(夜间)时不播放声音。
声音文件按顺序播放,每次开机时一个一个。指向下一个文件的指针存储在非易失性存储器中,请小心修改程序以保持最少写入。
SDK C/C++ 版本的特点:
要播放的声音必须先转换为 WAV 格式 16 位单声道 @ 44100 Hz,然后在编译之前转换为 C arrays[]。该应用程序通过数字输出和中断使用 PWM 来播放声音。
程序在通电后几乎立即开始执行。目前应用程序的主要缺点,它只支持较大的.WAV文件,并且不重新编译代码无法更改
CIRCUITPYTHON 版本的特点:
要播放的声音必须转换为 MP3 单声道格式,该应用程序使用 audiomp3 和 audiopwmio 模块从数字引脚 (PWM) 输出音频。这些文件存储在CP提供的文件系统中,因此修改它们很简单,只需拖放即可。
对于相同的文件大小,MP3 文件可以比 WAV 多存储大约 10 个声音时间,但是 CircuitPython 运行时执行需要超过一秒钟的时间,因此对于任何类型的最终应用程序来说可能都不是一件好事
硬件:
外部组件是三种不同功能之一的一部分:
On/Off : 电路由一个 MOSFET 组成,Drain 端连接到 3V3_EN,Source 端连接到 GND。连接到栅极的是 2 个元件:接地电容器和连接 V+ 的电阻器。该电路按以下方式工作:
On/Off : 电路由一个 MOSFET 组成,Drain 端连接到 3V3_EN,Source 端连接到 GND。连接到栅极的是 2 个元件:接地电容器和连接 V+ 的电阻器。该电路的工作方式如下:第 1 步:电容器充满电,打开 MOSFET 并将 3V3_EN 接地,完全关闭 Rpi Pico 板第 2 步:通过时钟运动触点的短暂闭合,电容器快速放电,关闭 MOSFET,然后打开 Rpi Pico。上电后要做的第一件事是借助低电平的 GPIO 输出保持电容器放电。步骤 3:播放声音时,GPIO 保持低电平。一旦声音结束,GPIO 输出变为高电平,因此 MOSFET 再次打开,关闭 Rpi Pico 直到下一次开关闭合
音频放大器:单级、单 NPN 晶体管为小型 8 欧姆扬声器供电。还有一个输入 RC 低通滤波器来平滑由 PWM 输出引起的噪声。
日/夜检测:可见光传感器,避免在夜间播放声音。连接到 ADC 引脚
板组装:
Rpi Pico、扬声器、光传感器和时钟触点可以直接焊接到 PCB 上以获得非常小的高度轮廓,或者添加排针和母插座以获得更灵活的选择。
单面板可以在家蚀刻。有一些免费的 gpio 垫用于实验以及角落附近的安装孔
要制作挂钟,请选择由塑料或木头制成的盘子或圆盘,其直径足以隐藏时钟机芯和音板。修复所有电子元件,然后是 LED 灯等装饰配件。
对于小时调整,取出所有电池和时钟指针(时、分、秒)。慢慢转动时钟调节旋钮,直到听到“咔嗒”声。将所有时钟指针指向 12 点钟。装上电池。按下板上的瞬时按钮开关可以改变声音。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !