基于Arduino Uno开发板制作音乐播放器

本文将基于Arduino开发板实现一个音乐播放器。
利用Arduino Uno读取sd卡模块中内存卡的音乐,传输信号到扬声器进行播放。

一、项目软硬件简介&准备

1.Arduino开发板

Arduino Uno 是一款基于 Microchip ATmega328P 微控制器的开源微控制器板,由 Arduino.cc 开发,最初于 2010 年发布。该板配备了一组数字和模拟输入/输出 (I/O) 引脚,可以连接到各种扩展板(屏蔽)和其他电路。 该板具有 14 个数字 I/O 引脚(6 个能够进行 PWM 输出)、6 个模拟 I/O 引脚,并可通过 B 型 USB 电缆使用 Arduino IDE(集成开发环境)进行编程。

在Arduino开发板中具有USB接口,并且所有 Arduino 板都有⼀个内置的引导加载程序,允许通过 USB 刷新板。同时配置了电源接口,可以外接电源,也就是说,通过外接一个可充电电池电源我们就可以制造出一个无线音乐播放器。

2.Arduino IDE软件

软件安装,及esp32c3环境搭建见:
链接: 公众号文章
链接: 博文
Arduino IDE是Arduino产品的软件编辑环境,是一款专业的Arduino开发工具,主要用于Arduino程序的编写和开发,拥有开放源代码的电路图设计、支持ISP在线烧,同时支持Flash、Max/Msp、VVVV、PD、C、Processing等多种程序兼容的特点。

3.SD卡模块

拼多多3.5元

制接口: 共 6 个引脚(GND、VCC、MISO、MOSI、SCK、CS),GND 为地,VCC 为供电电源,MISO、MOSI、SCK 为 SPI 总线,CS 为片选信号脚;
3.3V 稳压电路: LDO 稳压输出的 3.3V 为电平转换芯片、Micro SD 卡供电;
电平转换电路: 往 Micro SD 卡方向的信号转换成 3.3V,MicroSD 卡往控制接口方向的 MISO信号也转换成了 3.3V,一般 AVR 单片机系统都能读取该信号;
Micro SD 卡座: 是自弹式卡座,方便卡的插拔。
定位孔: 4 个 M2 螺丝定位孔,孔径为 2.2mm,使模块便于安装定位,实现模块间组合。

其余器件

① 丹麦JAMO尊宝HIFI扬声器 拼多多5.6元
②面板板 拼多多2.8元
③杜邦线 5.5元

项目实现

1.准备音乐

首先要将内存卡格式化
其次将音乐按一定格式转为的wav音乐文件格式
链接: 这是一个免费音乐转换格式链接
点击上面链接,选择音乐,按照以下格式进行转换,完成后下载并重新命名为1.wav(代码中是1.wav,可以命名为其他,但要改代码,命名简单一点,例如该示例)
重新命名之后放入内存卡中,并将内存卡插入sd卡模块

2.引脚连接

将sd卡读取模块的CS引脚连接到Arduino Uno的引脚4;
将sd卡读取模块的SCK引脚连接到Arduino Uno的引脚13;
将sd卡读取模块的MOSI引脚连接到Arduino Uno的引脚11;
将sd卡读取模块的MISO引脚连接到Arduino Uno的引脚12;
将sd卡读取模块的VCC引脚连接到Arduino Uno的引脚5v输出端;
将sd卡读取模块的GND引脚连接到Arduino Uno的引脚GND端。

Arduino Uno的引脚9、3.3v输出端口分别接入扬声器

3.上传代码

1.在github上或者微信公众号“百合锦簇”回复“音乐播放器”获取TMRpcm和SPI库并导入Arduino IDE中,由于在Arduino中已经存在SD卡库,通过该库的导入我们便可以很容易从SD卡中读取音乐信号,总代码也就更加容易编写,编写代码如下:

#include "SD.h"
#define SD_ChipSelectPin 4
#include "TMRpcm.h"
#include "SPI.h"
TMRpcm tmrpcm;void setup(){
tmrpcm.speakerPin = 9;
Serial.begin(9600);
if (!SD.begin(SD_ChipSelectPin)) {
Serial.println("SD fail");
return;
}
tmrpcm.setVolume(5);
tmrpcm.play("1.wav");
}
void loop(){  }

确保编译上传成功

结果

视频

VID_20221102_212405

