凡铁游戏提供最新游戏下载和手游攻略!

DIY语音相册-使用Firebeetle M0主板制作语音相册进入语音相册

发布时间:2024-07-05浏览:6

【点击上方“蓝色字”关注DF创客社区,一起成为科技狂人】

▲ 文末有完整视频

最近在想做一件特别的礼物,看到朋友买实体相册当礼物,我就想能不能在实体相册上做一些创新,比如增加一些互动?

翻看相册里的照片,照片时常让我想起过去的岁月,感动的往往不是变化的事物,而是定格在照片里的那些不变的瞬间。

每个瞬间都有一个故事,为何我们不让照片自己讲述故事呢?

所以制作语音专辑的想法一直在我脑海里回荡,在看到DFRobot推出的Firebeetle M0主板之后,突然发现这款主板可以实现我的想法。

我先解释一下为什么说是正好,Firebeetle M0主板的主芯片采用了ATSAMD21G18 ARM Cortex M0+高性能32位处理器,而且还带有数模转换DAC,也就是说我可以通过MCU软件解析音频文件,并播放声音。

主板还集成了16MB SPI Flash,可以虚拟出一个12MB的U盘用于数据存储。也就是说我可以通过USB直接把音频文件存到Flash里。我算了一下,一个单声道的WAV文件大概可以存5分钟,足够讲几个故事了。

有了必要的GPIO作为按钮输入,Firebeetle M0主板就可以完成我的工作。

下面就Firebeetle M0主板进行详细介绍:

我买了一本漂亮的 16 英寸自粘层压相册,封面是 Childe Hassam 的《海边》。

选定的组件

零件清单:

FIT0625 两节AA电池盒带开关(安装一对AA电池)1

FIT0192 36mm 直径 8 欧姆 1W 扬声器 1 个

DFR0119-O 3W迷你音频功放板 1

DFR0039 SMD按钮 5件

DFR0652 Firebeetle M0主板 1块

FIT0752 0.4mm耐高温焊丝(白色) 1卷

16 英寸自粘层压相册

准备工具:

FIT0456 十字/一字两用螺丝刀 1件

KIT0077 基础焊接工具套装(含焊接所需的烙铁、钳子、镊子等) 1套

FIT0641 USB Type-C 数据线 1条

1 卷双面胶带

1 台电脑

所用软件:

1.Arduino IDE编程环境

2. Audacity 音频转换软件

3.voice_album.ino代码

制作步骤:1.安装Arduino IDE和Firebeetle M0主板SDK,并测试开发环境

在使用 Firebeetle M0 主板之前,首先需要下载并安装 Arduino IDE 开发环境来测试 Firebeetle M0 主板。从 Arduino 官方网站 [1] 下载最新版本的 IDE 开发环境。有关使用 Arduino IDE 的介绍,请参见此处 [2]。

IDE安装完成后,打开IDE,下载并安装Firebeetle M0主板的SDK。

单击文件 -> 首选项

在Preferences界面,点击Additional Boards Manager URLs最左边的窗口图标,会弹出输入URL的窗口。

将以下链接地址复制到新弹出的对话框中

点击OK保存Firebeetle M0主板SDK的URL地址

在“首选项”界面点击“确定”按钮,保存配置。

点击工具 -> 论坛 -> 论坛管理器

此时您可以看到 Firebeetle SAMD Board SDK。单击 Install 以安装 SDK。

安装完成后我们在Board界面可以看到Firebeetle M0主板的选项,我们选择Firebeetle M0

将Firebeetle M0主板通过USB线连接到电脑,可以看到操作系统发现了一个新的COM口,在Port菜单中选择新的COM口。

为了验证主板是否可以工作,让我们运行一个简单的示例程序来使主板第 13 针上的 LED 闪烁。

点击左上角箭头按钮,LED闪烁程序将被编译并烧录到主板,烧录过程中主板13脚LED快速闪烁,当IDE左下角显示Done uploading时,程序下载完成。

我们可以看到主板13脚位的绿色LED灯以一秒亮一秒灭的节奏闪烁,代表主板是好的,开发环境已经搭建完毕。

2. 使用烙铁焊接硬件

相册语音阅读怎么打开_语音相册_进入语音相册

将音频功放、扬声器和5个按钮焊接在一起。按钮连接线长约15厘米。

接线图

3. 挑选照片,讲述照片背后的故事,并准备音频文件

我们挑选照片,准备好要讲述的故事,用手机录下五个故事的音频文件,注意声音要大一些,以提高信噪比。

如果检查无误,我们就把这些文件传输到PC上,一般都是.m4a文件,然后我们给这些文件重新命名,因为程序中5个键的编号是从0到4,所以我们的文件名也是从0到4。

这些文件是压缩的双通道文件,我们需要将它们转换为Firebeetle M0主板可以使用软件音频解码的WAV单声道文件。

我们利用开源免费音频软件Audacity将m4a文件转换为单声道的WAV文件。下载地址:

Audacity软件安装完成后,我们还需要下载一个免费的ffmpeg-win-2.2.2.exe插件#lamewindl

ffmpeg-win-2.2.2.exe安装完成后,在Audacity软件中点击菜单编辑->首选项

点击Libraries -> FFmpegLibrary -> Location,选择FFmpeg的安装路径,点击OK

点击Audacity软件文件->打开,打开刚刚录制的0.m4a文件,点击音轨上方的下拉按钮,选择Split Stereo to Mono,分离出单声道。

点击某个频道的静音按钮即可将该频道静音,并选择 44100Hz 作为项目速率。

点击文件 -> 导出 -> 导出为 WAV,导出 WAV 文件

编码选择无符号8位PCM格式,保存为0.wav文件

使用上述方法将其他 4 个 .m4a 文件转换为 .wav 文件

将Firebeetle M0主板通过USB线连接到电脑,双击侧面的RST按钮,主板上的RGB灯变绿,电脑上弹出一个U盘。将准备好的五个.wav文件复制到这个U盘中。复制速度比普通U盘慢,需要耐心等待。

复制完成后我们点击RST按钮进入编程模式。

4.将音频专辑代码下载到Firebeetle M0主板

现在打开 Arduino IDE,单击 Sketch -> Include Library -> Add .ZIP Librar 并在附加的代码文件中选择 AudioZero.zip 音频库。音频库现已成功添加。

在Arduino IDE中点击File -> Open打开voice_album.ino,点击Ipload按钮将语音相册程序下载到Firebeetle M0主板

参考代码:

// voice album project
// 代码比较长,为方便阅读,暂时不展示出来了,有需要的可以看文末

如果测试显示按下5个按钮都能播放相应的歌曲,则软件和电路部分已经完成,接下来我们需要将电路安装到专辑中。

5. 将电路组装到相册中

相册共有三颗螺丝,为了方便安装按钮,我们把最下面的螺丝卸了。

相册首页

对于相册最后一页的螺丝,我们只需要卸下最下面的一个

我们用镊子把纽扣线穿过书轴

安装好按键,连接好电路部分后,安装相册的螺丝

使用双面胶带将电池盒,Firebeetle M0主板,扬声器固定在相册上。

将照片放入相册

至此,一张DIY语音专辑就制作完成了,你想尝试制作自己的语音专辑吗?

▲ 完整视频

参考

[1]

Arduino官方:

[2]

有关 Arduino IDE 的介绍,请参见此处:%E5%85%A5%E9%97%A8%E6%95%99%E7%A8%8B

首次发表于 DF Maker 社区:

热点资讯