(原创)K60 的 I2S音频接口设计

拿到Freescale Kinetis K60已经一段时间了,想闲着的时候做个SD+FatFs+DAC的音乐播放器,输出直接驱动扬声器。看了好几天的英文手册,Freescale的I2S太麻烦了,除了标准I2S模式,还有普通模式和Network模式。要开始找工作了,还需要学Perl跟Cadence IC,等找完工作再把SD卡和文件系统加上,完整成音乐播放器。

效果图

测试视频:

 

软件设计不做详细说明了,硬件设计是自己的一个弱项,这里简单说说硬件电路吧。

方案有两种

1、MAX5556+LM358二阶低通滤波器+LM386功率放大

2、PT8211+RC低通滤波器+LM386 功率放大

两种方案都是在单电源(5V)供电,其中方案1比较合理,MAX5556自带内部低通模拟和输出驱动,按道理可以直接驱动小耳机,加上巴特沃兹二阶低通滤波器也只是为了让性能更好点,LM386功率放大电路为了直接驱动扬声器。向美信申请了MAX5556一时半会儿也来不到,悲催的是自己的LM356也用完了(应该大采购一次了),无奈之下选了方案二。需要说明的是,MAX5556数据格式为左对齐,PT8211为右对齐(也成为Japanese格式),所以K60编写程序时,MAX5556直接使用Master模式就行,而PT8211需要使用普通模式。

PT8211和K60的接口电路就没什么好说的,标准I2S三根线接上K60就行了。滤波电路简单搭了一下,R1和C1组成简单的一阶低通,Fc大概在200Khz,凑合能用吧。C2为了将PT8311偏置直流去掉,这样LM386放大时才能保证较好的正负双向放大效果 。

 

LM386放大电路

6脚和8脚之间可以接一个电容串一个可调电阻,通过调整电阻阻值来改变放大倍数在20~200之间。我没有接上,默认就是20倍。注意的是,真正接入3脚前,是要加一个可调电阻分压的,因为3脚的输入峰峰值最好不要大于250mv,太大放大倍数20倍以后,就会失真成方波了。C1选用220uf,将也是讲直流成分去掉,使得驱动R1(就是扬声器)是正负音频信号。

 

========================================

源程序下载:

K60_I2S

仿真电路:

LM386功放仿真电路

LM385二阶低通滤波器仿真

RC低通滤波器仿真

相关文件

I2S对齐

巴特沃兹二阶低通滤波器计算公式

RC低通滤波器计算公式

MAX5556资料

PT8211/TA1311资料(英文)

LM358资料

LM386资料

 

 

 

 

 

 

posted on 2012-08-31 21:03  超群天晴  阅读(4312)  评论(2编辑  收藏  举报

导航