用户登录  |  用户注册
首 页商业源码原创产品编程论坛
当前位置:PB创新网文章中心解决方案电子通信

TLC320AD50C与DSP接口设计

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2009-01-10 23:00:16
【本文由PB创新网为您整理】

摘 要: DSP(数字信号处理器)具有强大的数字信号处理能力,在其应用系统中,大多由ADC和DAC通道来完成对模拟信号的数字化处理。本文介绍了一种集成ADC和DAC于一体的TLC320AD50C模拟接口电路与TMS320VC5402定点DSP接口电路的硬件设计方法,并结合一个具体的软件实例说明主从模式下软件的实现方法。

关键词:TLC320D50C;DSP;主从模式

引  言

    在许多应用系统中,为了应用DSP卓越的数字信号处理能力,我们必须先将模拟信号进行数字化(A/D转换),再对采样数据进行相应的算法处理,最后经过数字信号模拟化(D/A转换)后输出。在这些DSP应用系统中的关键问题是怎样十分容易和高效地实现这些转换,因此必然涉及到接口电路的设计。本文介绍一种单片内集成了ADC通道和DAC通道的模拟接口电路TLC320AD50C(以下简称AD50)与TMS320VC5402缓冲串口的接口的设计实现方法,然后,基于这种接口电路的硬件设计,通过软件编程实现语音信号的采集与回放。

    1  芯片简介

    TMS320VC5402是TI公司生产的从属于TMS320C54x系列的一个工作灵活、高速、具有较高性价比、低功耗的16位定点通用DSP芯片。其主要特点包括:采用改进的哈佛结构,1条程序总线(PB),3条数据总线(CB、DB、EB)和4条地址总线(PAB,CAB,DAB,EAB),带有专用硬件逻辑CPU,片内存储器,片内外围专用的指令集,专用的汇编语言工具等。TMS320VC5402含4K字节的片内ROM和16K字节的双存取RAM,1个HPI(Host Port Interface)接口,2个多通道缓冲单口MCBSP(Multi-Channel Buffered Serial Port),单周期指令执行时间10ns,双电源(1.8V和3.3V)供电,带有符合IEEE1149.1标准的JTAG边界扫描仿真逻辑。

    AD50是TI公司生产的一个16位、音频范围(采样频率为2K~22.05KHZ)、内含抗混叠滤波器和重构滤波器的模拟接口芯片,它有一个能与许多DSP芯片相连的同步串行通信接口。AD50C片内还包括一个定时器(调整采样率和帧同步延时)和控制器(调整编程放大增益,锁相环PLL,主从模式)。AD50有28脚的塑料SOP封装(带DW后缀)和48脚的塑料扁平封装(带PT后缀),体积较小,适应于便携设备。AD50的工作温度范围是0~70℃,单一5V电源供电或5V和3.3V联合供电,工作时的最大功耗为120 mW。

    2  硬件设计

    2.1 AD50的内部结构简图

    图1最上面第一通道为模拟信号输入监控通道,第二通道为模拟信号转化为数字信号(A/D)通道,第三通道为数字信号转化为模拟信号(D/A)通道,最下面一路是AD50的工作频率和采样频率控制通道。本文所述的输入时钟(MCLK)为8.192MHz,A/D与D/A的采样频率为MCLK/(128*N)Hz(N为AD50C的第4个寄存器4~6位所设)。
javascript:window.open(this.src);" style="cursor:pointer;"/>

2.2  AD50与DSP的引脚连接方式

javascript:window.open(this.src);" style="cursor:pointer;"/>

    AD50与TMS320VC5402是以SPI方式连接的。AD50工作在主机模式(M/S=1),提供SCLK(数据移位时钟)和FS(帧同步脉冲)。TMS320VC5402工作于SPI方式的从机模式,BCLKX1和BFSX1为输入引脚,在接数据和发数据时都是利用外界时钟和移位脉冲。

    3  软件设计

    3.1 软件编制过程

    一旦完成了正确的硬件连接,接下来就可以进行软件编程调试了。要完成的工作包括:   

    (1)TMS320VC5402串口的初始化。首先将DSP串口1复位,再对串口1的16个寄存器进行编程,使DSP串口工作在以下状态:以SPI模式运行,每帧一段,每段一个字,每字16位,采样率发生器由DSP内部产生,帧同步脉冲低电平有效,并且帧同步信号和移位时钟信号由外部产生。DSP给AD50C编程用查询方式,接收A/D转换的D信号和发送D/A转换的D信号用DMA方式。

    (2)AD50初始化。该初始化操作过程包括通过TMS320VC5402的同步串口发送两串16位数字信息到AD50。第一串为0000 0000 0000 0001B,最低有效位(bits0)说明下一个要传输的数据字属于二次通信(关于一次通信和二次通信的内容请参阅参考文献[3])。第二个数据值用来对AD50的4个数据寄存器的某一个进行配置。Bits15~11位为0,Bits10~8位为所选寄存器地址值,Bits7~0位为所选中寄存器的编程值。4个用户可编程寄存器的描述如下:R1中包含模拟输入通道选择,硬件 / 软件编程方式选择;R2进行单机 / 从机工作和电话模式(电话模式内容请参阅参考文献[3])选择;R3控制带从机个数选择;R4用来设置模拟信号可编程放大增益和A/D、D/A转换频率。其它两个寄存器R5、R6是厂家留着测试用的,用户不可以对其编程。我们在以下例程中对4个可编程寄存器编程,使AD50C工作在以下状态:选择INP/INM为工作模拟输入,15+1位ADC和15+1位DAC模式,不带从机,采样频率为10.67KHz,模拟信号输入和输出放大增益均为0dB。

    (3)用户代码的编写。完成音频信号采集与回放代码的编制。本设计给AD50编程用查询方式,接收A/D转换的D信号和发送D/A转换的D信号用DMA方式。

    3.2 软件具体实现

     (1) 程序流程图:

