電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>模擬數(shù)字>基于VS1003B的語音通信方法研究資料下載

基于VS1003B的語音通信方法研究資料下載

2021-04-22 | pdf | 422.6KB | 次下載 | 3積分

資料介紹

1 VS1003B解碼芯片介紹VS1003B是由芬蘭VLSI公司出品的一款單芯片的MP3/WMA/MIDI音頻解碼和ADPCM編碼芯片,其內(nèi)部電路如圖1所示。由圖可見,VS1003B包含一個高性能、具有自主產(chǎn)權(quán)的低功耗DSP處理器內(nèi)核VSDSP,工作數(shù)據(jù)存儲器為用戶應(yīng)用提供5 kB的指令RAM和0.5 kB的數(shù)據(jù)RAM,串行的控制和數(shù)據(jù)接口,4個常規(guī)用途的I/O口,一個UART,一個高品質(zhì)可變采樣率的ADC和立體聲DAC,還有一個耳機(jī)放大器和地線緩沖器。VS1003B通過一個串行輸入總線來接收輸入的比特流,它可以作為一個系統(tǒng)的從機(jī)。輸入的比特流被解碼,然后通過一個數(shù)字音量控制器到達(dá)一個18位過采樣多位ε-△DAC。解碼過程通過一個串行控制總線來控制實(shí)現(xiàn)。除了基本的解碼,在用戶RAM中它還可以做其他特殊應(yīng)用,例如DSP音效處理。2 設(shè)計(jì)原理以半雙工語音通信為例,其工作原理如圖2所示。當(dāng)一方需要講話時,會按下PTT鍵,該信號STM32微處理器檢測到后,一方面向?qū)Ψ桨l(fā)送“PTT已按下”的消息,另一方面控制已方VS1003B進(jìn)入錄音模式,VS1003B將采集到的音頻數(shù)據(jù)編碼后緩存給STM32,再通過CAN總線發(fā)送到對方。對方在收到“PTT已按下”消息后,會控制己方VS1003B開啟語音播放模式,將對方傳來的音頻數(shù)據(jù)傳輸給VS1003B進(jìn)行解碼,并根據(jù)需要調(diào)節(jié)音量,供耳機(jī)播放。VS1003B電路原理圖如圖3所示。J1為麥克風(fēng)輸入插座,用于連接麥克風(fēng)。J2為外部聲音輸入插座,連接音源。J3為耳機(jī)輸出插座,連接耳機(jī),由于內(nèi)部具有耳機(jī)驅(qū)動器,VS1003B輸出信號不需經(jīng)過任何功放電路,從而簡化了硬件電路。VS1003B各部分的供電電壓不同,IOVDD(I/O電壓)為3.3 V,CVDD(數(shù)字電路電壓)為2.5 V,AVDD(模擬電路電壓)為2.8 V。最大的采樣率XTAL1/256,決定了能以正確的速度播放的音頻采樣率。例如,如果要播放48 kHz采樣率的音頻,XTAL1至少為12.288 MHz才能獲得正確的播放速度。對于STM32微處理器來說,總共需要7個IO口與VS1003B連接。SO(串行輸出)、SI(串行輸入)與SCLK(串行總線時鐘)分別接STM32的PB14、PB15和PB13,即接到STM32的SPI2上,VS1003B通過SPI接口輸出IMA ADPCM編碼的音頻數(shù)據(jù)。其余的四根線中,DREQ(數(shù)據(jù)請求)連接到PC3,XCS(命令片選)連接到PC10,XDCS(數(shù)據(jù)片選)連接到PC11,XRESET(復(fù)位)連接到STM32的14管腳(NRST),當(dāng)STM32復(fù)位時,VS1003B同時復(fù)位。操作時,只有當(dāng)DREQ為高(準(zhǔn)備好)時才能讀寫VS1003B。3 VS1003B程序設(shè)計(jì)3.1 初始化VS1003B在設(shè)計(jì)中,STM32F103VET6通過SPI總線對VS1003B進(jìn)行控制,也就是通過VS1003B的串行數(shù)據(jù)接口SDI和串行控制接口SCI實(shí)現(xiàn)STM32F107 VCT6與VS1003B的通信。VS1003B初始化流程如圖4所示。其中,DREQ為高時可判斷為硬件復(fù)位或軟件復(fù)位結(jié)束。3.2 語音信號的采集語音信號的采集就是把模擬的語音信號轉(zhuǎn)化為可控制的數(shù)字信號。在這一處理過程中,主要是對模擬音頻信號進(jìn)行采樣、量化和編碼。目前常見的音頻信號的頻率范圍大致如下:電話為200Hz~3.4 kHz,調(diào)幅廣播為50 Hz~7 kHz,調(diào)頻廣播為20Hz~15 kHz,高保真音頻信號為20 Hz~20 kHz。因此音頻取樣頻率一般定在8~48 kHz范圍內(nèi)。量化是利用預(yù)先規(guī)定的有限個電平來表示每一模擬采樣值的過程。量化的精度與其用來表示采樣值的二進(jìn)制位數(shù)有關(guān),例如4位可表示24=16個量化等級,8位可表示28=256個量化等級。明顯地,位數(shù)越多,量化值越接近采樣值,其精度也就越高,但相應(yīng)的所需的存儲量也越大(見表1)。鑒于STM32F107VCT6主頻最高為72 MHz,在保證聲音質(zhì)量的前提下,應(yīng)盡量減少數(shù)據(jù)量,因此本文對聲音的采樣頻率為8 kHz,量化精度為8 bit,此時數(shù)據(jù)碼率為64 kbit/s。語音壓縮編碼需要在保持可懂度、音質(zhì)、限制碼率及降低編碼過程的計(jì)算代價這幾個方面進(jìn)行折衷。VS1003B提供了IMA ADPCM編碼,這是由互動多媒體協(xié)會(IMA)制定的標(biāo)準(zhǔn),屬于波形編碼的一種,采用麥克風(fēng)和線入兩種輸入方式,可支持的音頻文件格式包括MP3、MP3+V、WMA、WAV、MIDI和SP-MIDI。IMA ADPCM適用于8~44.1 kHz采樣頻率,并且能在CPU占用率低和內(nèi)存空間需求少的條件下保證較好的音質(zhì),在Windows和MAC操作系統(tǒng)中有廣泛的應(yīng)用。IMA ADPCM錄音模式需要在SCI_MODE中對SM_RESET和SM_ADPCM進(jìn)行置位來啟動。在啟動ADPCM錄音前,必須分別向SCI_AICTRL0和SCI_AICTRL1寫入時鐘分割值(據(jù)此可得到采樣率)和增益值。錄音流程如圖5所示。記錄的語音數(shù)據(jù)以512字節(jié)為單位進(jìn)行存儲,并由STM32處理器通過CAN總線向?qū)Ψ睫D(zhuǎn)發(fā)。3.3 CAN通信CAN總線作為一種總線式串行通信網(wǎng)絡(luò),與一般的通信總線相比,具有突出的可靠性、實(shí)時性和靈活性等特點(diǎn)??紤]到模擬訓(xùn)練器材對語音傳輸距離的要求不高,且STM32自帶bxCAN,即基本擴(kuò)展CAN,它支持CAN協(xié)議2.0A和2.0B,支持報(bào)文發(fā)送的優(yōu)先級要求,支持時間觸發(fā)通信,距離40 m內(nèi)波特率可達(dá)1Mbit/s。因此,設(shè)計(jì)上采用CAN總線來實(shí)現(xiàn)語音數(shù)據(jù)傳輸,由STM32F107VCT6內(nèi)嵌的2路CAN控制器與外圍器件SN65HVD230 (也標(biāo)識為VP230)收發(fā)器組成2路CAN收發(fā)電路,其中一路CAN組成信令網(wǎng),實(shí)現(xiàn)控制信令的傳輸;另一路CAN組成語音網(wǎng),將ADPCM壓縮編碼后的數(shù)據(jù),由STM32處理為CAN報(bào)文格式,發(fā)送到總線上,并對CAN過濾器進(jìn)行設(shè)置,使之僅在收到給自己的報(bào)文時引起中斷。3.4 語音信號的播放播放前將對方傳來的語音數(shù)據(jù)存放到STM32的緩沖區(qū),緩沖區(qū)的大小設(shè)置為512字節(jié),一般一次讀一個扇區(qū),然后將數(shù)據(jù)發(fā)往VS1003B。由于VS1003B有32字節(jié)的數(shù)據(jù)緩沖區(qū),一次可以發(fā)32個字節(jié)的數(shù)據(jù),然后檢測DREQ,當(dāng)DREQ為高時送下一個32字節(jié)的數(shù)據(jù),直到發(fā)完為止。 DREQ為高表明VS1003B可以接受新的數(shù)據(jù),如果不考慮DREQ而直接連續(xù)的給VS1003B發(fā)音頻數(shù)據(jù),將會出現(xiàn)聲音斷斷續(xù)續(xù)的情況。語音播放流程如圖6所示,考慮到實(shí)際語音通信時,本地PTT鍵抬起時,對方會無法聽到語音,因此流程圖中采用判斷對方PTT鍵的狀態(tài)來處理是否播放。4 結(jié)束語本文對基于STM32微處理器和VS1003B音頻解碼芯片的語音通信功能的實(shí)現(xiàn)進(jìn)行了研究,重點(diǎn)介紹了VS1003B的原理以及在語音通信應(yīng)用中的硬件電路設(shè)計(jì)和軟件程序設(shè)計(jì)。經(jīng)測試,該方法可較好地滿足語音通信要求,工作穩(wěn)定可靠,并在多個模擬訓(xùn)練器材研發(fā)項(xiàng)目中得到應(yīng)用,具有一定的參考價值。(mbbeetchina)
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1電子電路原理第七版PDF電子教材免費(fèi)下載
  2. 0.00 MB  |  1490次下載  |  免費(fèi)
  3. 2單片機(jī)典型實(shí)例介紹
  4. 18.19 MB  |  92次下載  |  1 積分
  5. 3S7-200PLC編程實(shí)例詳細(xì)資料
  6. 1.17 MB  |  27次下載  |  1 積分
  7. 4筆記本電腦主板的元件識別和講解說明
  8. 4.28 MB  |  18次下載  |  4 積分
  9. 5開關(guān)電源原理及各功能電路詳解
  10. 0.38 MB  |  10次下載  |  免費(fèi)
  11. 6基于AT89C2051/4051單片機(jī)編程器的實(shí)驗(yàn)
  12. 0.11 MB  |  4次下載  |  免費(fèi)
  13. 7藍(lán)牙設(shè)備在嵌入式領(lǐng)域的廣泛應(yīng)用
  14. 0.63 MB  |  3次下載  |  免費(fèi)
  15. 89天練會電子電路識圖
  16. 5.91 MB  |  3次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234313次下載  |  免費(fèi)
  3. 2PADS 9.0 2009最新版 -下載
  4. 0.00 MB  |  66304次下載  |  免費(fèi)
  5. 3protel99下載protel99軟件下載(中文版)
  6. 0.00 MB  |  51209次下載  |  免費(fèi)
  7. 4LabView 8.0 專業(yè)版下載 (3CD完整版)
  8. 0.00 MB  |  51043次下載  |  免費(fèi)
  9. 5555集成電路應(yīng)用800例(新編版)
  10. 0.00 MB  |  33562次下載  |  免費(fèi)
  11. 6接口電路圖大全
  12. 未知  |  30320次下載  |  免費(fèi)
  13. 7Multisim 10下載Multisim 10 中文版
  14. 0.00 MB  |  28588次下載  |  免費(fèi)
  15. 8開關(guān)電源設(shè)計(jì)實(shí)例指南
  16. 未知  |  21539次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935053次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537791次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234313次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233045次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191183次下載  |  免費(fèi)
  13. 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183277次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138039次下載  |  免費(fèi)