首页 文章

录制wav文件使用Arduino

提问于
浏览
5

我有点陷入困境,如何将我的arduino记录转换为.wav文件? arduino与麦克风连接,使用的是Arduino ADC . 有任何想法吗?我可以用我的电脑播放它们吗?

很多问题都在我脑海中

1-这是否可以使用arduino Uno

2-仅使用连接到Arduino ADC的麦克风即可

3-如果是,我怎样才能获得wav格式 .

这个想法会是这样的

Ardiuno microphone-->Uno ADC -->arduino (library making wav sound)--> Storing data to a an SD card connected via SPI or maybe (connecting a Raspberry as a storage device)

还有一个问题:

4-我是否需要放大器,因为麦克风的模拟输出非常弱,因此ADC无法检测到变化

在另一个日志中,我看到我应该将麦克风连接到电平转换器 . 并且模拟输出的原因是AC,所以我必须使负波为0(对于10它ADC)零点为512且为正为1024(10位ADC) . (我真的不确定这一部分)

做一些研究我得到了这个图书馆“https://github.com/TMRh20/TMRpcm/wiki/Advanced-Features#recording-audio”本应该做的工作, I mean making some wav file from the analog input .

所以任何帮助都会提前感谢Thx,

Salah Laaroussi

2 回答

  • 4

    是的,虽然有点复杂,但很有可能通过uno来做到这一点 .

    要克服的最大障碍是RAM数量有限和时钟速度 . 您必须设置两个缓冲区才能处理写入SD卡的操作 . 确保卡具有足够高的写入速度,否则整个程序将暂停,因为内存不足 .

    apc mag有一篇很好的文章详细介绍了电路和代码 .

    http://apcmag.com/arduino-projects-digital-audio-recorder.htm/

  • 2

    还有很多你还没准备好的东西:

    • 麦克风输出(假设您了解电子设备:仍然需要偏置电路,例如电阻器电容器) .

    • 麦克风的输出仍然很弱(幅度为mV),Arduino无法捕获,所以你需要一个前置放大器

    • 前置放大器的设计还将包括DC偏移,这使得麦克风的输出都在0VDC以上,这在Arduino ADC的范围内,否则arduino将仅捕获0VDC以上的那些 .

相关问题