【匠芯创D133CBS】音频播放之PWM数字音频
<div class='showpostmsg'><p>大家好这一章我们来学习一下音频的播放,声音是由不同频率组成的,录音时会将声音编码成数字存储成文件,而播放声音相反,在将文件转换为声音时需要用到一个重要的东西,它叫做CODEC,它能将数据转换成电压,其实它就是DAC,匠芯创D133CBS的板卡上提供了2种音频播放的方法,一种是PWM音频,另一种是IIS音频,我们这一章要讲的是PWM音频。</p><p>我们首先看电路图,这里官方用了RC滤波,这是必不可少的,pwm音频都需要这样滤波否则会有杂音,U14是一个音频功放,也叫做PA</p>
<div style="text-align: center;"></div>
<div style="text-align: center;">然后我们再来讲WAV音频,WAV属于无损音频文件格式,因为他的数据是不压缩直接存储的,所以他的音质比MP3等格式要好很多。而且它由于没有压缩数据在播放时也不需要复杂的解码,但他有个缺点,就是文件会非常大,通常是MP3大小的10倍以上,但是这里我们使用到了sd卡所以不需要担心文件过大。</div>
<div style="text-align: center;">我们再来看看代码,这里我们直接使用官方的DEMO</div>
<div style="text-align: center;">圈出来的这一部分就是PWM音频的初始化,主要是设置通道和频率以及比特率,这里需要根据音乐文件的不同进行动态调整</div>
<div style="text-align: center;">
<div style="text-align: center;"></div>
<p>这一部分就是从文件中读取音乐数据流然后不断的送入PWM进行输出,直至文件结束 </p>
<div style="text-align: center;"></div>
<p>然后我们编译烧录并接上扬声器来看看效果,实际音质还是非常好的,但是我上传前进行了视频压缩,所以画质和音质都没有现场那么好了,小伙伴们可以自己动手试试 </p>
<div style="text-align: center;">c74211ee36075c1a7c21741088bd07e9</div>
<p>下一章我们讲解一下IIS来播放,IIS的音质会比PWM要好一点,这一章到这里就结束了有疑问的小伙伴欢迎提问<img height="63" src="https://bbs.eeworld.com.cn/static/editor/plugins/hkemoji/sticker/facebook/victory.gif" width="61" /></p>
</div>
<p> </p>
</div><script> var loginstr = '<div class="locked">查看本帖全部内容,请<a href="javascript:;" style="color:#e60000" class="loginf">登录</a>或者<a href="https://bbs.eeworld.com.cn/member.php?mod=register_eeworld.php&action=wechat" style="color:#e60000" target="_blank">注册</a></div>';
if(parseInt(discuz_uid)==0){
(function($){
var postHeight = getTextHeight(400);
$(".showpostmsg").html($(".showpostmsg").html());
$(".showpostmsg").after(loginstr);
$(".showpostmsg").css({height:postHeight,overflow:"hidden"});
})(jQuery);
} </script><script type="text/javascript">(function(d,c){var a=d.createElement("script"),m=d.getElementsByTagName("script"),eewurl="//counter.eeworld.com.cn/pv/count/";a.src=eewurl+c;m.parentNode.insertBefore(a,m)})(document,523)</script>
页:
[1]