I2S本应用笔记只讨论时序如图所示。I2SInter-ICSound总线规范)模式。I2SInter.pdfVIP

I2S本应用笔记只讨论时序如图所示。I2SInter-ICSound总线规范)模式。I2SInter.pdf

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
I2S本应用笔记只讨论时序如图所示。I2SInter-ICSound总线规范)模式。I2SInter

1 简介 本应用笔记是针对新用户的快速指南,旨在说明如何将 Kinetis上的 I2S模块用作 Inter-IC音频总线。 另外,还将讨论基于 DMA和中断的乒乓缓冲区方案,该 方案旨在降低用于处理音频数据流的 CPU开销。最后将 举例说明如何在每个通道上播放频率不同的两个正弦波, 以供大家参考。 2 概述 Kinetis上的 I2S模块有下列五种基本工作模式: ? 常规模式 ? 网络模式 ? 门控时钟模式 ? I2S模式 ? AC97模式 本应用笔记只讨论 I2S(Inter-IC Sound总线规范)模式。 I2S时序如图 1 所示。 Freescale Semiconductor Document Number: AN4520 应用笔记 Rev 0, 5/2012 I2S(Inter-IC Sound总线)在 Kinetis 上的应用 面向 K60的 I2S驱动器 作者: Guo Jia Automotive and Industrial Solutions Group ? 2012 Freescale Semiconductor, Inc. Freescale Confidential Proprietary 内容 1 简介 1 2 概述 1 3 I2S模块配置 3 3.1 选择时钟源 3 3.2 根据应用要求设置时钟 3 3.3 I2S的 FIFO特性 4 4 DMA和中断配置5 5 正弦波播放示例 7 5.1 正弦波生成 7 5.2 I2S初始化 7 5.3 DMA初始化 9 5.4 中断服务例程 9 6 结语 10 串行时钟 帧同步 串行数据 字(n-1) 右通道 字(n) 左通道 字(n-1) 右通道 最高有效位 最低有效位 最高有效位 图 1. I2S协议时序 从应用角度来看,由于采样率一般在 8 KHz至 48 KHz之间,因此,如果 CPU需要直接处理每个中断,则系统效率 将非常低。另一方面,多数音频算法会处理数据块,即系统会累积音频流中的数据采样以形成缓冲数据块。随后这 些数据块会作为输入或输出供音频算法处理。请参见图 2 。 算法 流程 缓冲区 DMA I2S R_TX1 L_TX1 L_TX0 R_TX0 DMA 通道0 I2S TX0 I2S TX1 I2S总线 外部 编解码器 多 路 复 用 器 图 2. 基于 DMA和中断的乒乓缓冲区设计 注 在缓冲区名称中: ? R/L表示右通道/左通道 ? TX表示发送 ? 0/1表示乒乓缓冲区变址 共有四个缓冲区数据块,建议使所有数据块处于连续的物理空间中以便实现。 I2S接口中有两个通道——左通道和右通道。每个通道都具有作为乒乓缓冲区的两个数据块。DMA处理其中一个数 据块时,CPU处理另一个数据块。当前数据块处理完成时,DMA和 CPU将交换刚处理过的缓冲区。在图 2 中,四 个数据块分成标为红色和黑色的两组。DMA使用红色数据块时,CPU使用黑色数据块。类似地,如果 DMA使用黑 色数据块,则 CPU使用红色数据块。 系统运行时,DMA传送数据。根据应用要求,假设 N为某个缓冲区数据块中的采样数。传送了 N个采样后,DMA 将向 CPU生成一个中断。 由于所有这些传送都是同步进行的,或者在某个中断期间发生,因此,可以操作两个数据块。在该中断中,CPU必 须完成下列任务: 1. 执行音频解码算法以获得输出数据。 2. 将输出数据填入传送数据块。依据当前乒乓缓冲区变址的不同,可能是 BLOCK0 + BLOCK1,也可能是 BLOCK1 + BLOCK3。 概述 I2S(Inter-IC Sound总线)在 Kinetis上的应用, Rev 0, 5/2012 2 Freescale Semiconductor, Inc. Freescale Confidential Proprietary 注 由于音频信号具有较强的实时性要求,因此,所有计算都必须在下个中断发生之前 完成,否则会导致系统故障。 I2S模块配置 3.1 选择时钟源 为使用 I2S模块,首先需为该模块配置时钟。如果 I2S充当主机,则该模块的时钟源必须通过设置 SIM_SOPT2寄存 器中的 I2SSRC字段(或 SOPT2[I2SSRC])来决定。可能的选项包括: ? 内核/系统时钟除以 I2S小数时钟分频器 ? MCGPLLCLK/MCGFLLCLK时钟除以 I2S小数时钟分频器 ? OSCERCLK时钟 ? 外部旁路时钟(I2S_CLK_IN) 用户可根据需要从上述列表中选择一项。 3.2 根据应用要求设置时钟 假设将内核/系统时钟用作 I2S模块时钟源,则可通过下列公式计算 I2S模块的时钟: 注 在上面给出的公式中,I2SFRAC和 I2SDIV在寄存器 S

文档评论(0)

***** + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档