基于nRF24E1無線耳麥的設(shè)計與實現(xiàn)
摘要: 介紹了一種基于nRF24E1的應(yīng)用于家用電視及個人電腦的無線耳麥,詳細(xì)闡述了無線耳麥的硬件設(shè)計方法,說明了語音發(fā)送和接收的工作原理,并給出了軟件設(shè)計的主要工作流程。
0 前言
當(dāng)前,隨著Interne t和個人電腦的普及,人們通常使用有線的耳麥進(jìn)行語音聊天。由于有線耳麥的局限性,使人們必須坐在電腦前才能語音聊天。
如果時間久了,會造成電腦對人體的輻射,從而影響人的健康; 在家用電視方面,人們通常使用電視內(nèi)置喇叭來聽電視傳來的聲音,這樣有時候會給家庭其他成員的工作與休息造成一定的影響。
基于這些問題,本文設(shè)計并實現(xiàn)了一種基于nRF24E1的無線耳麥。本設(shè)計具有抗干擾能力強、保密性好、音質(zhì)好、成本較低等優(yōu)點。其室內(nèi)傳輸距離在30米左右,從而減少電腦對人體的輻射,并且不影響家庭其他成員的休息與工作。
該無線耳麥?zhǔn)褂卯?dāng)前最先進(jìn)的無線收發(fā)芯片nRF24E1, 它可以在世界公用的ISM 頻段2. 4G ~2. 5GHZ內(nèi)實現(xiàn)語音的無線通信。
1 nRF24E1介紹
nRF24E1芯片是北歐集成電路公司NORD IC推出的一款帶2. 4GHz無線收發(fā)器nRF2401和增強型8051內(nèi)核的無線收發(fā)模塊。該芯片的通道運算時間小于200us, 數(shù)據(jù)速率為1Mbps, 不需要外接SAW濾波器,是目前世界首推的全球通用的低成本射頻系統(tǒng)級芯片。內(nèi)部嵌有與8051 兼容的微處理器和10位9輸入的模/數(shù)轉(zhuǎn)換器,可以在1. 9V~ 3. 6V 之間的電壓下穩(wěn)定工作; 另外還嵌有電壓調(diào)整器和VDD 電壓監(jiān)視器。無線收發(fā)部分有與nRF2401同樣的功能,該功能由內(nèi)部并行口和內(nèi)部SPI啟動,每一個待發(fā)信號對于處理器來講都可以作為中斷進(jìn)行編程,或者通過GPIO 端口傳送給微處理器。nRF24E1芯片可以在世界公用的ISM (工業(yè)、科學(xué)和醫(yī)學(xué))頻段2. 4 ~ 2. 5GHz內(nèi)實現(xiàn)無線通訊。其收發(fā)部分包含有分頻器、放大器、調(diào)節(jié)器和兩個收發(fā)單元,輸出能量、頻段和其它射頻參數(shù)可通過射頻寄存器方便地編程調(diào)節(jié)。在發(fā)送模式下,電流消耗只有10. 5mA; 在接收模式下,電流消耗也只有18mA, 所以功耗相當(dāng)?shù)汀?/p>
2 無線耳麥的硬件結(jié)構(gòu)設(shè)計
無線耳麥主要由插頭部分和耳麥部分組成。插頭部分主要由兩個插頭和nRF24E 1組成。這兩個插頭,分別是麥克風(fēng)插頭和耳機插頭,它們分別插在電腦的麥克風(fēng)插孔和耳機插孔或家用電視的耳機插孔; 耳麥部分主要由麥克風(fēng)、耳機和nRF24E1組成。其硬件結(jié)構(gòu)框圖如圖1所示。無線耳麥通過無線語音收發(fā)芯片nRF24E1實現(xiàn)語音的雙向通信。
無線耳麥可以把人說話的聲音經(jīng)麥克風(fēng)送進(jìn)電腦;也可以把電腦或者電視的聲音送到無線耳麥的耳機里。無論是把語音送到電腦或者電視里,還是把語音送到耳機里,單向語音傳送的工作原理是一致的。
圖1 無線耳麥的硬件結(jié)構(gòu)框圖
nRF24E1芯片內(nèi)嵌有9通道的10位ADC( Analog to D ig ital Converter, 模數(shù)轉(zhuǎn)換器) , 它的采樣頻每個RF(R adio Frequency, 射頻)數(shù)據(jù)包含有24個字節(jié)或3m s的音頻采樣信號。
無線耳麥把人聲送進(jìn)電腦或者電視的發(fā)送和接收過程如圖2所示:
在發(fā)送端,ADC 對麥克風(fēng)送過來的模擬音頻信號進(jìn)行A /D轉(zhuǎn)換; 采集到的數(shù)字音頻信號,在不夠一個RF數(shù)據(jù)包之前,存儲在微控制器8051內(nèi)開辟的發(fā)送緩沖區(qū)( TxBu f) 中; 采樣數(shù)據(jù)滿包后,8051一邊存儲下一個數(shù)據(jù)包,一邊把已滿的數(shù)據(jù)包轉(zhuǎn)移到RF前端nRF2401, 經(jīng)nRF2401把數(shù)據(jù)包發(fā)射出去。
發(fā)送端的電路圖3 如圖所示。在麥克風(fēng)和nRF2401的ADC模塊之間,需要有前置濾波放大電路。它對麥克風(fēng)拾到的模擬音頻信號進(jìn)行濾波放大。放大后的模擬音頻信號被送到ADC中。
圖2 單向的語音發(fā)送及接收過程
圖3 語音的發(fā)送電路圖
在接收端,當(dāng)RF前端nRF2401收到1個有效的數(shù)據(jù)包,并且微控制器收到1個RF接收中斷的時候,接收到的數(shù)據(jù)包中的有效數(shù)據(jù)部分可用RF前端的FIFO 分離出來; 然后,把分離出的有效數(shù)據(jù)部分存儲到8051內(nèi)的接收緩沖區(qū)( RxBuf); 存在接收緩沖區(qū)的語音信號以PWM 信號的形式輸出;PWM輸出通過8位PWM 引擎來驅(qū)動,不需要微控制器分擔(dān)處理任務(wù); 最后語音信號經(jīng)PWM 信號送出去。
接收端的電路圖如4圖所示。nRF24E1芯片提供一個PWM輸出口。nRF24E1的PWM 輸出信號,通過一級放大,就可以得到所需的音頻模擬信號。
圖4 語音的接收電路圖
3 系統(tǒng)軟件設(shè)計
無線耳麥的功能是實現(xiàn)語音的雙向通信。它的兩個部分: 插頭部分和耳麥部分的工作流程基本是一致的。其工作流程如下:
1. 系統(tǒng)上電,打開系統(tǒng);2. 進(jìn)行初始化。對8051的定時器time2、PWM輸出端口、ADC 轉(zhuǎn)換器、RADIO、SPI接口和無線收發(fā)模塊nRF2401進(jìn)行初始化;3. 判斷是否要發(fā)送語音信號,如果有則發(fā)送,然后進(jìn)入步驟4;4. 如果沒有語音發(fā)送,則判斷是否要接收語音信號。如果有,則接收,然后進(jìn)行步驟3;5. 如果沒有語音接收,則重新進(jìn)行步驟3。
其相應(yīng)的流程圖如5圖所示:
圖5 插頭部分和耳麥部分的工作流程圖
初始化主要是對定時器time2、PWM、ADC、RADIO、SPI、nRF2401進(jìn)行初始化。其中,定時器t ime2主要是用于產(chǎn)生定時中斷觸發(fā)。在本系統(tǒng)中,t ime2每隔125us, 產(chǎn)生一個中斷,從而使系統(tǒng)對麥克風(fēng)輸出的模擬音頻信號進(jìn)行數(shù)字采樣,其采樣頻率是8KH z. 對t ime2 的初始化,主要是讓t ime2 能正常的工作,并且每隔125us就溢出,從而產(chǎn)生中斷;nRF24E1芯片提供一個PWM輸出口,PWM 的輸出是一系列的數(shù)字信號。在PWM 的輸出端加上一個低通濾波器,再進(jìn)行一級放大,得到所需的模擬音頻信號,隨后再把得到的模擬音頻信號送到耳機里。對PWM 初始化,主要是使P0. 7端口具有PWM輸出功能,并確定輸出是8b i,t 同時初始化PWMDUTY寄存器; ADC主要用來對麥克風(fēng)送來的模擬語音信號進(jìn)行模數(shù)轉(zhuǎn)換。對ADC 的初始化,主要是確定8b it量化,同時確定把麥克風(fēng)送來的模擬語音信號接到9個通道的Channe l 1 通道; 對RADIO的初始化,主要是讓nRF2401上電開始工作; 對SPI的初始化,主要是讓其跟nRF2401連接,從而實現(xiàn)單片機8051與nRF2401的通信; 對nRF2401的初始化,主要是來設(shè)置無線收發(fā)模塊nRF2401的工作頻率、晶振的始終頻率、nRF2401的輸出功率、通道1的地址、使用通道1收發(fā)數(shù)據(jù)的數(shù)據(jù)大小、以及通道2的地址和使用通道2收發(fā)數(shù)據(jù)的數(shù)據(jù)大小。
4 結(jié)束語
本設(shè)計是基于無線語音收發(fā)芯片nRF24E1 的無線耳麥。它主要應(yīng)用于家用電視和家用電腦。當(dāng)然,也可以實現(xiàn)其他的附加功能。不用插頭部分,多個耳麥部分可以構(gòu)成一個小型的無線通信網(wǎng)絡(luò),可以實現(xiàn)多人的短距離無線語音通訊。
與其他同類產(chǎn)品相比,該設(shè)計具有結(jié)構(gòu)簡單、抗干擾能力強、保密性好、功耗低、成本較低等優(yōu)點。因此本設(shè)計有著良好的市場前景和發(fā)展前景。