當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]一、藍(lán)牙模塊XLBT232‐\D01介紹(外部設(shè)備藍(lán)牙)1.1、藍(lán)牙模塊簡(jiǎn)介XLBT232-D0101藍(lán)牙模塊采用CSR BlueCore 芯片,配置6-8Mbit 的軟件存儲(chǔ)空間,支持AT 指令,用戶可根據(jù)需要更改SPP 角色(主、從模式)以及串口波特率

一、藍(lán)牙模塊XLBT232‐D01介紹(外部設(shè)備藍(lán)牙)

1.1、藍(lán)牙模塊簡(jiǎn)介

XLBT232-D0101藍(lán)牙模塊采用CSR BlueCore 芯片,配置6-8Mbit 的軟件存儲(chǔ)空間,
支持AT 指令,用戶可根據(jù)需要更改SPP 角色(主、從模式)以及串口波特率、
設(shè)備名稱、配對(duì)密碼等參數(shù),使用靈活。

1.2、模塊功能介紹

1.2.1、特性

藍(lán)牙協(xié)議:Bluetooth Specification V2.1+EDR、V2.0+EDR、V2.1、V2.0 V1.2

? 工作頻率:2.4GHz ISM band

? 調(diào)制方式:GFSK(Gaussian Frequency Shift Keying)

? 發(fā)射 率:≤4dBm, Class 2

? 靈 敏 度:≤-84dBm at 0.1% BER

? 傳輸速率:Asynchronous: 2.1Mbps(Max) / 160 kbpsSynchronous: 1Mbps/1Mbps

? 安全特性:Authentication and encryption

? 支持服務(wù):Bluetooth SPP(主模式& 從模式)

? 供電電源:+3.3VDC 50mA

? 工作溫度:-5 ~ +65 Centigrade

? 外觀尺寸:26.9mm x 13mm x 2.2 mm

1.2.2、模塊接線原理圖

PS:當(dāng)然也能用USB轉(zhuǎn)TTL模塊進(jìn)行連接在電腦上調(diào)試,畢竟大多數(shù)筆記本已經(jīng)沒有串口啦!

1.3、使用說明

[圖:藍(lán)牙模塊]

>_<"KEY為輸入管腳,短按控制,或者輸入約100ms 的高電平單次脈沖,可以
實(shí)現(xiàn)以下功能:

模塊設(shè)置為SPP 主機(jī)模式時(shí):

    未連接狀態(tài)時(shí):清除配對(duì)信息(若存在配對(duì)設(shè)備信息)

    已連接狀態(tài)時(shí):主動(dòng)發(fā)起斷開連接,延時(shí)150ms 后重啟,重新搜索
  連接從設(shè)備; 在斷開連接時(shí):重新搜索連接從設(shè)備。

模塊設(shè)置為SPP 從機(jī)時(shí):

    在已連接狀態(tài)時(shí):主動(dòng)發(fā)起斷開連接,延時(shí)150ms 后重啟,重新進(jìn)入被搜
索狀態(tài),等待主機(jī)配對(duì)和連接

    在斷開連接時(shí):延時(shí)150ms 后重啟,重新進(jìn)入被搜索狀態(tài),等待主機(jī)配對(duì)
和連接。

>_<"顯示模塊當(dāng)前工作狀態(tài):

待機(jī)狀態(tài)慢閃——重復(fù)2s 脈沖;

連接狀態(tài)長(zhǎng)亮——高電平。

1.4、AT指令集

藍(lán)牙模塊出廠默認(rèn)的串口配置為:波特率9600,無校驗(yàn),數(shù)據(jù)位8,停止位1。
PS:接下來說明以上位機(jī)為電腦,模塊參數(shù)為出廠設(shè)置時(shí)進(jìn)行配置說明。
>_<"將模塊通過USB電平轉(zhuǎn)換板連接到電腦USB口(USB轉(zhuǎn)TTL),使用串口調(diào)試助手,按
照 9600,N,8,1 進(jìn)行配置,打開串口后,發(fā)送 AT(無rn),若返回 OK,說明配置
成功。
PS:設(shè)置 AT 指令必須在藍(lán)牙模塊未連接或斷開 SPP 鏈接時(shí)才可以(上電或配對(duì)
后都可以,如果連接 SPP,串口輸入的數(shù)據(jù)將會(huì)直接發(fā)送到遠(yuǎn)端藍(lán)牙設(shè)備串口)

