藍(lán)牙通信在信息家電中的實(shí)現(xiàn)
3、進(jìn)入Bluetooth subsystem support選項(xiàng)中,選擇L2CAP protocol support、BNEP protocol support(Malticast filter support和Protocol filter support)這幾項(xiàng),這幾項(xiàng)的作用就是使內(nèi)核支持藍(lán)牙協(xié)議中的L2CAP和BNEP協(xié)議。然后進(jìn)入Bluetooth device drivers,選擇HCI USB driver。至此,就完成了內(nèi)核對于USB藍(lán)牙的支持。
4、下載bluez-libs-2.17.tar.gz藍(lán)牙庫和bluez-utils-2.17.tar.gz工具包,運(yùn)行tar zxvf命令解壓縮,然后運(yùn)行make和make install命令,這樣就能得到我們需要的libbluetooth.so、libbluetooth.so.1、libbluetooth.so.1.17這3個(gè)庫文件和hcid、hcitool、pand、hciconfig、sdpd、sdpdtool這6個(gè)進(jìn)程文件。
4家庭網(wǎng)關(guān)中藍(lán)牙無線通信的實(shí)現(xiàn)
整個(gè)通信過程的介紹:
1、USB藍(lán)牙的傳輸驅(qū)動(dòng)程序(drivers/bluetooth/hci_usb.c)將信息注冊到Linux USB核心。當(dāng)USB藍(lán)牙插入時(shí),主機(jī)控制器設(shè)備驅(qū)動(dòng)程序會(huì)枚舉它并給它分配地址,同時(shí)讀取設(shè)備描述符中所包含的設(shè)備信息。如果枚舉期間讀取的設(shè)備描述符與hci_usb驅(qū)動(dòng)程序注冊到Linux USB核心的信息相匹配,那么這個(gè)驅(qū)動(dòng)程序就能添加進(jìn)USB設(shè)備。
2、運(yùn)行hcid(HCI后臺(tái)進(jìn)程)、sdpd(服務(wù)發(fā)現(xiàn)協(xié)議后臺(tái)進(jìn)程)、hciconfig(檢查HCI接口并開啟藍(lán)牙設(shè)備)、hcitool(掃描藍(lán)牙設(shè)備的地址)這四個(gè)CRAMFS文件系統(tǒng)sbin目錄下的進(jìn)程文件,這幾個(gè)文件的執(zhí)行依賴于libbluetooth.so、libbluetooth.so.1、libbluetooth.so.1.17這三個(gè)藍(lán)牙庫文件。在S3C2410一側(cè)的藍(lán)牙設(shè)備能夠被發(fā)現(xiàn)并被成功分配唯一地址的基礎(chǔ)之上運(yùn)行pand --listen --role NAP,這樣將允許通過藍(lán)牙連接以太網(wǎng)。如圖2所示。
圖2
3、PC機(jī)上插入U(xiǎn)SB藍(lán)牙,運(yùn)行windows下藍(lán)牙的驅(qū)動(dòng)軟件BlueSoleil,掃描并發(fā)現(xiàn)藍(lán)牙設(shè)備之后,建立個(gè)人局域網(wǎng)。
4、在個(gè)人局域網(wǎng)建立的基礎(chǔ)之上,BNEP就可以將自己作為以太網(wǎng)設(shè)備注冊到Linux網(wǎng)絡(luò)層??梢酝ㄟ^命令ifconfig bnep0來改變藍(lán)牙接口IP地址。BNEP模塊和用戶模式pand后臺(tái)進(jìn)程實(shí)現(xiàn)了Bluetooth個(gè)人區(qū)域網(wǎng)(PAN)。將二個(gè)USB藍(lán)牙的IP地址修改為同一個(gè)網(wǎng)段后,就可以使用ping PC機(jī)的USB藍(lán)牙IP地址命令來實(shí)現(xiàn)模擬家庭網(wǎng)關(guān)和內(nèi)部設(shè)備間的無線通信,如圖3超級(jí)終端打印信息所示。
圖3
5、實(shí)驗(yàn)結(jié)果:由圖2和圖3可以看到在運(yùn)行了包含hcid、sdpd、hciconfig、hcitool四個(gè)進(jìn)程的文件bluetooth后,可看到S3C2410一側(cè)的USB藍(lán)牙的地址為00:0D:18:01:23:88,而后用ifconfig bnep0 192.168.0.2修改了它的局域網(wǎng)地址,最后用ping 192.168.0.18(PC機(jī)上的藍(lán)牙地址)即可實(shí)現(xiàn)雙方的數(shù)據(jù)收發(fā)。
評(píng)論