TLC320AD50C与DSP接口设计
扫描二维码
随时随地手机看文章
来源:21IC中国电子网 作者:吉林大学通信工程学 张坤
摘 要: 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位所设)。
2.2 AD50与DSP的引脚连接方式
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转换频率。其它两个寄存