TLC320AC01与DSP的接口设计
出采样值为0,而2个最低有效位(bits1~0)用于说明下一个要传输的数据字是否属于二次通信(关于一次通信和二次通信的内容请参阅TLC320AC01的数据手册)。第二串数据值用来对TLC320AC01的9个数据寄存器的某一个进行配置。其中Bit15、14用来控制Modem中的相移,这里设置为0;bit13为0表示这个数据值将写到TLC320AC01的某个寄存器;bit12~8用于要配置的寄存器地址;bit7~0为要写到寄存器的值。9个寄存器的描述如下:R0在大多数应用时设为0,R1用于设置采样频率,R2用于设置低通滤波器的截止频率,R3用于进行相移
本文链接地址:http://www.oyaya.net/fanwen/view/148037.html
控制,R4用于进行模拟输入输出的增益控制,R5用于使能高通滤波器,R6用于控制操作模式,R7可用来控制从模式的串行通信,R8则用于控制生成的帧同步脉冲数。
(3)用户代码的编写
该过程主要完成音频信号的采集与回放代码的编制。本设计采用中断方式,包括发送中断和接收中断。
3.2 部分关键代码
(1)初始化
初始化代码TMS320VC5402的初始化和TLC320AC01的初始化。TMS320VC5402的初始化代码如下:
SSBX INTM ;使所有中断无效
ORM #0834h,PMST ;设备处理器方式状态寄存器PMST
STM #02492h,SWWSR ;所有外围两个等待状态
RSBX OVM ;使OVM=0
RSBX FRCT ;使FRCT=0,允许整数乘
STM #010h,IMR ;多通道缓冲串口接收中断使能
RSBX INTM ;使能所有非屏蔽中断
下面是TLC320VC01的初始化程序代码:
SSBX SXM ;设置符号扩展模式
LD #PR1,DP ;以下三句设置TLC320AC01内部数据
LD PR1,A ;寄存器R1的值,其余寄存器的设置与此同
CALL AC01_2ND
……
RET
AC01_2ND;
RSBX INTM ;使中断有效
STH A,DXR10
STL A,DXR10
STL #0,DXR10 ;确保字被发送
SSBX INTM ;使中断无效
RET
(2)接收中断服务程序
这段程序包括通道的区分,方法是使主TLC320AC01首选写入,主TLC320AC01的LSB是0,从TLC320AC01的LSB是1。发送中断与此相同。具体程序如下:
SBPREC:BITF DRR10,#1
BC loop1,TC
LD DRR10,A
AND #0fffch,A
STL A,DXR10
B loop2
L
《TLC320AC01与DSP的接口设计(第2页)》