玩软件有点虚无,没有实际东西,所以接下来要体验下硬件与软件结合。
1 Arduino
Arduino是一种包含硬件(各种型号的Arduino板)和软件(Arduino IDE)的开源电子平台。硬件部分是可以用来做电路连接的Arduino电路板;引用 Arduino 官方的介绍:Arduino 是一款便捷灵活、方便上手的开源电子原型平台。包含硬件(各种型号的 Arduino 板)和软件(ArduinoIDE)。Arduino的编程语言更为简单和人性化,它构建于开放原始码 simple I / O 介面版,并且具有使用类似 Java、C 语言的 Processing / Wiring 开发环境,但实用性要远高于C语言,主要由于它将一些常用语句组合函数化,故使用者可以快速入门学习使用。主要包含两个的部分:硬件部分是可以用来做电路连接的 Arduino 电路板;另外一个则是 Arduino IDE,你的计算机中的程序开发环境。你只要在 IDE 中编写程序代码,将程序上传到 Arduino 电路板后,程序便会告诉 Arduino 电路板要做些什么了
下面介绍几种Arduino播放声音的方式。
2 蜂鸣器
播放的音乐只是勉强能听,方波输出,和模拟输出仍有较大差别
3 Arduino +SD(TF)卡
Micro SD Card,原名Trans-flash Card(TF卡),2004年正式更名为Micro SD Card,由SanDisk(闪迪)公司发明。Micro SD卡是一种极细小的快闪存储器卡。
Arduino UNO将从SD卡读取音乐文件,并从9号针脚输出音频信号。如果觉得Arduino发出的音频信号太小,可将9号引脚接入功放器放大声音信号。
需要自己编写音频解码模块,较复杂。
4 Arduino +MP3模块+SD卡
4.1 YX5300 MP3音乐模块
该模块是一个基于高音质MP3音乐芯片的MP3音乐播放器模块。支持采样率是8KHz ~ 48KHz的MP3、WAV格式文件。板载Micro SD卡座,可插上存了音乐文件的micro SD卡。
音乐文件存放在MP3模块上集成的SD卡上。
MP3音乐播放器模块,可以直接驱动扬声器。
5 Arduino直接发声
通常如果想让Arduino发出声音需要额外的配备,比如:Mp3解码器,Wav专用播放器或者语音合成的模块等等。
但是理论上因为Arduino具有模拟输出,所以应该可以直接输出波形给喇叭.
原理上来说就是先用工具将音频转化为WAV, Arduino 的存储空间有限,这里只能使用单声道 8000Hz 采样率,然后通过控制模拟端口将数据发送出来。从实验来看,Arduino Uno(Flash Memory 32 KB )可以存放大约4s左右的音频(编译之后在 31K左右)。