打印
[方案相关]

【华大测评】+I2S读写功能测试

[复制链接]
3062|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
在HC32F460开发板上,配置有I2S接口及外部的WM8731音频编解码电路,通过它播放存放在数组中的WAV音乐。
在播放前,需对例程加以编译和下载,然后耳机插到J11接口并加电予以播放,其形式如图所示。
该WAV音乐是一段采样率为44.1K的音频片段,并循环播放。
实现播放功能的构成形式
该音频片段的数据以如下形式存放在数组中:
const uint8_t au8PixieDustSoundI2s_441[]={
   0xE4, 0xFF, 0xF0, 0xFF, 0xE7, 0xFF, 0xF0, 0xFF, 0xF4, 0xFF, 0xF3, 0xFF,0x00, 0x00, 0xFA, 0xFF,
   0x0A, 0x00, 0x05, 0x00, 0x0C, 0x00, 0x08, 0x00, 0x07, 0x00, 0x09, 0x00,0xFF, 0xFF, 0x03, 0x00,
   0xF7, 0xFF, 0xFE, 0xFF, 0xF2, 0xFF, 0xF6, 0xFF, 0xEC, 0xFF, 0xF1, 0xFF,0xED, 0xFF, 0xEF, 0xFF,
   0xF1, 0xFF, 0xF2, 0xFF, 0xF7, 0xFF, 0xFA, 0xFF, 0xFF, 0xFF, 0x02, 0x00,0x07, 0x00, 0x08, 0x00,
   
    。。。。
   
   0x97, 0x01, 0x80, 0x00, 0x97, 0x01, 0xAB, 0x00, 0x9A, 0x01, 0xC4, 0x00,0x93, 0x01, 0xD8, 0x00,
   0x85, 0x01, 0xDF, 0x00, 0x6E, 0x01, 0xDF, 0x00, 0x95, 0x01, 0x9C, 0x00,0xAF, 0x01, 0x5F, 0x00
};
我们也可以自行录制一定44.1K的音频内容,然后将其数据存放到该数组中来达到更新播放内容的目的。
当然要达到实用的目的,还是应该与SD卡及文件系统相配合,以达到按文件来下载播放内容,并将播放的数据有SD卡中取出来供编解码器来取用。当然为了连续播放的需要,应为它配置一个供数据缓冲的存储空间,当读取的数据超过一半后就将新的数据存入另一个缓冲区以便切换使用。

使用特权

评论回复
沙发
foxsbig| | 2021-7-20 10:23 | 只看该作者
I2S是不是音频专用的总线
开始以为是i2c写错了,后来查了一下,是我错了

使用特权

评论回复
板凳
jinglixixi|  楼主 | 2021-7-20 10:49 | 只看该作者
没错I2S是音频专用的总线

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

455

主题

2756

帖子

38

粉丝