


AIC23B主机通过写AIC23B的寄存器来配置AIC23B,AIC23B有十一个寄存器,表2显示各寄存器的地址和名称。

2 C6713的McBSP原理
在DSP嵌入式系统中,多通道缓冲串行接口McBSP是一个功能强大、连线简洁的接口,通常用来连接音频编解码芯片、串行AD器件、串行DA器件等。McBSP包含一个数据通道和一个控制通道,互相独立的发送、接收引脚,4个通信控制信息引脚。DSP器件通过32 bit并行总线访问McBSP控制和数据寄存器。图4为McBSP组成框图[4]。

C6713的McBSP模块具有如下基本特性:
·全双工通信;
·两个数据缓冲寄存器;
·独立的发送和接收帧及时钟;
·可直接连接工业标准的CODEC、AIC以及其他串口AD/DA芯片;
·在数据传输过程中,可设置为外部移位时钟或内部可编程的频率移位;
·可连接AC97标准的接口、IIS接口、SPI接口;
·多达128通道的发送和接收;
·多种数据格式:8、12、16、20、24、和32 bit;
·8 bit数据格式中可设为低字节在前或高字节在前;
·同步帧和数据时钟的极性可编程;
·高度可编程的内部时钟和帧产生。tms320c6713
3 C6713与AIC23B的硬件连接
根据McBSP与AIC23B的原理,无论是控制口还是数据口AIC23B都可以与C6713的McBSP无缝连接,本设计采用McBSP1连接AIC23B的控制口,用来配置AIC23B的内部寄存器。时钟CLKX1和帧同步发送信号FSX1 由DSP 产生,向AIC23B发送16 bit的数据字, 来初使化AIC23B。每个16 bit的数据字分为两部分, 第一部分为AIC23B 中寄存器的地址,共7 bit; 第二部分为对该寄存器的设置值,共9 bit, 对应着寄存器的每一位(D8~D0) 。用McBSP0与AIC23B数据口直接相连,用来与AIC23B交换数据。CLKX0、CLKR0和帧同步信号FSX0、FSR0由AIC23B产生。图5为C6713与AIC23B的硬件连接。MODE 引脚接3.3 V高电平, AIC23B配置成SPI模式,McBSP1工作于SPI模式下;McBSP0配置成外部时钟、帧信号驱动接收和发送。AIC23B 有11 个寄存器, 对AIC23B进行初始化时, 必须由DSP 向它发送11个16 bit数据字来设置它的寄存器。

4 系统的软件设计
软件设计分为初始化、数据传输和数据处理3个部分。如图6给出了系统的工作流程,初始化完成后,系统进入工作状态。外部模拟信号通过AIC23B的AD变换器转换成数字信号,通过数据口传给DSP,数据经过DSP处理后传到AIC23B,经过AIC23B的DA变换后放大输出。

初始化部分包括McBSP的初始化和AIC23B的初始化。该设计中AIC23B 工作于主模式, 左右声道的采样字宽均为16 bit,数据接口为DSP 模式。DSP 通过SPI总线接口对音频编解码芯片AIC23B 的寄存器进行设置, 控制其采样速率、音频源、音量等参数。其初始化步骤为:
(1) 设置McBSP1为SPI模式,用于配置AIC23B。
(2) 设置McBSP0为被动接收模式,用于与AIC23B交换数据。
(3) 用DSP的McBSP1配置AIC23B相关寄存器,使其工作在主动模式。
以下给出配置AIC23B 寄存器的程序:
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/ruanjian/article-31993-2.html
正说明没有化学添加剂和防腐剂之类的