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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于IEEE802.1 5.4/ZigBee的語音通信系統(tǒng)

          基于IEEE802.1 5.4/ZigBee的語音通信系統(tǒng)

          作者: 時(shí)間:2012-04-13 來源:網(wǎng)絡(luò) 收藏

          ZigBee是ZigBee聯(lián)盟在IEEE802.15.4定義的物理層(PHY)和媒體訪問控制層(MAC)基礎(chǔ)上指定的一種低速無線個(gè)域網(wǎng)(LR-WPAN)技術(shù)規(guī)范。其主要目標(biāo)是以簡(jiǎn)單靈活的協(xié)議構(gòu)建一種布置簡(jiǎn)易、數(shù)據(jù)傳輸可靠、設(shè)備成本低、能量消耗小的短距離無線通信網(wǎng)絡(luò)。ZigBee工作頻段靈活,使用的頻段分別為2.4 GHz、868 MHz及915 MHz,均為免執(zhí)照頻段;傳輸速率為250 kbit·s-1,有效傳輸距離為10~75 m。通過在發(fā)射端加功率放大器還可以實(shí)現(xiàn)更遠(yuǎn)距離的通信。ZigBee技術(shù)具有多跳傳送(Muhi-hop Relay)機(jī)制、網(wǎng)絡(luò)擴(kuò)展性能好、布設(shè)容易以及具有自組織與自修復(fù)能力。廣泛地應(yīng)用到庫(kù)存管理、產(chǎn)品質(zhì)量控制、工業(yè)過程控制、災(zāi)害地區(qū)監(jiān)測(cè)、生物監(jiān)測(cè)和監(jiān)督、定位及消防安全等領(lǐng)域。雖然實(shí)現(xiàn)語音通信不是ZigBee聯(lián)盟最初的目標(biāo),但是,在許多領(lǐng)域中沒有語音通信功能,將使其應(yīng)用受到較大局限;另一方面,在有緊急需求和不易布置環(huán)境下,ZigBee具有其他通信技術(shù)難以替代的優(yōu)勢(shì),如能利用ZigBee網(wǎng)絡(luò)進(jìn)行語音傳輸則具有較大的實(shí)用價(jià)值;同時(shí),在無線傳感網(wǎng)絡(luò)的應(yīng)用中,聲音也是一種傳感量,傳輸采樣的聲音數(shù)據(jù)正是聲音傳感應(yīng)用的基本要求,所以文中針對(duì)IEEE802.15.4/ZigBee的應(yīng)用環(huán)境,并考慮到ZigBee理論通信速率為250 kbit·s-1,實(shí)際速率也能滿足語音通信要求的情況,提出實(shí)現(xiàn)語音通信的研究課題。并且充分利用本方案所選的性能特性,以及較少的外圍器件,很好地實(shí)現(xiàn)了語音通信。

          1 硬件方案

          1.1 方案總體架構(gòu)

          該系統(tǒng)總體架構(gòu)為:語音處理功能遠(yuǎn)程端MSP430作為發(fā)送端時(shí),片上的ADC完成從麥克風(fēng)采樣,把輸入的語音信號(hào)經(jīng)過轉(zhuǎn)換后發(fā)送,而近程端MSP430片上的DAC則把接收到的數(shù)據(jù)轉(zhuǎn)化為聲音信號(hào)再由喇叭播放。方波輸出功能的實(shí)現(xiàn)則以近程端作為發(fā)送端,發(fā)送控制命令給遠(yuǎn)程端,遠(yuǎn)程端接收到控制命令后,輸出占空比可調(diào)的方波信號(hào)。進(jìn)而實(shí)現(xiàn)半雙工通信下的雙向通信。數(shù)據(jù)的收發(fā)則通過以CC2420為核心的RF前端完成,外圍附加放大與濾波電路。該平臺(tái)的原理框圖如圖1所示。

          基于IEEE802.1 5.4/ZigBee的語音通信系統(tǒng)

          前置放大器完成對(duì)咪頭微弱信號(hào)的放大,以便與ADC的滿度測(cè)量范圍相匹配,提高信噪比;前置低通濾波器濾除高于采樣頻率1/2的信號(hào),即堆疊信號(hào),以減小語音失真;嵌入式處理器完成數(shù)據(jù)處理及發(fā)送接收;射頻收發(fā)器CC2420完成數(shù)據(jù)的收/發(fā),接收/發(fā)送該設(shè)備的數(shù)據(jù),并將數(shù)據(jù)發(fā)送到嵌入式處理器。后置低通濾波器對(duì)經(jīng)過D/A變換的語音信號(hào)濾波,還原語音信號(hào)。采用低噪聲、非斬波穩(wěn)零的雙極性運(yùn)放設(shè)計(jì)成二階有源濾波電路。音頻放大器對(duì)經(jīng)過濾波的語音信號(hào)放大,提高負(fù)載能力,輸出到揚(yáng)聲器,最終實(shí)現(xiàn)無線語音通信。電路外圍元件少,電壓增益可調(diào)。

          1.2 器件選型

          MSP430是具有超低功耗特點(diǎn)的16位,方案選用MSP430F168,功耗電流已達(dá)到μA級(jí)。CPU內(nèi)核功能強(qiáng)大:16位CPU和高效的RISC指令系統(tǒng),無外擴(kuò)的數(shù)據(jù)地址總線,在8MHz時(shí)可達(dá)125ns的指令周期,具有16個(gè)快速響應(yīng)中斷,能及時(shí)處理各種緊急事件。豐富的片內(nèi)外圍功能模塊:12位的A/D轉(zhuǎn)換器ADC12內(nèi)包括采樣/保持功能的ADC內(nèi)核、轉(zhuǎn)換存儲(chǔ)邏輯、內(nèi)部參考電平發(fā)生器、多種時(shí)鐘源、采樣及轉(zhuǎn)換時(shí)序電路。具有8個(gè)外通道和4個(gè)內(nèi)通道,高達(dá)采樣速率200 kbit·s-1,且具有多種采樣方式。兩路USART通信串口,可用于UART和SPI模式;片內(nèi)有精密硬件乘法器、兩個(gè)16位定時(shí)器,其具有48 kB閃存和2 kB的RAM,用于存儲(chǔ)采集數(shù)據(jù)。

          射頻芯片采用挪威Chipcon公司的CC2420。該芯片具有完全集成的壓控振蕩器,只需要天線、16 MHz晶振等非常少的外圍電路就能工作在ISM免費(fèi)頻帶上,工作頻率為2.4 GHz。具有2 Mchip·s-1直接擴(kuò)頻序列基帶調(diào)制解調(diào)和250 kbit·s-1的有效數(shù)據(jù)速率;適合簡(jiǎn)化功能裝置和全功能裝置操作:低電流消耗;低電源電壓要求??删幊梯敵龉β?;獨(dú)立的128 Byte發(fā)射、接收數(shù)據(jù)緩沖器。芯片具有良好的性能,尤其是極低的電流消耗和封裝尺寸,完全滿足無線網(wǎng)絡(luò)設(shè)備體積小、功耗小、成本低的設(shè)計(jì)要求。CC2420只提供一個(gè)SPI接口與微處理器連接,通過這個(gè)接口完成設(shè)置和收發(fā)數(shù)據(jù)工作。許多都集成了SPI控制器,可以方便地與CC2420配合使用。

          基于單片機(jī)MSP430和無線射頻芯片CC2420的SPI通信,通過設(shè)計(jì)單片機(jī)的SPI寄存器驅(qū)動(dòng)CC2420。處理器通過SPI接口訪問CC2420內(nèi)部寄存器和存儲(chǔ)區(qū)。CC2420與處理器的連接使用SFD、FIFO、FIFOP、和CCA 4個(gè)引腳表示收發(fā)數(shù)據(jù)的狀態(tài);而處理器通過SPI接口與CC2420交換數(shù)據(jù)、發(fā)送命令等。MSP430F168的SPI是全雙工的,因此當(dāng)通過SIMO向從機(jī)發(fā)送數(shù)據(jù)時(shí),SOMI接口同時(shí)也在接收數(shù)據(jù)。


          上一頁 1 2 3 下一頁

          評(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); })();