全數(shù)字化語言教學(xué)實驗室學(xué)生機(jī)單元的設(shè)計
摘要:全數(shù)字化語音系統(tǒng)的設(shè)計。該系統(tǒng)用DSP芯片TMS320F206對MSM6588語音芯片進(jìn)行錄音、放音控制,用FLASH存儲器AM29F040B進(jìn)行語音數(shù)據(jù)存儲,用差分線驅(qū)動器和接收器SN75LBC180在RS-485總線網(wǎng)絡(luò)上傳輸語音數(shù)據(jù)。該語音系統(tǒng)結(jié)構(gòu)簡單、功能可靠,從而滿足了全數(shù)字化語言教學(xué)實驗室對學(xué)生機(jī)單元提出的要求。
本文引用地址:http://butianyuan.cn/article/242316.htm關(guān)鍵詞:DSP 語音錄放 FLASH存儲器 RS-485總線
由于語言教學(xué)實驗室對語言教學(xué)產(chǎn)生著十分重大的影響和作用,是外語教學(xué)改革和提高外語教學(xué)質(zhì)量的制高點和突破口,因而語音教學(xué)實驗室得到了空間的發(fā)展和利用。我國現(xiàn)有的語言教學(xué)實驗室產(chǎn)品大都屬于模擬型語言教學(xué)實驗室,然而面對信息時代的到來,高新技術(shù)的發(fā)展,語言教學(xué)實驗室了適應(yīng)未來教育的需要,必須尋求新的發(fā)展。而要解決傳統(tǒng)語音教學(xué)實驗室面臨的問題必須引入數(shù)字化的設(shè)計,這主要包括以下四方面的內(nèi)容:一是學(xué)生機(jī)中微控制器選擇;二是語音信號的采集和播放;三是語音信號的存儲,也就是數(shù)字錄音機(jī)的功能實現(xiàn);四是語音信號的網(wǎng)絡(luò)化傳播。
TMS320F206是美國TI(德州儀器)公司繼TMS320C2X和TMS320C5X之后推出的一種低價格、高性能的16位定點運(yùn)算DSP,其CPU接近于TMS320C25,但時鐘速率提高、指令集更加豐富和優(yōu)化、片內(nèi)外設(shè)向TMS320C5X靠攏[1]。TMS320F206(以下簡稱F206)的性價比較高,目前已成為高檔單片機(jī)理想替代品,在通信、語音/語言、軍事、儀器儀表、圖像處理、工業(yè)控制等領(lǐng)域得到了廣泛應(yīng)用。本文就是用F206對MSM6588語音芯片進(jìn)行錄音、放間控制,用FLASH存儲器AM29F040B進(jìn)行語音數(shù)據(jù)存儲,用差分線驅(qū)動器和接收器SN75LBC180在RS-485總線網(wǎng)絡(luò)上傳輸語音數(shù)據(jù),從而滿足全數(shù)字化語言教學(xué)實驗室對學(xué)生機(jī)提出的上述要求的。圖1示出了該語音系統(tǒng)的結(jié)構(gòu)簡圖。
1 語音錄放電路
語音芯片MSM6588是日本OKI公司的產(chǎn)品,內(nèi)含話簡放大器、低通濾波器(LPF)、12位A/D和D/A轉(zhuǎn)換器,語音數(shù)據(jù)的處理采用ADPCM(自適應(yīng)差分脈沖編碼模式)方式[2]。語音芯片主時鐘頻率確定后,可用DSP通過軟件輸入控制字來設(shè)定采樣頻率。采樣頻率設(shè)定越高,放間的品質(zhì)越好,錄間的時間就越短。表1給出了MSM6588語音芯片的常用控制命令。
表1 MSM6588的控制命令表
命 令 | 第1個4位命令 D3 D2 D1 D0 | 第二個4位命令 D3 D2 D1 D0 | 命令的功能 |
NOP | 0 0 0 0 | - | 1個4位命令,空操作 |
SAMP | 0 1 1 0 | - - A1 A0 | 2個4位命令,A1、A0可設(shè)定4種采樣頻率 |
VDS | 1 1 0 0 | - B - - | 2個4位命令,B=0表示3位ADPCM,B1表示4位ADPCM |
PLAY | 0 0 1 0 | - | 1個4位命令,播放 |
REC | 0 0 1 1 | - | 1個4位命令,記錄 |
STOP | 0 1 0 1 | - | 1個4位命令,停止記錄/播放 |
PAUSE | 0 0 0 1 | - | 1個4位命令,暫時停止記錄/播放 |
EXT | 1 0 1 1 | - | 1個4位命令,啟動記錄/播放 |
F206和MSM6588的引腳說明見參考文獻(xiàn)[1]和[2]。U3是總線收發(fā)器,用來隔離和驅(qū)動DSP的數(shù)據(jù)線。MSM6588左邊的模擬電路用來放大從麥克風(fēng)給拾取的微弱電信號,左邊的模擬電路是功率放大部分,U5即TPA302是音頻功率放大器,可驅(qū)動32Ω耳機(jī)。
2 語音存儲電路
由于語音芯片內(nèi)無存儲器,必須外掛存儲器??刹捎玫拇鎯ζ骱芏?,如SRAM、PSRAM、DRAM、SDRAM、FLASH等。本方案采用的是AMD公司生產(chǎn)的AM29F040B,它的存儲容量為512KB,使用單5V電源進(jìn)行按扇區(qū)的擦除和按字節(jié)的寫放操作。AM29F040B的非易失性可使語音數(shù)據(jù)在掉電后不會丟失,它的閃速存儲器能可提高語音數(shù)據(jù)的采樣頻率,從而提高放間的品質(zhì)。當(dāng)采樣頻率設(shè)定為5.86kHz時,錄音/放音時間為174.744s。AM29F040B的引腳輸出與工業(yè)標(biāo)準(zhǔn)的EPROM、E2PROM完全兼容,在電路設(shè)計時非常方便。圖3示出F206與AM29F040B的接口電路。AM29F040B地址線有19根,設(shè)計F206與其接口的關(guān)鍵是將AM29F040B的高位地址線(圖3中為A14、A15、A16、A17和A18,可根據(jù)分頁的多少和頁面大小而定)通過八D鎖存器74HC574的輸出保持,其余地址線直接連到F206的地址總線上。該接口電路將512KB的數(shù)據(jù)空間分成32頁,每頁16KB。這16KB的空間被定位在F206數(shù)據(jù)空間的哪一個范圍則由信號線/CSFLASH決定。在對FLASH操作時,先要通過74HC574選擇頁面,然后便可對當(dāng)前頁面的16KB數(shù)據(jù)空間讀寫。
表2 AM29F040B的主要命令
命令描述 | 時鐘周期 | 總線周期 | |||||||||||
1 | 2 | 3 | 4 | 5 | 6 | ||||||||
地址 | 數(shù)據(jù) | 地址 | 數(shù)據(jù) | 地址 | 數(shù)據(jù) | 地址 | 數(shù)據(jù) | 地址 | 數(shù)據(jù) | 地址 | 數(shù)據(jù) | ||
讀 | 1 | RA | RD | ||||||||||
復(fù)位 | 1 | XXX | F0 | ||||||||||
編程 | 4 | 555 | AA | 2AA | 55 | 555 | A0 | PA | PD | ||||
片擦除 | 6 | 555 | AA | 2AA | 55 | 555 | 80 | 555 | AA | 2AA | 55 | 555 | 10 |
扇區(qū)擦除 | 6 | 555 | AA | 2AA | 55 | 555 | 80 | 555 | AA | 2AA | 55 | SA | 30 |
3 語音傳輸網(wǎng)絡(luò)
由于F206的片內(nèi)異步串口(ASP)可以以高達(dá)2.5Mbit/s的傳送速率進(jìn)行全雙工發(fā)送和接收操作,而且在所有方式下發(fā)送和接收數(shù)據(jù)都為雙緩沖,故可利用ASP外接差分線驅(qū)動器和接收器SN75LBC180構(gòu)成RS-485總線網(wǎng)絡(luò),將所有的學(xué)生機(jī)節(jié)點和教師機(jī)連成主從式網(wǎng)絡(luò)結(jié)構(gòu)。圖4給出不F206與SN75LBC180的接口電路。SN75LBC180與F206接口的4根信號線是RX、TX、IO0及IO1,由于在圖2中已給出不F206的所有管腳,這里就不再畫出DSP不。其中IO0連接到SN75LBC180的接收數(shù)據(jù)控制引腳/RE,IO1接到SN75LBC180的發(fā)送數(shù)據(jù)控制引腳DE,數(shù)據(jù)的接收和發(fā)送就是靠IO0和IO1的電平高低來控制的。SN75LBC180的總線互連部分只畫出不差分接收的電路,差分發(fā)送電路與接收電路相同,故沒有在電路中示出。由于RS-485的通信載體是雙絞線,它的特性阻抗是120Ω,所以在RS-485的網(wǎng)絡(luò)傳輸線的始端和末端各接1只120Ω的匹配電阻R3,以減少線路上傳輸信號的反射。SN75LBC180的A、B輸入端接上拉、下拉電阻R1、R2是為不防止F206被誤中斷而收到亂字符;R4、R5可使本機(jī)的硬件故障不影響整個總線的通信;穩(wěn)壓管D1、D2組成吸收回路以抵抗傳輸線上的各種干擾,用來保護(hù)RS-485總線。
4 軟件設(shè)計簡述
該語音教學(xué)系統(tǒng)中的學(xué)生機(jī)單元的軟件框架見圖5。軟件設(shè)計的核心是協(xié)調(diào)各中斷(從主機(jī)來的串口接收中斷、從語音芯片MSM6588來的采樣中斷和播放中斷以及從鍵盤來的中斷)之間的邏輯關(guān)系。學(xué)生機(jī)的主要任務(wù)是:在播放的時候,既要保證接收數(shù)據(jù)完整,又要保證語音播放不間斷;在尋間的時候,既要保證采樣連續(xù),又要保證完整地發(fā)送數(shù)據(jù)包。本程序采用雙緩沖技術(shù)來解決這些剖,即在播放時,接收一個數(shù)據(jù)包到一個緩存區(qū),同時播放另一個緩存區(qū)中的數(shù)據(jù)包;錄音時,采樣一個緩存區(qū),同時發(fā)送另一個緩存區(qū)中的數(shù)據(jù)包。
評論