1.4.1、測(cè)試指令:

1.4.2、查詢?cè)O(shè)置波特率指令:

1.4.3、查詢?cè)O(shè)置設(shè)備名稱指令:

1.4.4、恢復(fù)默認(rèn)設(shè)置指令:

1.4.5、模塊復(fù)位重啟指令:

1.4.6、查詢?cè)O(shè)置主從模式:

1.4.7、查詢?cè)O(shè)置配對(duì)密碼:

1.4.8、查詢?cè)O(shè)置是否需要密碼鑒權(quán):

PS:為方便使用,默認(rèn)為不用密碼鑒權(quán)連接,搜索到藍(lán)牙串口之后,直接連接
可。有安全考慮的客戶請(qǐng)選擇需要密碼鑒權(quán)。
PS:此指令只有在從設(shè)備時(shí)才有效;主設(shè)備時(shí)不接受此指令,發(fā)送此指令沒
有回復(fù),也不執(zhí)行

1.4.9、清除主設(shè)備配對(duì)信息指令:

PS:此指令只有在主設(shè)備時(shí)才有效;從設(shè)備時(shí)不接受此指令,發(fā)送此指令
沒有回復(fù),也不執(zhí)行。

1.4.10、搜索并連接新的藍(lán)牙串口從設(shè)備(*)指令:

PS:此指令只有在主設(shè)備時(shí)才有效;從設(shè)備時(shí)不接受此指令,發(fā)送此指令沒
有回復(fù),也不執(zhí)行。

1.4.11、連接最后一次連接的藍(lán)牙串口從設(shè)備(*)指令:

PS:此指令只有在主設(shè)備時(shí)才有效;從設(shè)備時(shí)不接受此指令,發(fā)送此指令沒
有回復(fù),也不執(zhí)行。

1.4.12、連接指定藍(lán)牙地址的從設(shè)備(*)指令:

PS:此指令只有在主設(shè)備時(shí)才有效;從設(shè)備時(shí)不接受此指令,發(fā)送此指令沒
有回復(fù),也不執(zhí)行。

1.4.13、查詢、設(shè)置軟件版本指令:

1.4.14、系統(tǒng)幫助指令:

1.4.15、查詢本機(jī)MAC 地址指令:

>_<:1:所有參數(shù)設(shè)置后存儲(chǔ)在模塊內(nèi),下次啟動(dòng)時(shí)無需再次設(shè)置
2:AT 指令后標(biāo)注*號(hào)的,表示目前未應(yīng)用的AT 指令

二、藍(lán)牙模塊配置與筆記本電腦相連

2.1.1、藍(lán)牙初始化配置:

將藍(lán)牙模塊通過TTL轉(zhuǎn)USB模塊連接到筆記本,打開串口助手,通過上述AT指令設(shè)置為從設(shè)備,波特率為9600,然后重啟

[圖:USB轉(zhuǎn)TTL模塊]

[圖:串口助手]

2.1.2、電腦為主設(shè)備搜索建立連接:

點(diǎn)擊筆記本藍(lán)牙標(biāo)志的小圖標(biāo),添加藍(lán)牙設(shè)備:

然后要等一會(huì),筆記本正在裝驅(qū)動(dòng):

然后右擊藍(lán)牙圖標(biāo),查看藍(lán)牙設(shè)備,可見我們的設(shè)備已經(jīng)被電腦發(fā)現(xiàn)并添加:

查看該設(shè)備屬性,此時(shí)筆記本為該設(shè)備提供一個(gè)串口,就是筆記本藍(lán)牙和設(shè)備藍(lán)牙通信的通道,要記住這個(gè)一會(huì)編程的時(shí)候會(huì)用到:

PS:這個(gè)COM15也可以在設(shè)備管理器中修改為其他通道

三、C#編程使筆記本藍(lán)牙和外部設(shè)備藍(lán)牙通信:

其實(shí)配對(duì)以后,藍(lán)牙就被模擬成了一個(gè)端口,我們可以用最簡(jiǎn)單的端口通訊來收發(fā)信息。首先,在每次啟動(dòng)時(shí),需要連接端口:

[FORM初始化時(shí)獲取所有的COM口,并加入下拉列表]

1 public Form1()

