0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何利用ATSAMD21G18 M0设计音乐相册

h1654155282.3538 来源:电子报 作者:h1654155268.1688 2021-06-06 14:56 次阅读

制作的音乐相册主要是在现有的普通相册上,通过Firebeetle M0实现照片的音乐控制,实现本文的音乐相册制作。Firebeetle M0主板的主芯片使用了一款ATSAMD21G18 ARMCortex M0+ 高性能32位处理器,而且还带一路数模转换DAC,可以通过MCU软件解析音频文件,并播放出声音。在主板上还集成了16MB SPI Flash,可以虚拟出一个12MB的U盘用于存储数据。可以通过USB将音频文件直接存储到Flash中,在加上必要的GPIO作为按钮的输入,一个Firebeetle M0主板可以完成我的这个作品。根据存储量计算,按单声道音乐存储WAV文件大概可以存储5分钟,对于一个相册放入5张左右的照片,即可完美的搭配在一起。

一、Firebeetle M0主板简介DFRobotFireBeetle是DFRobot小巧开发板系列,既可单独使用也可以堆叠使用,拥有不同的主控板与扩展板,多样的功能堆叠,简单的模块组合。FireBeetle M0,与arduino M0一样使用了ATSAMD21G18 ARM Cortex M0+高性能低功耗芯片,主频高达48MHz,拥有32KB RAM和256KB Flash,分别是Atmega328的8倍和16倍。FireBeetle M0搭载了16MB SPI Flash,其中内置了12MB U盘,大大简化用户的桌面系统与开发板的数据交互操作,并且支持基于SPIFlash的easy flash数据库,内置基于SPIFlash的字模,用户使用屏幕可直接显示中英日韩多国语言文字。使用了更方便的Type-C接口,更舒适的卧式按钮,板载了WS2812 RGB灯,并且板载了FPC插座用于连接屏幕,使用屏幕从未如此简单。Firebeetle M0主板功能及引脚描述见图1所示。

pYYBAGC8cZmAYokSAAOykg_3B0g222.png

二、电路设计基于模块化的设计,主要是对引脚功能辨别和外围元件的连接。本文按照图2所示进行电路设计和连接,以期达到预设功能的目的。

poYBAGC8cZmAFZtMAAJoMUOadOk773.png

三、Firebeetle M0主板SDK功能配置使用FirebeetleM0主板之前,首先需要下载并安装Arduino IDE开发环境,测试Firebeetle M0主板。在Arduino官方下载最新版本的IDE开发环境。IDE安装好以后,打开IDE,然后下载安装Firebeetle M0主板的SDK。具体步骤如下图3. 1.在Preferences界面点击Additional Boards Manager URLs最左边的窗口图标,将弹出输入URL的窗口。
2.将下面的链接地址复制到新弹出的对话框中:http://download.dfrobot.top/firebeetle/package_firebeetle_index.json。
3.点击OK将保存Firebeetle M0主板SDK的URL地址
4.点击Preferences界面的OK按钮保存配置

pYYBAGC8caiAdyYdAAHfk13mJnQ098.png

5、点击Tools -》 Board -》 Boards Manager(见图4)

pYYBAGC8ceqAD192AAH9Nc9qijQ647.png

6. 此时可以看到FirebeetleSAMD Board这个SDK,点击Install安装SDK。

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

poYBAGC8cemABlrbAAFx6D6PvYk297.png

8.通过USB线将Firebeetle M0主板连接到电脑,此时可看到操作系统发现了一个新的COM口,我们在Port菜单选择新的这个COM口。四、下载语音相册的代码到Firebeetle M0主板此时打开ArduinoIDE,点击Sketch -》 Include Library -》 Add .ZIPLibrar选择附件代码文件中的AudioZero.zip音频库,此时成功加入了音频库。操作如图6所示。

pYYBAGC8cfeAQlkbAAEPE9iI2C0879.png

pYYBAGC8dEyAc2WEAAFhpV77y68174.png

poYBAGC8dEyAXLYIAAGGKN5swSc077.png

pYYBAGC8dFuAOn1VAAE4Iq0uzxs357.png

pYYBAGC8dGSAYIicAAHY4KnNLEY521.png

poYBAGC8dHOAEj6zAAGFM6jAnm8675.png

poYBAGC8cfiAM5HlAAKBK4iEL-M103.png

图7点击Audacity软件File -》 Open打开刚才录音的0.m4a文件,点击音轨上方的下拉按钮,选择 Split Stereoto Mono 分离出单声道,操作见图8所示。

poYBAGC8cf-AJ3PQAASPl8gSf6E752.png

点击一个声道的Mute按钮对这个声道进行静音,ProjectRate选择44100Hz,见图9操作示意。

pYYBAGC8chCAd_spAAN5S_qGBzA851.png

图9点击File-》 Export -》Export as WAV,导出WAV文件,操作见图10所示。

