新闻中心

EEPW首页 > 消费电子 > 设计应用 > 基于DSP的广播级数字音频延时器

基于DSP的广播级数字音频延时器

作者:江苏苏州大学通信与电子工程系 周鸣籁 江苏太仓人民广播电台 陈武时间:2008-06-30来源:电子技术应用收藏

  1.4 控制接口

本文引用地址:http://www.eepw.com.cn/article/84988.htm

  可以通过两种接口方式控制CS4224:SPI和I2C,通过引脚SPI/I2C进行选择。延时器采用SPI模式控制CS4224的工作方式。CS、CDIN和CCLK分别为片选、数据线和位时钟,由M68HC05C8的内置SPI接口控制。给定CS4224控制寄存器地址,单片机可以读写控制寄存器的内容。M68HC05C8通过端口PC6复位CS4224。

  TMS320C32芯片本身提供的I/O线只有XF0和XF1,利用这两根线分别作发送数据经和接收数据线,构成一个异步串行口,通过软件模块与M68HC05C8进行双机通信,由单片机控制TMS320C32的运行。同时,单片机通过端口PC0~5控制TMS320C32的复位端、工作方式选择端MCBL/MP和引导模式选择端INT0~3。

  2 工作流程

  2.1 音频信号处理

  立体声音频信号首先经过输入调理电路。输入调理电路的主要作用是对音频信号进行缓冲和交流耦合,同时进行电平偏移,产生CS4224所需的2.3V供模输入电压,并满足CS4224满量程输入电压有效值为2V的要求。

  音频信号送入CS4224后,进入片内一阶高通滤波器, 滤除输入信号中可能存在的直流偏置。为避免高通滤波器影响频率响应,可以通过控制寄存器HPD域禁止该功能。CS4224具有输入电平监测功能,通过状态寄存器LV域指示峰值数字信号。A/D转换以后左右声道数字信号由内部数字输入滤波器滤波后,在数据移位时钟SCLK作用下分时从SDOUT引脚串行送出,左右声道时钟LRCK指示是左声道还是右声道信号,并开始一个新的采样周期。

  从引脚SDIN输入的数字音频信号,经内部数字输出滤波器滤波后,再经过D/A转换,由片内缓冲放大器提供有效值最大为2V的差模输出电压。音频输出电压大小通过片内衰减器调节,模拟音量控制范围113.5dB;并以0.5dB步长步进调整,由输出衰减寄存器设置。音量调节过程采用淡入淡出方式,从当前音量到新设置音量以0.5dB的斜率逐渐变化,变化速率通过DAC控制寄存器RMP域可设置为4、16或32倍采样周期。如果通过DAC控制寄存器SOFT域禁止淡入淡出,音量变化通常发生在音量过零点,以便减小信号失真。如果未检测到过零点,则在512和1024个采样周期之间完成音量切换。CS4224同时具有输出静音功能,通过DAC控制寄存器MUT域设置,静音的实现和音量控制一样,也是以淡出方式进行。

  输出调理电路采用两个二阶Butterworth滤波器,以便滤波除带外噪声。CS4224在采样频率附近为片外滤波器进行了3dB预补偿,可以在通带范围提供平坦的频率响应和线性相应。输出信号为差动平衡信号。

  SDOUT引脚的47kΩ下拉电阻将CS4224设置为主机工作方式,LRCK和SCLK作为输出引脚。主时钟从CS4224的XT1引脚输入,频率为24.576MHz,经内部8分频,得到3.072MHz的串行数据移位时钟SCLK,再经64分频,得到48kHz的左右声道时钟LRCK,也是采样频率。分频关系通过时钟输出寄存器的MCK域来设置。

  CS4224提供四种串行数据输入和输出格式,可以通过端口模式寄存器的DDI和DDO域设置。延时器均采用格式1(FORMAT1),数据为24位左对齐方式。数据输入和输出时序如图2所示。

  2.2 延时功能的实现

  M68HC05C8软件主要由初始化程序和主程序等组成。在初始化程序中,完成CS4224的复位和初始化、MS320C32复位和引导。主程序主要是按键和显示处理程序,完成各种按键的分析处理、刷新光柱和数码管显示,并将有关信息送至CS4224和TMS320C32。

  首先,M68HC05C8复位CS4224,通过SPI接口初始化、DAC和端口模式控制寄存器,设置音频输入输出格式,使音频输出静音。

  接着,M68HC05C8通过端口PC0~3,令MCBL/MP引脚为高电平,然后在RESET引脚给出复位脉冲,MTS320C32进入外部存储器程序引导,将FLASH存储器中的程序装入内部RAM,并从目标地址开始执行程序。

  TMS320C32软件由主程序、初始化程序和串行中服务程序等组成。初始化程序首先复位串口,并设置端口控制寄存器,令串口的所有引脚工作在串口方式,而非通用I/O口;设置串行口全局控制寄存器,数据长度设为24位,开放串口中断,对串口信号进行极性控制;使用外部时钟CLRX/R,并设置为低电平有效,其余信号均为高电平有效,以便与CS4224接口线相适应,然后启动串口工作。

  数据读写操作均在TMS320C32串口接收中断服务程序中进行。24位音频输入数据从DR引脚全部左移进入接收移位寄存器RSR后,TMS320C32将RSR内容写入DRR接收寄存器,并产生串口接收中断XINT。在串中接收中断服务程序中,将DRR数据写入,同时从中读入需要输出的音频数据,写入发送寄存器DXR,等待下一个帧同步信号FSX有效后送入发送移位寄存器XSR,在移位脉冲CLKX作用下左移,从DX引脚输出。

  延时器有4种工作模式,即直通状态(BYPASS)、紧急状态(DUMP)、2秒模式(-2s)和咳嗽模式(COUGH)。直通状态下,音频输入和输出端通过继电器直接连在一起,输出不再通过延时器,延时器关机时也处于直通状态。在延时状态下,每按一次2秒模式键,删除最新输入延时器的2秒音频数据,避免刚读错的内容被播出。按住咳嗽按钮键,删除按住该键时输入的音频数据,可让主持人打喷嚏、咳嗽或作短暂停顿而不被发现。延时时间1~10秒可调,可以通过按键设定。按下START键进入延时状态,此时整个播出静音或重放预先录入的垫乐,直到正式进入延时状态。按下EXIT键可退出延时状态。在延时状态时,如遇到恶意电话等紧急情况,可迅速按动DUMP键,此时设定延时时间内的全部音频数据被删除,并切断正常播出,播出处静音状态。

  用户通过按键选择延时器的工作模式,M68HC05C8根据工作模式控制CS4224音频输出处于静音或正常输出状态,并在TMS320C32串口中断服务程序中改变读出或写入音频数据的地址。M68HC05C8根据延时时间和采样频率,计算出音频数据的写入地址和读出地址,通过接口线XF0/1进行串口通信,将地址传送给TMS320C32。当读出地址和写入地址相同时,音频输入和输出没有延时。如果将写入地址减去某一增量后作为读出地址,则读出内容为一段延时时间前的音频输入,从而达到延时功能。

  综上所述,广播级数字采用和MCU的主从式结构以及高精度∑-Δ芯片,实现了灵活的工作模式控制,具有较高的音频性能指标,可以满足电台直播节目安全播出的需要。


上一页 1 2 下一页

关键词: DSP 音频延时器 ADC SRAM

评论


相关推荐

技术专区

关闭