2 {

3 InitializeComponent();

4

5 //Get all port list for selection

6 //獲得所有的端口列表,并顯示在列表內(nèi)

7 PortList.Items.Clear();

8 string[] Ports = SerialPort.GetPortNames();

9

10 for (int i = 0; i < Ports.Length; i++)

11 {

12 string s = Ports[i].ToUpper();

13 Regex reg = new Regex("[^COM\d]", RegexOptions.IgnoreCase | RegexOptions.Multiline);

14 s = reg.Replace(s, "");

15

16 PortList.Items.Add(s);

17 }

18 if (Ports.Length > 1) PortList.SelectedIndex = 1;

19 }


[連接按鈕事件:選中l(wèi)ist中的被選中的COM口進(jìn)行連接,如果連接成功就在狀態(tài)欄顯示藍(lán)牙連接成功]


1 private void ConnectButton_Click(object sender, EventArgs e)

2 {

3 if (!BluetoothConnection.IsOpen)

4 {

5 //Start

6 Status = "正在連接藍(lán)牙設(shè)備";

7 BluetoothConnection = new SerialPort();

8 ConnectButton.Enabled = false;

9 BluetoothConnection.PortName = PortList.SelectedItem.ToString();

10 BluetoothConnection.Open();

11 BluetoothConnection.ReadTimeout = 10000;

12 BluetoothConnection.DataReceived += new SerialDataReceivedEventHandler(BlueToothDataReceived);

13 Status = "藍(lán)牙連接成功";

14 }

15 }


[藍(lán)牙接收數(shù)據(jù)事件響應(yīng)函數(shù),在按鈕連接事件中聲明的該事件,用于響應(yīng)藍(lán)牙數(shù)據(jù)接收]



1 private void BlueToothDataReceived(object o, SerialDataReceivedEventArgs e)

2 {

3 //int length = BluetoothConnection.ReadByte();

4 Thread.Sleep(1000);

5 int length = 13;

6 BlueToothReceivedData = DateTime.Now.ToLongTimeString() + "rn";

7 BlueToothReceivedData += "收到字節(jié)數(shù):" + length + "rn";

8

9 byte[] data = new byte[length];

10 BluetoothConnection.Read(data,0,length);

11 for (int i = 0; i < length; i++)

12 {

13 BlueToothReceivedData += string.Format("data[{0}] = {1}rn", i, data[i]);

14 }

15 //receive close message

16 if (length == 3 && data[0] == 255 && data[1] == 255 && data[2] == 255)

17 {

18 //Stop

19 Status = "正在斷開藍(lán)牙設(shè)備";

20 BluetoothConnection.Close();

21 BluetoothConnection.Dispose();

22 BluetoothConnection = null;

23 ConnectButton.Enabled = true;

24 Status = "藍(lán)牙斷開成功";

25 }

26 }


這里第4行讓程序休息1是因?yàn)檠訒r(shí)等待從設(shè)備把數(shù)據(jù)發(fā)送完全。

這里為了方便我嚴(yán)格控制讓發(fā)送數(shù)據(jù)為13Byte。

從設(shè)備發(fā)送的13Byte數(shù)據(jù)送至緩沖區(qū),PC端C#程序通過read()函數(shù)將緩沖區(qū)數(shù)據(jù)接收到data中,下面是格式輸出一下數(shù)據(jù)。

[發(fā)送數(shù)據(jù)函數(shù)]



1 private void BlueToothDataSend(byte[] data)

2 {

3 //int length = data.Length;

4 //byte[] readData = new byte[length + 2];

5 //readData[0] = (byte)(length % 255);

6 //readData[1] = (byte)(length / 255);

7 //for (int i = 0; i < length; i++)

8 //{

9 // readData[i + 2] = data[i];

10 //}

11 //BluetoothConnection.Write(readData, 0, length + 2);

12 BluetoothConnection.Write(data, 0, 1);

13 //Status = "發(fā)送數(shù)據(jù)字節(jié)數(shù):" + length;

14 }


本來是將data[]數(shù)據(jù)發(fā)送出去,因?yàn)槲覐脑O(shè)備設(shè)置為只要有數(shù)據(jù)發(fā)送過來就做出響應(yīng)發(fā)送13Byte數(shù)據(jù),所以就直接將data的第一byte發(fā)送出去了。

[定時(shí)器函數(shù):用于刷新狀態(tài)欄,和接收數(shù)據(jù)顯示]


1 private void MonitorTimer_Tick(object sender, EventArgs e)

2 {

3 StatusMessage.Text = Status;

4

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