poYBAGC8chGAGZS3AANYqfaWLwQ245.png

Encoding选择Unsigned 8-bit PCM格式,保存0.wav文件, 按照以上方法将其他4个.m4a文件转换为.wav文件。将Firebeetle M0主板通过USB线连接到电脑,双击侧面的RST按钮,此时主板上的RGB灯变成绿色(见图11),电脑也将弹出一个U盘,将准备好的5个.wav文件拷贝到这个U盘。拷贝的速度比通常的U盘慢,需要耐心等待。

图11拷贝完成后,我们单击RST按钮,进入到编程模式。最后,将电路装配到相册里。 根据自己的相册安装位置,将电路植入到相册中。到此即完成了音乐相册的制作。
责任编辑人:CC

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 主板
    +关注

    关注

    52

    文章

    1627

    浏览量

    68080
  • GPIO
    +关注

    关注

    16

    文章

    1133

    浏览量

    50562
收藏 人收藏

    评论

    相关推荐

    M0能否取代AVR?

    如今NXP,芯唐等等公司携手ARM公司。推出全新的M0系列32位芯片的时候,而ATMEAVRL价格管制,市场上缺货,炒货,涨价不断。真是不知道AVR的前途如何。本人对AVR是抱有深厚感情的。但是也被逼开始转型ARM。在此想听听各位大侠对AVR和M0的看法?
    发表于 01-25 13:45

    cortex m0开发sdk(源码)

    cortex m0开发sdk(源码),需要的人自取
    发表于 08-04 08:47

    山灵M0使用体验

    作为蓝牙发射端M0作为蓝牙发射端可支持SBC、AAC、aptX、LDAC四种主流蓝牙编码方式。可替代手机连接各种主流的蓝牙耳机,蓝牙音箱。发射端仅输出数字音频信号,音乐音质主要取决于蓝牙设备内置电路
    发表于 08-06 12:59

    小有作为——山灵m0

    滤波eq也都带的有,效果还是比较明显的,喜欢折腾了可以玩一玩。主题能换,不过都是纯色,略微单调。M0的读卡速度有20,写入有15,不算多快,和手机一个水平,tf卡最大支持512g,我最大只有256g
    发表于 08-07 13:07

    性价比无敌的无损音乐播放器山灵M0

    `正是秋高气爽的好季节,出游,登高都是不错的选择,在漫长的路程中,最适合拿出耳机听几首歌曲。之前入手的大法的降噪耳机一直没有找到合适的高品质音乐播放器,这次非常有幸能够拿到山灵M0无损音乐播放器
    发表于 11-02 14:31

    基于React和Webpack的音乐相册做法

    基于 React + Webpack 的音乐相册项目(上)
    发表于 05-17 17:17

    基于React和Webpack实现音乐相册里面的音乐播放器功能

    基于 React + Webpack 的音乐相册项目(下)
    发表于 05-23 16:24

    后发先至,凌(M0)驾齐驱 不一样的M0

    ` 本帖最后由 noctor 于 2020-3-12 14:34 编辑 后发先至,凌(M0)驾齐驱 不一样的M0`
    发表于 03-11 10:53

    用于评估ATSAMD20J18A微控制器

    Cortex-M0 +处理器的微控制器进行评估和原型设计的理想选择。可以单独购买SAM D20 Xplained Pro的扩展板。 ATSAMD20-XPRO评估套件不包括扩展板。 SAM D20
    发表于 05-29 16:34

    浅析STM32 M0的时钟配置

    本文主要讲STM32 M0的时钟配置,也适用于M3内核。先来看看M0内核的时钟树(stm32f072)图中可以看出,M0芯片的时钟源有4个,一个高速内部RC时钟源,频率为8
    发表于 08-12 06:44

    如何启动RK3399 M0

    如何启动RK3399 M0
    发表于 03-08 09:36

    【教程】使用Arduino UNO主板和ATFC070串口智能屏制作电子音乐相册的方法

    使用的硬件主要有:UNO 主板、ATFC070串口智能屏和杜邦线。这是准备好的图片和音乐资源。步骤1、利用电脑端彩屏工具:ATF_UITool_V20,制作资源文件:NewResFile.ers
    发表于 03-15 15:31

    Segger J-Link到标签连接TC2030-MCP-NL-10适配器板

    相互连接。您可以使用焊接跳线进行不同的连接或更改连接类型。在这里,为我的具有 ATSAMD21G18 的定制板进行了引脚连接。
    发表于 07-19 06:15

    求分享M0模拟EEPROM代码

    跪求 M0模拟EEPROM代码
    发表于 06-13 06:08

    魔法万圣节Magic Hallowing开源代码

    Magic Hallowing 使用Adafruit 的 Hallowing M0 Express。它包含 Microchip 的 ATSAMD21G18 微控制器,并具有大量功能。
    发表于 06-21 14:52 0次下载
    魔法万圣节Magic Hallowing开源代码