【I2S】LPC1700系列Cortex-M3_ZLG.ppt_第1页
【I2S】LPC1700系列Cortex-M3_ZLG.ppt_第2页
【I2S】LPC1700系列Cortex-M3_ZLG.ppt_第3页
【I2S】LPC1700系列Cortex-M3_ZLG.ppt_第4页
【I2S】LPC1700系列Cortex-M3_ZLG.ppt_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

集成电路内置音频总线 I2S LPC1700系列Cortex M3微控制器 目录 集成电路内置音频总线 I2S InterICSound 是嵌入式系统领域常用的音频总线之一 为数字音频应用提供了一种标准的数字通信接口 I2S接口可适用于多种场合 例如 数字电视 功放 迷你播放器 笔记本 CD机 视频设备等 I2S功能应用 I2S引脚描述 I2S是一种3线串行总线 含有1根数据线 1根时钟线和1根字选择信号线 基本的I2S系统具有一个主机和一个从机 I2S提供了彼此独立的发送和接收通道 每个通道都可配置为主机或从机 而且无论在主机还是从机模式下均可独立控制 I2S通道操作模式 三种通道操作模式 I2S特性 LPC1700系列Cortex M3的I2S具备如下特性 彼此独立的输入和输出通道能处理8 16 32位的数据字支持两种音频数据的传输 单声道 立体声道支持采样频率范围为16KHz 96KHz的数据传输 16 22 05 32 44 1 48 96KHz 提供两个8字 32位 FIFO数据缓冲区 I2STXFIFO 用于发送 I2SRXFIFO 用于接收 当缓冲区达到预设触发深度时产生中断请求两个DMA请求有可编程的触发深度控制且连接到通用DMA模块分别提供用于发送 接收通道的主机时钟输出可对I2S输入和I2S输出通道分别执行复位 停止和静音操作主机模式下 字选择周期可配置 注 可提供主机时钟输出 目录 I2S数据传输时序 SCK WS SDA MSB LSB 字n 1右声道 字n左声道 字n 1右声道 MSB 第二个下降沿开始数据传输 优先传输高位 采样周期 LPC1700系列Cortex M3支持I2S标准的数据传输时序 时序有以下特点 1 优先传输MSB 2 WS上的电平改变后 数据在发送时钟的下一个下降沿开始传输 立体声模式下 WS为低时发送左声道数据 为高时发送右声道数据 单声道模式下 WS为低时发送一次 WS为高时再发送一次 数据发送 接收过程 在发送数据过程中 发送的数据首先保存到发送FIFO中 发送移位寄存器会从发送FIFO中获取数据 并通过I2STX SDA引脚发送出去 DATA 数据流 I2S接口含有一个8字的接收FIFO 用来作为接收缓冲区 缓冲区中的数据只能够通过寄存器I2SRXFIFO来获取 数据流 DATA I2S发送 接收FIFO的操作与UART SSP等发送 接收FIFO操作一样 数据与串行时序之间通过移位寄存器转换 I2S数据发送 多个数据字发送按照先低后高 较低地址的数据字先发送的原则 在数据字内部按照先高后低 较高地址的数据位先发送的原则 利用广州致远电子有限公司开发的逻辑分析仪LA2532抓取数据传输过程如下 目录 I2S基本操作 LPC1700系列Cortex M3微控制器的I2S基本操作可分为以下五个步骤 设置主时钟频率 发送 接收主时钟速率TX MCLK RX MCLK利用小数波特率发生器把PCLK经过分频得来 T RX MCLK FPCLK X Y 2 主时钟频率设置为 24M 8 31 2 3 097MHzI2STXRATE 0 x081F X Y分别为I2STXRATE的Bit8 Bit15 Bit0 Bit7 I2S分频器在FPCLK大于74MHz时不能正常工作 X Y设置为0时停止主时钟 设置位速率 位速率是指 I2S总线上传输一个数据位所需要的时间 该时间和I2S CLK周期相等 位速率 采样率 音频数据位数 N 例如 立体声 48KHz采样率的16位数据的需要位速率I2S bitrate 48KHz 16 2 1 536MHzI2STXBITRATE 0 x01 I2STXBITRATE TX MCLK TX CLK 1 LPC1700系列Cortex M3微控制器I2S支持采样频率范围为16KHz 96KHz 设置I2S工作模式 I2S接口的时钟源和WS是可配置的 除了可独立配置发送器和接收器的主机和从机模式外 还可以选择不同的时钟源 N 1 64 I2S外设模块 发送 I2STX WS I2STX SDA I2STX CLK I2STX MCLK I2STXMODE 3 0 PinOE I2STXMODE 0 x00 典型的发送主机模式 针对LPC175x系列Cortex M3没有RX CLK和RX WS信号 可以使用TX CLK和TX WS复用作为接收通道的时钟和字选择信号 发送或接收数据 查询 否 将数据移至FIFO 数据发送完毕 发送FIFO有空间 是 是 否 数据发送完毕 发送数据流程 查询 while I2SWritelLength 16 I2STXDone 1 接收数据流程 查询 数据读取完毕 接收FIFO有有效数据 读取I2SRXFIFO寄存器 是 否 while I2SSTATE 8 发送或接收数据 中断 发送FIFO 触发深度为4字节 数据被发送 产生发送FIFO服务请求中断 写入音频数据 接收FIFO 触发深度为4字节 接收到数据 产生接收FIFO服务请求中断 读取音频数据 中断发送 中断接收 目录 I2S之DMA DMA DirectMemoryAccess 直接存储器访问 在DMA模式下 CPU只须向DMA控制器下达指令 让DMA控制器来处理数据的传送 数据传送完毕再把信息反馈给CPU 这样就很大程度上减轻了CPU资源占有率 可以大大提高系统效率 LPC1700系列Cortex M3的DMA控制器支持4种传输方式 I2S之DMA 存储器 其他外设 I2S发送 接收FIFO LPC1700系列Cortex M3为微控制器的I2S接口支持DMA操作 可以分别配置DMA方式发送或接收 voidi2sDmaSndInit void PCONP 1 29 DMACIntTCClear 0 x03 DMACC1LLI 0 DMACC1Config 0 x01 11 0 x05 6 DMACC1Control 0 x04 12 0 x04 15 0 x02 18 0 x02 21 DMACC1Control 0 x80000000 接下页代码 I2S之DMA 接上一页代码DMACC1Config 0 x00008000 DMACC1SrcAddr SRC RAMBUF DMACC1DestAddr I2SSNDFIFO DMACC1Control 1 26 0 27 I2SDMA1 0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论