摘 要: 設(shè)計(jì)了一種基于單片機(jī)的可以自動(dòng)關(guān)閉手機(jī)音樂播放器的耳機(jī)裝置。該裝置以STC12LE2052單片機(jī)為主控器,以三軸數(shù)字陀螺儀L3G4200D為位置檢測傳感器,通過檢測耳機(jī)使用者頭部的運(yùn)動(dòng)狀態(tài),由主控器判斷人是否進(jìn)入睡眠狀態(tài),如進(jìn)入睡眠狀態(tài)則向手機(jī)發(fā)送信號(hào),將音樂停止。
關(guān)鍵詞: 耳機(jī);L3G4200D;STC12LE2052
當(dāng)人戴上耳機(jī)聽音樂時(shí),某些時(shí)候,尤其是在晚上,會(huì)因?yàn)槔Ь脒M(jìn)入睡眠狀態(tài),而忘記關(guān)閉手機(jī)的音樂播放器,這樣不僅浪費(fèi)了手機(jī)的電量,還會(huì)影響人們的睡眠質(zhì)量,更加嚴(yán)重的是,如果使用者長時(shí)間甚至一整夜都沒有關(guān)閉音樂播放器,會(huì)對其聽力產(chǎn)生不良影響。
目前,國內(nèi)外普遍采用手機(jī)播放器的睡眠定時(shí)功能來避免這一情況的出現(xiàn),但是,這一方法存在一定缺陷:使用者可能會(huì)定時(shí)過短,即其還沒有進(jìn)入睡眠狀態(tài)音樂播放器就關(guān)閉了;也可能會(huì)定時(shí)過長,即其已經(jīng)進(jìn)入睡眠狀態(tài)很久音樂播放器才關(guān)閉。
針對這一問題,本文設(shè)計(jì)了一種基于單片機(jī)的智能耳機(jī),它通過檢測耳機(jī)使用者頭部的運(yùn)動(dòng)狀態(tài),來判別其是否進(jìn)入睡眠狀態(tài),當(dāng)處理器判定其進(jìn)入睡眠狀態(tài)后,會(huì)發(fā)送關(guān)閉手機(jī)音樂播放器的命令,將其關(guān)閉,這樣較好地解決了使用者不能準(zhǔn)確設(shè)定定時(shí)時(shí)間的問題。
1 系統(tǒng)設(shè)計(jì)和工作原理
本系統(tǒng)以單片機(jī)STC12LE2052為主控器,以三軸數(shù)字陀螺儀L3G4200D為位置檢測模塊,加以耳機(jī)控制電路模塊和電源模塊組成。該系統(tǒng)的工作原理如下:按下電源供電開關(guān),系統(tǒng)開始工作,利用三軸數(shù)字陀螺儀L3G4200D獲取耳機(jī)使用者頭部位置X、Y、Z三軸方向的角度變化信息,這些信息通過I2C總線傳送到單片機(jī)STC12LE2052上,由單片機(jī)對信息進(jìn)行處理。結(jié)合人的生理習(xí)慣:當(dāng)耳機(jī)使用者未進(jìn)入睡眠狀態(tài)時(shí),其頭部會(huì)在較短的時(shí)間內(nèi)運(yùn)動(dòng),且運(yùn)動(dòng)角度變化較大;一旦耳機(jī)使用者進(jìn)入或即將進(jìn)入睡眠狀態(tài),其頭部角度變化(正常睡眠呼吸時(shí)頭部的起伏)很小,且距下一次頭部較大角度移動(dòng)會(huì)相隔較長時(shí)間。因此,若在一定時(shí)間內(nèi),所檢測的耳機(jī)使用者頭部角度變化持續(xù)小于設(shè)置的某一微小睡眠閾值時(shí)[1],則單片機(jī)認(rèn)為耳機(jī)使用者已經(jīng)進(jìn)入了睡眠狀態(tài),此時(shí)單片機(jī)通過耳機(jī)控制電路模塊向手機(jī)發(fā)送關(guān)閉信號(hào),當(dāng)手機(jī)內(nèi)的耳機(jī)檢測電路檢測到來自耳機(jī)控制電路模塊的關(guān)閉信號(hào)后,手機(jī)的音樂播放器則暫停播放。系統(tǒng)結(jié)構(gòu)框圖如圖1所示。
2 硬件設(shè)計(jì)
2.1 位置檢測模塊
位置檢測模塊采用L3G4200D芯片。L3G4200D是意法半導(dǎo)體(ST)推出的一種采用一個(gè)感應(yīng)結(jié)構(gòu)檢測三條正交軸向運(yùn)動(dòng)的低功耗三軸數(shù)字陀螺儀,可以精確地檢測角速率。用戶可以設(shè)定量程,量程范圍從±250 dps~ ±2 000 dps[2],低量程數(shù)值適用于高精度慢速運(yùn)動(dòng)測量,而高量程則適用于測量超快速的運(yùn)動(dòng);它體積很小,僅為4 mm×4 mm×1 mm;具有I2C/SPI數(shù)字輸出口,提供一個(gè)16位數(shù)據(jù)輸出;工作電壓2.4 V~3.6 V;并具備省電睡眠模式。
位置檢測模塊電路如圖2所示,L3G4200D的串行時(shí)鐘(SCL)口和串行數(shù)據(jù)(SDA)口與單片機(jī)連接;CS口控制I2C/SPI模式選擇(1:啟用I2C模式;0:啟用SPI模式),本系統(tǒng)中CS口通過上拉電阻接VCC,啟用I2C模式;SDO口可以修改L3G4200D作為I2C從站時(shí)的地址(當(dāng)SDO接VCC時(shí),其地址為1101001b;當(dāng)SDO接GND時(shí),其地址為1101000b);PLL口外接濾波電路(C1,C2,R7的典型值分別為470 nF,10 nF,10 kΩ)。
2.2 STC12LE2052簡介
STC12LE2052單片機(jī)是高速、低功耗的新一代兼容8051內(nèi)核單片機(jī)。其共20個(gè)引腳,15個(gè)通用I/O口;內(nèi)部集成MAX810專用復(fù)位電路;具有2路PWM/PCA(可編程計(jì)數(shù)陣列);用戶可用程序空間為2 KB;片上集成256 B RAM;支持ISP(在系統(tǒng)可編程)/IPA(在應(yīng)用可編程);工作電壓2.4~3.8 V[3];具有DIP/SOP/TSSOP(超小封裝6.4 mm×6.4 mm)3種封裝形式[4]。
本系統(tǒng)以STC12LE2052單片機(jī)為主控芯片,系統(tǒng)主控電路如圖3所示。單片機(jī)的P1.0口和P1.1口分別與L3G4200D的SDA口和SCL口相連,通過軟件模擬I2C總線進(jìn)行兩芯片間的通信;XTAL1口和XTAL2口外接晶振電路;RST口外接復(fù)位電路;P1.2口做命令輸出口,連接到耳機(jī)控制電路模塊。
2.3 耳機(jī)控制電路模塊
耳機(jī)控制電路模塊的電路圖如圖3所示。在該電路中采用國際標(biāo)準(zhǔn)的3.5 mm四段式手機(jī)耳機(jī)插頭,其共有四條引線,依次是:L左聲道、R右聲道、控制端和公共地,控制端和公共地回路間并接有按鍵和麥克,按鍵控制著手機(jī)音樂播放器的開與關(guān)和來電的接聽與掛斷(耳機(jī)進(jìn)入音樂模式后,當(dāng)手機(jī)內(nèi)的耳機(jī)檢測電路檢測到有按鍵按下時(shí),會(huì)將音樂暫停;耳機(jī)進(jìn)入通話模式后,當(dāng)手機(jī)內(nèi)的耳機(jī)檢測電路檢測到有按鍵按下時(shí),會(huì)將MIC通路激活打開使其正常工作)。本系統(tǒng)中增加了一個(gè)與按鍵并聯(lián)的三極管開關(guān),其發(fā)射極與控制端相連,集電極與公共地相連,基極與單片機(jī)的P1.2口相聯(lián),由單片機(jī)控制三極管開關(guān)的開啟與關(guān)閉,從而達(dá)到代替人工手動(dòng)控制按鍵的目的。
3 系統(tǒng)軟件設(shè)計(jì)
3.1 初始化
初始化函數(shù)主要實(shí)現(xiàn)對L3G4200D工作模式的設(shè)置,其主要函數(shù)參考以下語句:
Single_WriteL3G4200D(CTRL_REG1,0x0f);
//普通模式,X、Y、Z啟用
Single_WriteL3G4200D(CTRL_REG2,0x00);
//選擇高通濾波模式和高通截止頻率
Single_WriteL3G4200D(CTRL_REG3,0x08);
//DRDY/INT2數(shù)據(jù)準(zhǔn)備
Single_WriteL3G4200D(CTRL_REG4,0x00);
//選擇量程,(00:250 dps)
Single_WriteL3G4200D(CTRL_REG5,0x00);
//高通濾波使能(默認(rèn)全0)
3.2 程序流程
系統(tǒng)程序流程圖如圖6所示,程序初始化后,由單片機(jī)依次讀取L3G4200D所檢測的X、Y、Z各軸的坐標(biāo)位置,每隔0.3 s讀取一次,讀取10次后,計(jì)算3 s內(nèi)X、Y、Z各軸的最大位移量。如果X、Y、Z各軸3 s內(nèi)的最大位移量全部小于所設(shè)定的睡眠閾值,則計(jì)數(shù)值加1;如果X、Y、Z任意一軸3 s內(nèi)的最大位移量大于所設(shè)定的睡眠閾值,則計(jì)數(shù)清零。當(dāng)計(jì)數(shù)達(dá)80(240 s)時(shí),認(rèn)為耳機(jī)使用者已經(jīng)進(jìn)入睡眠狀態(tài),此時(shí)由單片機(jī)的P1.2口發(fā)送瞬時(shí)高電平,將三極管開關(guān)瞬時(shí)開啟,從而向手機(jī)發(fā)送關(guān)閉音樂播放器的信號(hào)。最后,為了節(jié)約電量,單片機(jī)和L3G4200D進(jìn)入睡眠狀態(tài)。
本設(shè)計(jì)為使用者提供了一種通過監(jiān)測人是否進(jìn)入睡眠狀態(tài)來決定是否自動(dòng)關(guān)閉手機(jī)音樂播放器的耳機(jī)裝置。該裝置成本低,電路較為簡單,具有較為實(shí)用的功能,但還存在一些不足:對于睡眠閾值的設(shè)定以及計(jì)數(shù)到多長時(shí)間認(rèn)為人進(jìn)入睡眠狀態(tài)等問題,還需進(jìn)一步結(jié)合醫(yī)學(xué)和大量臨床實(shí)驗(yàn)來確定;由于不同品牌,不同型號(hào)手機(jī)之間的耳機(jī)檢測電路存在一些差異,可能會(huì)導(dǎo)致手機(jī)不能識(shí)別關(guān)閉音樂播放器的信號(hào)。
參考文獻(xiàn)
[1] 冒曉莉,楊博,楊靜秋,等.基于MSP430單片機(jī)的節(jié)能型數(shù)字調(diào)頻發(fā)射機(jī)[J].電子技術(shù)應(yīng)用,2013,39(5):138-140.
[2] 意法半導(dǎo)體公司.L3G4200D芯片手冊[Z].
[3] 呂高.基于STC12LE2052AD和nRF2401模塊的無線通訊設(shè)計(jì)[J].電力學(xué)報(bào),2007,22(4):488-490.
[4] 宏晶公司.STC12LE2052AD芯片手冊[Z].