新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 一種基于藍牙與Android設備的控制系統(tǒng)設計

一種基于藍牙與Android設備的控制系統(tǒng)設計

作者: 時間:2014-07-29 來源:網(wǎng)絡 收藏

   應用程序需要使用功能, 必須在Manifest.xml 中要申請兩個權限:BLUETOOTH_ADMIN 和BLUETOOTH。具體格式如下:

本文引用地址:http://www.butianyuan.cn/article/256198.htm

  me="android.permission.BLUETOOTH"/>

  BLUETOOTH_ADMIN 權限允許 應用程序啟動發(fā)現(xiàn)設備或者進行功能的設置;BLUETOOTH 權限是Android 應用程序執(zhí)行通信必須具有的權限,例如接受連接和傳送數(shù)據(jù)。大多數(shù)應用程序都需要這個權限,才能查找當?shù)氐乃{牙設備。

  由于需要和下位機的藍牙模塊連接,在應用程序中需要實現(xiàn)主設備功能。具體的連接流程是:

  (1)在應用程序中檢查設備的藍牙功能是否開啟,如果未開啟,則打開藍牙功能;

  (2)查找設備附近等待連接的藍牙設備,顯示查找到的藍牙設備的物理地址(以前沒有連接過的設備)或藍牙設備的名稱;

  (3)選擇想要連接的藍牙設備,如果是第一次連接這個目標設備系統(tǒng)會自動發(fā)起一個配對過程,彈出輸入連接密碼的對話框,輸入“0000”,等待對方校驗密碼,完成配對,然后進行連接。

  (4)應用程序接收到連接成功,就可以通過生成的BluetoothServerSocke 和下位機進行數(shù)據(jù)傳輸。需要連接的藍牙模塊是藍牙串口,因此應用程序中定義的UUID 必須符合藍牙串口的UUID,這樣連接才會被接受。因為accept() 調(diào)用是一個阻塞的調(diào)用,應用程序所有響應在調(diào)用返回之前會被阻塞,因此一定不能在主線程中進行調(diào)用, 通常是在一個新的線程中做所有的工作從而避免應用程序主線程的阻塞。主要代碼如下;

  (5)關閉server socket,釋放serversocket 和它占用的資源,結束應用程序。

  4 結束語

  本文提出了基于藍牙與Android 設備的無線控制系統(tǒng)模型,分析了藍牙網(wǎng)絡的一般結構, 采用通用的藍牙模塊實現(xiàn)了無線終端設計,給出了Android 設備的藍牙串行通訊軟件框架。憑借藍牙的傳輸高效并且快速等特點,該系統(tǒng)具有很好的靈活性,能廣泛應用于工業(yè)現(xiàn)場控制等多個領域,尤其是一些需要數(shù)據(jù)傳輸又不能很方便的布設通訊電纜的場合,具有廣闊的發(fā)展空間。

  主要代碼




linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

linux相關文章:linux教程



上一頁 1 2 下一頁

關鍵詞: Android 藍牙 Linux

評論


相關推薦

技術專區(qū)

關閉