查看: 4262|回复: 1

STC15L2K60S2+VS1003B+SD卡+znFAT+WAV 实现录音笔(基于ZN-X) QQ群:145948643

[复制链接]

该用户从未签到

发表于 2014-2-9 21:55:03 | 显示全部楼层 |阅读模式
分享到:
本帖最后由 znmcu 于 2014-2-9 21:58 编辑



网站 www.znmcu.cn 论坛 www.znmcu.cn/bbs
znFAT技术交流群:145948643

所需主要硬件:STC12L2K60S2
              VS1003BMP3解码器)
              SD/SDHC卡
              USB串口模块(用于输出打印信息)
作者        :振南
实验功能描述
:此实验使用VS1003B的录音功能,VS1003B通过SPI接口输出IMA ADPCM编码的音频数据。STC51单片机创建WAV文件,将数据存入其中,最终形成波形音频文件。实验中,通过按键来控制录音的启停。可多次录音,每次都会创建新的WAV文件,如REC0.WAV REC1.WAV等。录制的WAV文件,可以在SD卡上看到,通过电脑上的播放软件直接进行回放。实验示意如图1
录音笔实验 2-278.png
          图1 录音笔实验示意图
实验硬件平台如图2
录音笔实验 2-303.png
        图2 录音笔实验硬件平台
此实验视频演示请见振南个人网站,实验效果如图345
录音笔实验 2-348.png
       图3 录音笔实验串口信息
录音笔实验 2-384.png
       图4 实验中生成的WAV文件及其相关信息
录音笔实验 2-421.png
       图5 通过CoolEdit软件看到的音频波形图
振南评注:VS1003B在本书以及振南的实验中都占有较为重要的地位。一直以来我都只是在使用它的音频解码功能,而没有用到它的录音功能。虽然有过几次要作录音实验的想法,但都是浅尝辄止,并没有实质性的成果。还好最后终于完成了这个录音笔实验,现在感觉VS1003B的录音功能还是挺简单的。实现录音功能的最大问题在于数据的存储速度。对于音频数据采集来说,在给定一个采样频率与精度之后,它在单位时间内所产生的数据量就是一定的了。我们必须要在这段时间内完成数据接收与写入文件的操作,一点都不能慢,否则必然影响后面音频数据的处理,最终可能导致音频文件播放的卡顿或失真,或者根本放不出声音。比如对于8kHz、单通道的16位音频来说,它的数据速率为128Kbps16KBps),这要求SPI接口以及znFATSD卡中写入数据的速度一定要能跟得上。所以,在此实验中振南使用了硬件SPI,并开启了znFAT的各种缓冲加速机制,这使得音频录制毫无压力。不过,像这种低质量的音频,就算使用IO模拟SPI,不开启加速机制,以现在振南的SD卡驱动与znFAT的性能水平来说也绝对没有问题。而对于高质量音频的录制,比如48kHz采样率、双通道立体声,也许数据读写速度的关键性就会突显了。(此实验的具体实现以及WAV文件格式相关内容请参见振南人个网站及相关发布平台)。

在线视频演示:
录音实验视频:

PC端WAV波形显示与音频回放


源代码:  vs1003 recorder.rar
回复

使用道具 举报

  • TA的每日心情
    擦汗
    2018-3-3 15:21
  • 签到天数: 222 天

    连续签到: 1 天

    [LV.7]常住居民III

    发表于 2014-2-12 20:21:56 | 显示全部楼层
    看起来很好玩的样子
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-11-15 11:27 , Processed in 0.139001 second(s), 18 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.