當前位置:首頁 > 嵌入式 > 嵌入式硬件
[導讀] Android 操作系統(tǒng)是Google 基于開源的Linux 操作系統(tǒng)開發(fā)的移動操作平臺,由操作系統(tǒng)、中間件、用戶界面和應用軟件組成,是專門為移動終端打造的開放和完整的移動操作系統(tǒng)

Android 操作系統(tǒng)是Google 基于開源的Linux 操作系統(tǒng)開發(fā)的移動操作平臺,由操作系統(tǒng)、中間件、用戶界面和應用軟件組成,是專門為移動終端打造的開放和完整的移動操作系統(tǒng)。Android 軟件平臺包含Java Application、Application Framework、Libraries、Runtime 與LinuxOS 等層。用戶可根據(jù)產(chǎn)品的不同需求對系統(tǒng)進行裁剪,從而適應多樣的產(chǎn)品需求,Android 系統(tǒng)就如同積木一樣通過組合不同的軟硬件實現(xiàn)不同的應用產(chǎn)品。藍牙的出現(xiàn)為移動設(shè)備的互聯(lián)提供了一個方便快捷的選擇,Android 設(shè)備和以單片機為處理器的控制器聯(lián)接使兩者的功能得到了互補。

1 系統(tǒng)架構(gòu)

基于藍牙與Android 設(shè)備的控制系統(tǒng)由Android 設(shè)備和下位機組成。Android設(shè)備(Android 智能手機或Android 平板)安裝有專門編制的軟件。下位機采用ATMEL 公司高效的RISC 內(nèi)核的ATMEGA 8 為核心,并集成藍牙串行模塊為通信信道。Android 設(shè)備通過藍牙將數(shù)據(jù)發(fā)送至下位機,下位機根據(jù)接收到數(shù)據(jù),完成相應的控制功能,并將處理結(jié)果上傳,實現(xiàn)實時監(jiān)測、實時控制功能。下位機只負責數(shù)據(jù)的采集和實現(xiàn)控制功能,數(shù)據(jù)的存儲和處理在Android 設(shè)備上實現(xiàn)。

2 下位機設(shè)計

2.1 控制模塊的設(shè)計

下位機由ATMEAG8、數(shù)字溫度傳感器、電機驅(qū)動電路等組成,其中CPU 部分電路如圖1 所示。下位機處理器串口連接藍牙模塊。數(shù)字溫度傳感器將當前溫度直接轉(zhuǎn)換成數(shù)字信號。藍牙模塊設(shè)置為從工作模式。

圖1 CPU 電路原理圖
圖1 CPU 電路原理圖

系統(tǒng)上電后藍牙模塊處于等待連接狀態(tài), 當Android 設(shè)備第一次發(fā)出連接請求時需要輸入藍牙模塊的內(nèi)置密碼,以后再連接時則不需要輸入密碼,只有密碼匹配成功才能后成功建立藍牙連接。藍牙模塊為Android 設(shè)備和ATMEAG8 的通信信道,實現(xiàn)Android 設(shè)備和下位機的雙向數(shù)據(jù)連接。用戶通過Android 設(shè)備向下位機發(fā)送命令,下位機接收到命令后,控制相應的執(zhí)行模塊,實現(xiàn)設(shè)定的控制功能。K1 和K2 為低電平,電機兩端電壓為0V,電機停止;K1 為高電平,K2為低電平電機兩端為5V,電機正向轉(zhuǎn)動;K1 為低電平,K2 為高電平電機兩端為-5V,電機反向轉(zhuǎn)動;K1 和K2 不能同時為高電平,電機驅(qū)動電路如圖2 所示

圖2 電機驅(qū)動電路原理圖
圖2 電機驅(qū)動電路原理圖

2.2 藍牙模塊

藍牙模塊型號為IDS-BM4A, 模塊有主/ 從兩種工作模式,通過PIO2 電平來選擇模塊的工作,PIO2 為高電平,模塊工作在從模式。模塊可以有兩種應用方式,方式1 :從模塊上電即開始工作,用戶可以通過Android 設(shè)備查找模塊,模塊設(shè)備名稱為”SPP”, 查到設(shè)備后選擇連接,電腦端將提示輸入密碼,此時輸入“0000”,電腦將與模塊建立透明連接。方式2 :需要兩個藍牙模塊,一個設(shè)置為主模式,一個設(shè)置為從模式,分別與兩個MCU 連接,上電后主從模塊會自動配對連接,連接成功后主從模塊將建立透明數(shù)據(jù)傳輸,兩個設(shè)備之間可以直接互發(fā)數(shù)據(jù)。

工作狀態(tài)指示:模塊PIO0 用來連接LED,指示當前工作方式。

主模式:未連接,LED 間隔1 秒鐘快速閃爍2次;已連接,LED 常亮。

從模式:未連接,LED 快速閃爍;已連接,LED 常亮。

連接狀態(tài)指示:模塊PIO1 為連接狀態(tài)指示,連接成功PIO1 為高電平,連接斷開PIO1 為低電平。

波特率設(shè)定表:

3 Android 設(shè)備軟件設(shè)計

Android2.2 版本以上才能很好的支持藍牙功能,Android 上的應用程序一般采用Java 語言開發(fā),編程環(huán)境一般采用Eclipse。

Android 應用程序需要使用藍牙功能, 必須在AndroidManifest.xml 中要申請兩個權(quán)限:BLUETOOTH_ADMIN 和BLUETOOTH。具體格式如下:

<?xml:namespace prefix = uses-permissionandroid /> <uses-permissionandroid:na

me="android.permission.BLUETOOTH"/>

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

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

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

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

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

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

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

4 結(jié)束語

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

主要代碼

6次

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

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

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

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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