javascript:window.open(this.src);" style="cursor:pointer;"/>

(2)部分关键代码:
Ⅰ,  TMS320VC5402中断及串口初始化
……
stm #0002h, 48h
stm #0040h, 49h ; 设置DSP串口1工作在每帧一个字,每个字16位模式
……
stm #0006h, 48h
stm #0100h, 49h ; 设置CLKGDV=0,使串口1工作在最大频率
stm #0007h, 48h
stm #0a000h, 49h ;设置CLKSM=1,采样率发生器时钟由DSP内部产生
stm #000eh,48h
stm #0008h,49h ;设置FSXP=1,使帧同步脉冲低电平有效
stm #0080h,imr  ;DMA一通道中断使能
 rsbx  intm  ;开放所有可屏蔽中断
 ……
Ⅱ, AD50初始化
 ld #0001h,a ;D0=1,请求第二次交流
 stlm a,43h  ;向TLC320AD50C写数据
aa: stm #0001h,48h 
 ldm 49h,a
 and #0002h,a
 bc aa,aeq  ;数据是否被TLC320AD50C接收
 ld #0180h,a ;给TLC320AD50C的寄存器1编程,使其复位
 stlm a,43h
bb:stm #0001h,48h
 ldm 49h,a
 and #0002h,a
 bc bb,aeq  ;编程数据是否被TLC320AD50C接收
    ……
 stm #0100h,a ;TLC320AD50C脱离复位并且设置寄存器1,使INP,INM为输入
 ……
 stm #0200h,a ;设置TLC320AD50C寄存器2,使电话模式无效
 ……
 stm #0460h,a ;设置TLC320AD50C寄存器4,使采样频率为10.667KHz
 ……
 stm #0300h,a ;设置TLC320AD50C寄存器3,使带0个从机
 ……
 Ⅲ, DMA1通道初始化
 stm #05h, 55h ;选择DMA1通道
 stm #0041h,56h ;设置串口1接收端为DMA事件的源地址
stm #027fh,56h ;设置DMA事件的目的地址
 stm #3000h,56h ;设置直接传送数据个数
 stm #5000h,56h ;设置串口1同步模式,一帧接收一个字
 stm #404dh,56h ;设置DMA为多帧模式,源地址不调整目的地址按57h的值调整
 stm #20h, 55h
 stm #0001h,57h ;设置目的地址为自动加1调整
stm #0282h,54h ;设置通道1为高优先级并使能通道1
……

    4 实验结果

    下面图中图4和图6分别为TLC320AD50C与TMS320VC5402组成的数据采集系统对同一个实验对象的语音信号“您好”和“啊”的采集结果,图5和图7分别为WINDOWS 98附件中的录音机所录下的语音信号“您好”和“啊”用MATLAB仿真后的图形结果。

javascript:window.open(this.src);" style="cursor:pointer;"/>

    下面图8为AD50采样信号“啊”音的FFT  Magnitude, 图9为WINDOWS 98附件中的录音机录制信号“啊”音的FFT  Magnitude。

javascript:window.open(this.src);" style="cursor:pointer;"/>

    5 结束语

    本文以TMS320VC5402与TLC320AD50C为例,详细介绍了AD50与DSP串口通信的硬件接口及软件实现。从实验结果我们可以发现TLC320AD50C可以对语音信号进行无失真采样,完全能满足后续语音信号处理的要求,并且与DSP接口简单,高性能,低功耗,已成为当前语音处理的主流产品。广泛适用于音频处理,语音增强,语音安全,回声抵消,VoIP等电话或语音应用中。



Tags:

作者:佚名

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
PB创新网ourmis.com】Copyright © 2000-2009 . All Rights Reserved .
页面执行时间:26,671.88000 毫秒
Email:ourmis@126.com QQ:2322888 蜀ICP备05006790号