DIY语音相册-使用Firebeetle M0主板来制作一款语音相册-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 5011|回复: 0

DIY语音相册 -使用Firebeetle M0主板来制作一款语音相册

[复制链接]
回帖奖励 1 金币 回复本帖可获得 1 金币奖励! 每人限 1 次(中奖概率 50%)
发表于 2021-3-29 10:55 | 显示全部楼层 |阅读模式
本帖最后由 dfrobot 于 2021-3-29 14:01 编辑

DIY语音相册
-使用Firebeetle M0主板来制作一款语音相册

最近一直在琢磨做一个特别的礼物。看到朋友购买实体相册送人,我想是否能够在实体相册上做一些创新呢,例如增加一些互动?
我翻看着相册里面的相片,相片往往让我回想起过往岁月的点点滴滴,往往令人感动的不是变化的事物,而是那些被相片定格的不变的瞬间。
每一个瞬间都有一段故事,为什么我们不让照片自己来讲述这段故事呢?
于是制作语音相册的想法一直在我脑海中回荡。自从看到了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寸自粘式覆膜相册,封面是印象派画家柴尔德·哈萨姆的海边。


选用的部件



部件清单:
1. FIT0625 带开关两节7号电池盒(安装一对7号电池) 1只
7. 16寸自粘式覆膜相册 1本

准备的工具:
2.     KIT0077 基础焊接工具套装(里面包含了焊接所需的烙铁、钳子、镊子等)  1套
3.     FIT0641 USB Type- C线 1条
4.     双面胶 1卷
5.     电脑  1台


所用到的软件:
1.  Arduino IDE 编程环境
2.  Audacity音频转换软件
3.  voice_album.ino 代码


制作步骤:
一、安装Arduino IDE和Firebeetle M0主板SDK,并测试开发环境
使用Firebeetle M0主板之前,首先需要下载并安装Arduino IDE开发环境,测试Firebeetle M0主板。
Arduino官方下载最新版本的IDE开发环境。


IDE安装好以后,打开IDE,然后下载安装Firebeetle M0主板的SDK

点击File -> Preferences

1.在Preferences界面点击Additional Boards Manager URLs最左边的窗口图标,将弹出输入URL的窗口。
2.将下面的链接地址复制到新弹出的对话框中
3.点击OK将保存Firebeetle M0主板SDK的URL地址
4.点击Preferences界面的OK按钮保存配置



点击Tools -> Board -> Boards Manager


此时可以看到Firebeetle SAMD Board这个SDK,点击Install安装SDK



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



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



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



点击左上角的箭头按钮,LED闪烁程序将会编译后烧写到主板。烧写过程中主板上的13脚LED灯快速闪烁,当IDE左下角显示Done uploading说明程序下载完成。


可以看到主板上13脚的绿色LED灯按照亮一秒灭一秒的节奏闪烁,说明主板是好的,开发环境我们也搭好了。



二、使用电烙铁焊接硬件
将音频功放、喇叭和5个按钮焊接在一起,按钮的连线15厘米左右


连线示意图







三、挑选照片,讲述照片背后的故事,准备音频文件
我们挑选出照片,准备好我们想讲的故事。用手机录制5个故事的音频文件,需要注意的是声音需要大声一些,这样可以提高信噪比。
如果检查没有问题,我们将这些文件传输到PC上,它们一般是.m4a文件,我们对文件进行重命名。因为5个按键在程序里面的编号是从按键0到按键4,所以我们文件的命名也是从0到4。


这些文件是压缩后的双声道,我们需要转换为Firebeetle M0主板能够软件音频解码的WAV单声道文件。
我们使用Audacity这个开源免费的音频软件将m4a文件转换为单声道WAV文件。


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


ffmpeg-win-2.2.2.exe安装好后,在Audacity软件点击菜单Edit ->Preferences


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


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


点击一个声道的Mute按钮对这个声道进行静音,Project Rate选择44100Hz

点击File -> Export ->Export as WAV,导出WAV文件


Encoding选择Unsigned 8-bit PCM格式,保存0.wav文件

按照以上方法将其他4个.m4a文件转换为.wav文件


将Firebeetle M0主板通过USB线连接到电脑,双击侧面的RST按钮,此时主板上的RGB灯变成绿色,电脑也将弹出一个U盘,将准备好的5个.wav文件拷贝到这个U盘。拷贝的速度比通常的U盘慢,需要耐心等待。


拷贝完成后,我们单击RST按钮,进入到编程模式。


四、下载语音相册的代码到Firebeetle M0主板
此时打开Arduino IDE,点击Sketch -> Include Library -> Add .ZIP Librar选择附件代码文件中的AudioZero.zip音频库,此时成功加入了音频库





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

如果测试5个按钮按下都能够播放对应的歌曲,软件和电路部分我们就完成了,接下来我们需要将电路安装到相册里面。


五、将电路装配到相册里
相册有三颗螺丝,为了方便安装按钮,我们拆掉最下面的一个螺丝。

相册第一页


相册最后一页的螺丝,我们只需要拆掉最下面那一颗即可

我们使用镊子将按钮线穿过书轴

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


使用双面胶将电池盒、Firebeetle M0主板、喇叭固定在相册上

将照片放置到相册

至此一个DIY的语音相册就完成了。你要不要试试做一本自己的语音相册呢?

DIY语音相册  -使用Firebeetle M0主板来制作一款语音相册
https://mc.dfrobot.com.cn/thread-308818-1-1.html
(出处: DF创客社区 - 分享创造的喜悦)
附件可前往原文下载
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 04:44 , Processed in 0.234333 second(s), 16 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表