基于BC03藍(lán)牙模組的無(wú)線有源音箱設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:給出了一種采用藍(lán)牙模組的無(wú)線通信系統(tǒng)。將CSR的BC03藍(lán)牙模組與TDA2030A OCL功放置于音箱中,通過(guò)C8051F020單片機(jī)UART0完成與藍(lán)牙模組通信和控制,實(shí)現(xiàn)藍(lán)牙手機(jī)或者PC電腦與BC03藍(lán)牙模組的互連,完成HFP和A2DP功能,采用4×5鍵盤完成數(shù)據(jù)和音頻控制指令的輸入,并通過(guò)TS1602 LCD完成基本的數(shù)據(jù)和控制指令顯示等。實(shí)驗(yàn)結(jié)果表明:本系統(tǒng)能夠成功實(shí)現(xiàn)藍(lán)牙手機(jī)或者PC設(shè)備與BC03藍(lán)牙模組的互連,完成藍(lán)牙模組的HFP和A2DP功能,音頻最大輸出功率可以達(dá)到14 W(RL=4 Ω),可以直接驅(qū)動(dòng)4 Ω或者8 Ω的音箱負(fù)載。
關(guān)鍵詞:BC03藍(lán)牙模組;HFP;A2DP;音頻控制
0 引言
藍(lán)牙是一種支持設(shè)備短距離通信(一般10 m內(nèi))的無(wú)線電技術(shù),能在包括移動(dòng)電話、PDA、無(wú)線耳機(jī)、筆記本電腦、相關(guān)外設(shè)等眾多設(shè)備之間進(jìn)行無(wú)線信息交換。利用藍(lán)牙技術(shù),能夠有效地簡(jiǎn)化移動(dòng)通信終端設(shè)備之間的通信,使數(shù)據(jù)傳輸變得更加迅速高效。藍(lán)牙采用分散式網(wǎng)絡(luò)結(jié)構(gòu)以及快跳頻和短包技術(shù),支持點(diǎn)對(duì)點(diǎn)及點(diǎn)對(duì)多點(diǎn)通信,工作在全球通用的2.4 GHz ISM(即工業(yè)、科學(xué)、醫(yī)學(xué))頻段,采用時(shí)分雙工傳輸方案實(shí)現(xiàn)全雙工傳輸,數(shù)據(jù)速率為1 Mb/s。藍(lán)牙技術(shù)實(shí)質(zhì)是一種短距離無(wú)線通信標(biāo)準(zhǔn)。
選擇C8051F020單片機(jī)作為該無(wú)線通信系統(tǒng)的處理和控制器,BC03MM藍(lán)牙模塊作為該無(wú)線通信系統(tǒng)的收發(fā)模塊,通過(guò)串口通信使單片機(jī)和藍(lán)牙終端設(shè)備相互連接,通過(guò)編寫相關(guān)控制程序,實(shí)現(xiàn)鍵盤信號(hào)通過(guò)單片機(jī)模塊處理轉(zhuǎn)化后給藍(lán)牙模塊發(fā)送相關(guān)命令,從而控制對(duì)應(yīng)的藍(lán)牙終端(手機(jī))進(jìn)行播放音樂(lè),撥打電話等功能。采用單片機(jī)作為藍(lán)牙模塊的命令控制和數(shù)據(jù)顯示處理和控制器,具有電路結(jié)構(gòu)簡(jiǎn)單、控制靈活、成本低廉、可移植性等優(yōu)點(diǎn)。
1 整體方案設(shè)計(jì)
方案的主要任務(wù)是通過(guò)C8051F020單片機(jī)UART0完成與藍(lán)牙模組通信和控制,實(shí)現(xiàn)藍(lán)牙手機(jī)或者PC電腦與BC03藍(lán)牙模組的互連,完成免提(Hand Free Profile,HFP)和音樂(lè)播放(Advanced Audio Distribution Profile,A2DP)功能。該系統(tǒng)由鍵盤、單片機(jī)、LCD顯示器、固化了電纜通信協(xié)議(RFCOMM)的BC03MM藍(lán)牙模塊組成,其中鍵盤用來(lái)輸入控制信號(hào),LCD用來(lái)顯示通信數(shù)據(jù)從而方便系統(tǒng)操作,單片機(jī)用來(lái)控制系統(tǒng)的運(yùn)作,接收鍵盤的命令信號(hào)并傳輸給藍(lán)牙模塊,BC03藍(lán)牙模塊是用來(lái)連接外部藍(lán)牙終端(手機(jī)或者PC電腦),并通過(guò)發(fā)送命令控制其連接的終端實(shí)現(xiàn)系統(tǒng)功能。
2 硬件電路設(shè)計(jì)
2.1 硬件總體設(shè)計(jì)
整個(gè)系統(tǒng)采用一片C8051F020單片機(jī)和CSRBC03藍(lán)牙模組來(lái)完成系統(tǒng)設(shè)計(jì)。其中UART0被配置在C8051F020的P0.0(TXD)和P0.1(RXD),通過(guò)串接1 kΩ電阻與BC03模組串口連接。由于C8051F020和BC03藍(lán)牙模組均為3.3 V系統(tǒng),所以不需要增加額外的電平轉(zhuǎn)換串口通信電路,簡(jiǎn)化了系統(tǒng)設(shè)計(jì)。C8051F020的端口P3控制LCD1602的命令和數(shù)據(jù)顯示,端口P2完成鍵盤信息的輸入。對(duì)于BC03MM藍(lán)牙模塊部分,通過(guò)駐極體傳聲器完成語(yǔ)音信號(hào)的輸入,藍(lán)牙模塊的音頻信號(hào)輸出則通過(guò)TDA2030A以驅(qū)動(dòng)負(fù)載。系統(tǒng)總體電路設(shè)計(jì)框圖如圖1所示。
2.2 藍(lán)牙模塊接線設(shè)計(jì)
BC03MM藍(lán)牙模塊接線部分主要涉及到三個(gè)部分:
(1)語(yǔ)音信號(hào)的輸入部分。語(yǔ)音信號(hào)輸入由駐極體傳聲器和濾波處理電路完成,設(shè)置為單端輸入方式。
(2)16位立體聲音頻解碼部分的SPK立體聲輸出。對(duì)于藍(lán)牙模塊的兩路立體聲輸出,選用TI公司的立體聲音頻功率放大芯片TPA6112進(jìn)行前置放大,增益可以自行設(shè)定。
(3)與MCU的連接。
2.3 MCU控制和通信電路
MCU控制和通信電路包括:串行數(shù)據(jù)通信電路、控制信號(hào)輸入和通信數(shù)據(jù)顯示三個(gè)部分。
C8051F020內(nèi)置增強(qiáng)型串口UART0和數(shù)字交叉開關(guān),通過(guò)配置交叉開關(guān)控制寄存器XBR0和XBR2,將UART0的TXD和RXD數(shù)字信號(hào)配置在端口I/O引腳。本文中UART0被配置在C8051F020的P0.0(TXD)和P0.1(RXD),通過(guò)串接1 kΩ電阻與BC03MM模組的UART(RX和TX)連接,完成串行數(shù)據(jù)的接收和發(fā)送。
控制信號(hào)輸入部分主要由C8051F020 I/O端口P2控制矩陣式4×5鍵盤完成。使用矩陣式鍵盤,具有占用I/O資源少,程序編制簡(jiǎn)單等特點(diǎn)。系統(tǒng)需要實(shí)現(xiàn)HFP和A2DP功能,按鍵功能如圖2所示。SHIFT為功能切換按鍵,在HFP和A2DP之間進(jìn)行切換。按鍵0~3為多功能按鍵,在SHIFT鍵沒(méi)有按下時(shí),表示撥打電話的數(shù)字按鍵0~3或者接聽來(lái)電、掛斷電話、拒接來(lái)電和重新?lián)芴?hào)功能;在SHIFT鍵按下時(shí),依次表示音樂(lè)暫停/開始、連接藍(lán)牙音樂(lè)、下一曲和上一曲功能。按鍵D,E,F(xiàn)和G為系統(tǒng)預(yù)留功能擴(kuò)展按鍵,按下無(wú)作用。
顯示部分通過(guò)C8051F020的端口P3作為與LCD1602通信的8位數(shù)據(jù)線,主要完成通信數(shù)據(jù)和狀態(tài)信息的顯示。
2.4 音頻放大和系統(tǒng)供電
采用CONTEK公司的音頻功率放大器TDA2030A,構(gòu)成OCL接法,最大輸出功率可達(dá)14 W。對(duì)于藍(lán)牙模塊輸出的音頻信號(hào)SPKR+和SPKL+分別進(jìn)入兩片TDA2030A進(jìn)行功率放大以驅(qū)動(dòng)RL=4 Ω的喇叭。
系統(tǒng)正常工作需要±12 V,+5 V和+3.3 V電壓供電。本文將市電220 V/50 Hz經(jīng)過(guò)2×12 V/40 W變壓器降壓變換后,經(jīng)過(guò)電橋整流和濾波后產(chǎn)生±12 V,直接供電給TDA2030A。整流濾波后的電壓經(jīng)過(guò)LM7805穩(wěn)壓芯片,輸出穩(wěn)定+5 V給LCD1602供電,將LM7805輸出電壓再經(jīng)過(guò)ASM1117-3.3V供電給單片機(jī)系統(tǒng)和藍(lán)牙模塊,完成系統(tǒng)電源供給。
3 軟件設(shè)計(jì)
系統(tǒng)軟件主要包括三大部分:藍(lán)牙協(xié)議棧的搭建、藍(lán)牙通信軟件設(shè)計(jì)和單片機(jī)控制部分軟件設(shè)計(jì)。
軟件設(shè)計(jì)的主要目的是提供一個(gè)高效的命令,免去不同藍(lán)牙設(shè)備間不斷變化的標(biāo)準(zhǔn)和復(fù)雜的藍(lán)牙功能。該軟件接口為串行接口,串行接口用于兩個(gè)處理器之間的通信,傳輸速率為19 200 b/s,8,N,1。
藍(lán)牙技術(shù)是一個(gè)開放性系統(tǒng)(OSI),其主要目的就是使符合該規(guī)范的各種設(shè)備能互通,這就要求本地設(shè)備和遠(yuǎn)端設(shè)備使用相同的協(xié)議,當(dāng)然不同的應(yīng)用,其使用的協(xié)議棧也可能不同,但是他們都必須使用藍(lán)牙技術(shù)協(xié)議規(guī)范中的物理層和數(shù)據(jù)鏈路層。完整的藍(lán)牙協(xié)議棧主要涉及基帶協(xié)議(Basebaria)、連接管理協(xié)議(Link Manager Protocol,LMP)、邏輯鏈路控制和適配協(xié)議(Logmal LinkControl and Adaptation Protocol,L2CAP)、服務(wù)發(fā)現(xiàn)協(xié)議(Service Discovery Protocol,SDP)、電纜替代協(xié)議(RFCOMM)、電話控制協(xié)議(Telephony Control Pro-tocols,TCS)、點(diǎn)對(duì)點(diǎn)協(xié)議(PPP)、對(duì)象交換協(xié)議(OBEX)、無(wú)線應(yīng)用協(xié)議(WAP)、藍(lán)牙音頻傳輸模型協(xié)議(A2DP)等協(xié)議。本文主要涉及基帶協(xié)議(Baseband),LMP,L2CAP,SDP,RFCOMM,TCS,PPP,A2DP等協(xié)議,如圖3所示。
由于系統(tǒng)采用固化了電纜通信協(xié)議(RFCOMM)和其他底層協(xié)議棧的CSR BC03藍(lán)牙模塊,模塊只給出與單片機(jī)通信部分的簡(jiǎn)單接口指令。當(dāng)模組收到由C8051F020控制單元送來(lái)的狀態(tài)詢問(wèn)指令(空白+?),模組會(huì)經(jīng)由TX腳將參數(shù)字符并加結(jié)束字符“0x0D0x0A”傳送到主機(jī),該命令當(dāng)C8051F020控制單元經(jīng)由TXD設(shè)定指令給BC03模組,模組將同時(shí)被命令去執(zhí)行相應(yīng)的動(dòng)作。指令有數(shù)個(gè)字符,第一個(gè)是為“空格”(ASCII=20H),其余則為指令字符,同時(shí)BC03模組將有一個(gè)反饋?zhàn)址?00 ms內(nèi)經(jīng)過(guò)BC03MMUART送到控制單元,表示系統(tǒng)目前的執(zhí)行情況和藍(lán)牙系統(tǒng)當(dāng)前的狀態(tài)。
C8051F020單片機(jī)控制部分軟件主要完成以下幾個(gè)功能:對(duì)BC03藍(lán)牙模組指令控制,對(duì)LCD1602系統(tǒng)狀態(tài)顯示的指令控制和按鍵輸入指令的譯碼等功能。
基于C8051F020單片機(jī)控制BC03MM藍(lán)牙模組系統(tǒng)控制流程圖如圖4所示。
4 結(jié)語(yǔ)
對(duì)基于C8051F020單片機(jī)和BC03MM藍(lán)牙模組構(gòu)建的系統(tǒng)進(jìn)行功能驗(yàn)證,系統(tǒng)能夠?qū)崿F(xiàn)藍(lán)牙手機(jī)或者PC設(shè)備與BC03藍(lán)牙模組的互連,完成藍(lán)牙模組的HFP和A2DP功能,音頻最大輸出功率可以達(dá)到Po=14 W(RL=4 Ω),可以直接驅(qū)動(dòng)4 Ω或者8 Ω的音箱負(fù)載,并且人機(jī)界面友好,操作簡(jiǎn)單、價(jià)格低廉、可移植性好,方便用于商業(yè)用途。