<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 手機(jī)與無線通信 > 設(shè)計(jì)應(yīng)用 > OMAP5912的嵌入式無線組播通信設(shè)計(jì)

          OMAP5912的嵌入式無線組播通信設(shè)計(jì)

          作者: 時(shí)間:2011-03-22 來源:網(wǎng)絡(luò) 收藏


          3 系統(tǒng)軟件
          本系統(tǒng)軟件可以分為3個(gè)功能模塊:語音信息處理模塊、模塊和QT控制模塊。其中QT控制模塊負(fù)責(zé)圖形界面顯示和人機(jī)接口控制。為了便于實(shí)現(xiàn)系統(tǒng)管理,采用基于Linux操作系統(tǒng)的應(yīng)用程序開發(fā)模式,操作系統(tǒng)則選用Linux2.6.29版本。系統(tǒng)主程序結(jié)構(gòu)如圖4所示。

          本文引用地址:http://www.ex-cimer.com/article/156550.htm

          d.jpg


          在完成必要的軟硬件初始化后,系統(tǒng)進(jìn)入QT界面控制程序,QT界面控制程序負(fù)責(zé)兩大功能:
          ①語音編解碼處理。如圖5所示,語音信號(hào)的處理是通過DSP55X內(nèi)核完成。它采用雙線程處理。線程1負(fù)責(zé)語音編碼處理。此時(shí)DSP內(nèi)核采用雙緩存機(jī)制保存ARM9送入的本地語音數(shù)據(jù)。它利用G729a定點(diǎn)編碼算法實(shí)現(xiàn)對(duì)語音的壓縮處理,然后送給ARM9內(nèi)核。線程2負(fù)責(zé)語音解碼處理。ARM接收到的語音數(shù)據(jù)送入DSP內(nèi)核后利用多用戶解碼算法恢復(fù)各個(gè)用戶的語音信息,然后回送給ARM9內(nèi)核處理。

          e.jpg


          語音和聲卡數(shù)據(jù)的收發(fā)以及混音處理。它由ARM9內(nèi)核完成。ARM9內(nèi)核與DSP內(nèi)核的是通過DSP Gateway雙核機(jī)制方式實(shí)現(xiàn),由ARM9內(nèi)核負(fù)責(zé)控制。對(duì)于語音編碼,ARM9負(fù)責(zé)把AIC23采集的緩存數(shù)據(jù)寫入到DSP的編碼器中。編碼完的數(shù)據(jù)放入發(fā)送緩存單元,當(dāng)發(fā)送緩沖區(qū)放滿之后,ARM端就會(huì)將數(shù)據(jù)通過網(wǎng)口發(fā)送出去。然后將編碼后的數(shù)據(jù)通過網(wǎng)卡發(fā)送出去。語音解碼與編碼過程相反,首先通過無線網(wǎng)卡接收其他用戶發(fā)送過來的比特流,并提取用戶信息,送入DSP端解碼,經(jīng)過解碼器解碼后,判別當(dāng)前是否多用戶通信,如果是就啟動(dòng)混音程序,再輸出至音頻接口,變?yōu)槟M語音信號(hào)播放。

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();