新聞中心

EEPW首頁(yè) > 物聯(lián)網(wǎng)與傳感器 > 設(shè)計(jì)應(yīng)用 > 基于TMS320C5402的數(shù)字壓縮語(yǔ)音錄放系統(tǒng)

基于TMS320C5402的數(shù)字壓縮語(yǔ)音錄放系統(tǒng)

——
作者:江西理工大學(xué)機(jī)電學(xué)院 周克良 楊麗榮 時(shí)間:2007-01-30 來(lái)源:電子設(shè)計(jì)應(yīng)用 收藏

系統(tǒng)簡(jiǎn)介

本系統(tǒng)的主要功能是通過(guò)對(duì)語(yǔ)音信號(hào)進(jìn)行壓縮,以實(shí)現(xiàn)高效率數(shù)字錄音,可用于電話留言,語(yǔ)聲應(yīng)答等場(chǎng)合。采用磁帶錄音實(shí)現(xiàn)電話留言,雖然錄音的時(shí)間較長(zhǎng),但不便于查找和保存。數(shù)字錄音可以克服磁帶錄音的缺點(diǎn),不僅查找速度快,而且對(duì)錄音信息進(jìn)行編輯整理也非常方便,更為方便的是數(shù)字錄音信息可以轉(zhuǎn)存在計(jì)算機(jī)硬盤(pán)或光盤(pán)上以便長(zhǎng)期保存。但是數(shù)字錄音的缺點(diǎn)是要實(shí)現(xiàn)長(zhǎng)時(shí)間錄音需要很大的存儲(chǔ)空間,因此本系統(tǒng)一方面采用存儲(chǔ)量為16MB的單片閃速存儲(chǔ)器KM29N160,另一方面采用2.0Kb/s的速率對(duì)語(yǔ)音進(jìn)行壓縮,采用這兩種方法后,可以實(shí)現(xiàn)2小時(shí)以上的數(shù)字錄音。



系統(tǒng)硬件設(shè)計(jì)

整個(gè)硬件設(shè)計(jì)包括三個(gè)部分,一是 DSP處理系統(tǒng),包括、程序存儲(chǔ)器、數(shù)據(jù)存儲(chǔ)器、模數(shù)轉(zhuǎn)換電路等;二是閃速存儲(chǔ)器及其與TMS320 C5402的接口部分;三是AT89C51主處理器部分,包括AT89C51處理器、鍵盤(pán)顯示電路及AT89C51與接口。圖1是整個(gè)硬件系統(tǒng)的示意框圖。

DSP處理系統(tǒng)

TMS320C5402 DSP處理系統(tǒng)主要完成語(yǔ)音的壓縮和解壓縮功能。系統(tǒng)主要由TMS320C5402、EPROM 27C256-15(1片)、高速RAM CY7C199-10(2片)、譯碼電路、晶體振蕩器、模數(shù)轉(zhuǎn)換電路等構(gòu)成。其中,EPROM存儲(chǔ)引導(dǎo)信息和程序代碼,其地址為數(shù)據(jù)空間的8000H~FFFFH,DSP芯片加電運(yùn)行時(shí)將EPROM中的程序代碼搬移到高速RAM中。高速RAM的存取時(shí)間為10ns,可以全速執(zhí)行,地址為0000H~7FFFH,共32K字,程序和數(shù)據(jù)均可訪問(wèn)。ADC采用Motorola公司的PCM編解碼器MC14LC5480,這個(gè)芯片集語(yǔ)音A/D、D/A及抗混疊濾波于一體,采用單5V供電方式,TMS320C5402提供了可與PCM編碼器等串行器件接口的串行口,因而只需將相應(yīng)的引腳一一連接即可。其接口電路如圖2所示。

主從系統(tǒng)設(shè)計(jì)

整個(gè)系統(tǒng)由AT89C51和TMS320C5402兩個(gè)處理器以主從方式連接,其中AT89C51作為系統(tǒng)主機(jī),完成系統(tǒng)的人機(jī)接口和對(duì)TMS320C5402的控制。與DSP之間通過(guò)HPI-8連接,標(biāo)準(zhǔn)的HPI-8口是一個(gè)8位的并行端口,可以用來(lái)實(shí)現(xiàn)DSP和主設(shè)備或主處理器接口,雙方通過(guò)共享TMS320C5402的片上存儲(chǔ)器完成通信。為主控部分,采用端口方式直接訪問(wèn)HPI口。HPI口主要由地址寄存器(HPIA)、控制寄存器(HPIC)、數(shù)據(jù)寄存器(HPID)、HPI存儲(chǔ)器和HPI控制邏輯組成。對(duì)HPI口進(jìn)行數(shù)據(jù)讀寫(xiě)需要三個(gè)步驟:設(shè)置控制寄存器、寫(xiě)地址寄存器和讀寫(xiě)數(shù)據(jù)寄存器。和DSP的HPI口硬件接口如圖3所示。

系統(tǒng)軟件設(shè)計(jì)

TMS320C5402的軟件設(shè)計(jì)

TMS320C5402的軟件包括EPROM引導(dǎo)程序和系統(tǒng)軟件兩部分。其中,EPROM引導(dǎo)程序比較簡(jiǎn)單,其作用是將系統(tǒng)軟件從低速EPROM搬移到高速RAM中。系統(tǒng)軟件由三部分組成:即主程序、串行中斷服務(wù)程序和INT0中斷服務(wù)程序。

主程序完成系統(tǒng)的初始化,包括從閃速存儲(chǔ)器中讀取已經(jīng)存入的語(yǔ)音段數(shù)及數(shù)字音量等信息。完成初始化過(guò)程后,TMS320C5402就等待從A


T89C51主處理器發(fā)來(lái)的各種命令,根據(jù)不同命令調(diào)用相應(yīng)的處理程序。

串行中斷服務(wù)程序完成語(yǔ)音的輸入/輸出和數(shù)據(jù)格式的轉(zhuǎn)化功能,由于PCM編解碼器輸出的數(shù)據(jù)是8位m律數(shù)據(jù),因此需將m律數(shù)據(jù)轉(zhuǎn)化為線性格式的數(shù)據(jù)以便TMS320C5402進(jìn)行處理。同樣,TMS320C5402輸出的線性數(shù)據(jù)也需轉(zhuǎn)化為8位m律才能送至PCM編解碼器進(jìn)行D/A變換。

INT0中斷服務(wù)程序主要用來(lái)接收從AT89C51送來(lái)的各種命令,并且設(shè)置相應(yīng)的命令標(biāo)志以便TMS320C5402在主程序中識(shí)別并調(diào)用相應(yīng)的子程序。

AT89C51的軟件設(shè)計(jì)

AT89C51軟件主要包括初始化程序、主程序、定時(shí)中斷服務(wù)程序和INT0中斷服務(wù)程序。在初始化程序中,完成AT89C51的初始化、TMS320C5402的復(fù)位、從TMS320C5402獲得已存入閃速存儲(chǔ)器的語(yǔ)音段數(shù)和數(shù)字音量等。主程序主要是按鍵處理程序。定時(shí)器中斷服務(wù)程序每隔10ms中斷一次,增加程序所需的各種計(jì)數(shù)器的值,并置各種定時(shí)到達(dá)標(biāo)志以便主程序判斷使用。

結(jié)語(yǔ)

本文已經(jīng)給出了硬件平臺(tái)和軟件設(shè)計(jì)

思路,只要制作出硬件平臺(tái),并將仿真好的程序移植到dsp平臺(tái)上就可以實(shí)現(xiàn)語(yǔ),經(jīng)試用具有很好的語(yǔ)效果。



評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