基于TMS320C5409的语音实时变速系统设计
采用DMA的方式,即串口每收到或发送一组单元,都会自动触发DMA将其搬送到一个内部的Buffer中,等Buffer满了再通过中断方式告诉CPU处理。这时DMA最好采用ABU(Auto Buffering)模式,可以有效防止Buffer中的数据在串口速率较高时被新数据冲掉的问题。在进行
语音
变速时,只需要将13MA通道的帧长做相应的改变即可。
SST39VF400A(256K×1 6位)作为
TMS320C5409的外部数据存储器,地址总线和数据总线接至
TMS320C5409的外部总线,CR接至
TMS320C5409的DS。TMS320C5409与SST39VF400A的接口如图4所示。
外部存储器采用的是CY7C133,它是高速的2K×16bit的静态异步双端口RAM,其存储速度为25ns。它有两套独立的地址线、数据线和控制信号线,允许两个控制器件中的数据通过共同连接的存储器来进行通信。该双端口RAM允许两个控制器同时读取任何存储单元(包括同时读同一单元),但不允许同时写或者一读一写统一地址单元。
对于TMS 320VC5402,数据存储器CY7C133的对应地址为4000H~47FFH。
系统软件
本
系统实现的目标是键盘控制功能和
语音录放功能,并且能够将输入的
语音信号以任意
变速率播放而不改变语音的声调。
系统采用C语言进行功能开发。
本系统中将HPI口映射成为GPIO,并且将键盘连线通过或门接到INTO。当有按键按下时,INTO中断处理程序通过从GPIO中读出的数值判断此时是录音、放音、语速变快还是语速变慢。
抗干扰
设计
本系统中既采用硬件抗干扰技术,也采用了软件抗干扰技术。下面简要介绍一下本系统所采用的硬件看门狗和数字滤波器的
设计。
利用硬件看门狗功能提高系统的抗干扰能力。由专用芯片MAX692构成的看门狗电路(图5),系统所用外围元件少。MAX692是微系统监控电路芯片,具有后备电池切换、掉电判别、看门狗监控等功能。其中WDI是看门狗检测输入端,接到数字电路系统的一个专用I/O口或一个总线口上。RESET是复位信号输出端,接数字电路系统的复位端RST。MAX692的WDI定时周期为1.6 s,复位脉冲宽度是200ms。如果WDI保持高或低超过看门狗定时周期(1.6s),RESET端将发生200ms宽(最小140ms)的负脉冲使数字电路系统复位。
评论