基于Arduino Uno开发板制作音乐播放器相关推荐

  1. 基于arduino uno 开发板制作的 智能书包项目

    基于arduino uno 开发板制作的智能书包,当时收短视频启发,集合自动售货机的代码和RC522 读卡模块代码结合制作,现基本功能可以实现 ,目前代码部分尚不稳定需要继续改进 //一个智能书包小发 ...

  2. 基于MSP430G2553官方开发板的音乐播放器

    基于MSP430G2553官方开发板的音乐播放器 实现目标 硬件资源 芯片资源使用情况 外接硬件 程序实现 开发环境配置 各部分硬件驱动 主循环功能实现 实现目标 实现以蜂鸣器为播放设备,能够对简谱乐 ...

  3. 基于Arduino Uno开发板的红外遥控开发

    基于Arduino Uno开发板的红外遥控开发 1 准备 1.1 硬件与软件 1.2 走线 2 代码 2.1 ReceiveDump 2.2 SendRawDemo 1 准备 1.1 硬件与软件 单片 ...

  4. Arduino开发(二)_基于Arduino UNO开发板的RGB灯光控制方法

    Arduino开发(二)_基于Arduino UNO开发板的RGB灯光控制方法 首先,我们来看一下Arduino UNO开发板的具体引脚排列,如下图所示, 再了解一下三色RGB LED模块,如下图所示 ...

  5. 基于Arduino UNO开发板,超声波模块,直流电机,实现电机驱动

    这:是我的手机,一台能无线充电的华为Mate 30Pro 4G 这:是我的的无线充电器,(虽然速度低,毕竟店家送的) 这是我维持一年多的充电样子,为什么这么做呢......因为无线充电会发烫,毕竟无线 ...

  6. 基于Android系统开发的简易音乐播放器

    大概做了一周左右,一个简易版本的音乐播放器.主要有三个界面,先上图: 一个主界面:主要负责1加载外部存储的音乐文件信息到应用内置数据库中2转到音乐文件列表界面 一个音乐文件列表界面:主要1负责展示音乐 ...

  7. 基于H5+js开发一款音乐播放器

    前言:当下音乐播放器不胜其数,为了更好的掌握一些东西,我们来自己制作一个音乐播放器. 文章目录: 一.开发环境: 二.页面视图: 1.主文件入口(首页): 2.音乐播放界面: 三.功能实现 (1).i ...

  8. 如何使用Arduino Uno开发板制作超声波测距仪

    测距仪是用于查找从点到最近障碍物的距离的设备.该装置使用超声波技术测量距离.您可以将它视为一种无障碍的电子卷尺,测量范围为2cm至400cm,精度为1cm. Arduino超声波测距仪的典型应用包括停 ...

  9. arduino超声波测距接线图详细_使用Arduino UNO开发板和超声波传感器测量距离

    超声波传感器不仅提供距离测量实用程序,而且没有任何物理接触,但需要我们在无噪音和光线的情况下进行测量,与基于激光的距离测量仪器不同.此外,即使在基于激光的仪器经常降低其效率的日光下,这些仪器也便宜且更 ...

最新文章

  1. 状态码302.。。。
  2. python学习笔记 day16 内置函数(四)
  3. 重新开始我的园子生活了
  4. 怎么更改eclipse中tomcat的server location
  5. 电源模块的安全设计和热设计
  6. WM有约(五):部署应用程序
  7. IntelliJ IDEA 2017新工具
  8. 三天学会HTML5 ——多媒体元素的使用
  9. 又拍云沈志华:如何打造一款安全的App
  10. 什么是JBPM工作流
  11. linux 下查看文件字符编码和转换编码 360doc,Linux 下查看文件字符编码和转换编码...
  12. 机械汽修word模板素材推荐 精品 小众
  13. EIA/TIA 568A 568B 标准
  14. JAVANBA论坛系统计算机毕业设计Mybatis+系统+数据库+调试部署
  15. 哪吒之魔童降世视听语言影评_动画电影《哪吒之魔童降世》艺术语言分析
  16. Generating Event Causality Hypotheses through Semantic Relation
  17. 盘点最常用的几款linux服务器管理面板
  18. log4j2 pattern详解
  19. opencv+python图像识别,麻将牌识别,实现自动打牌方案
  20. Kernel: printk: pr_debug:动态日志打印功能

热门文章

  1. Java中Steam流的用法及使用备忘
  2. mysql aabb_建立2D AABB
  3. 目录超出页边距了怎么办|word中自动插入目录,页码超出页边距如何修改
  4. android 魅族短信拦截,内部员工揭秘魅族手机Android 4.0计划
  5. python编程图_如何使用Python编程图形的X / Y图
  6. layui多选下拉使用笔记
  7. linux定时播放音乐,Linux:在录制/播放声音期间的定时
  8. 食饮品牌如何用Social Power抓住消费者心智?
  9. lol影流区服务器不稳定,影流服务器卡顿问题 影流的朋友进来 麻烦告知下
  10. 修改mysql密码的四种方法