首頁(yè) > 評(píng)測(cè) > 使用BLE來(lái)控制RPI3
使用BLE來(lái)控制RPI3
- [導(dǎo)讀]
- 可穿戴設(shè)備大多都是通過(guò)藍(lán)牙來(lái)進(jìn)行數(shù)據(jù)通信,實(shí)現(xiàn)設(shè)備間的數(shù)據(jù)交換。與Bluetooth Classic相比較而言,BLE的低功耗特性對(duì)于可穿戴設(shè)備而言,在電池消耗上更具優(yōu)勢(shì)。某種程度上可以說(shuō),BLE成就了今天的可穿戴市場(chǎng),反過(guò)來(lái),可穿戴市場(chǎng)的崛起,讓BLE更具生命力了!
接下來(lái)是控制LED燈的代碼,如下
LedCharacteristic.prototype.onWriteRequest = function(data, offset, withoutResponse, callback) {
console.log('LedCharacteristic write request: ' + data.toString('hex') + ' ' + offset + ' ' + withoutResponse);
if(data.readUInt8(0) == 0) {
console.log('led off');
led.write(0); //led off
} else {
console.log('led on');
led.write(1);
}
callback(this.RESULT_SUCCESS);
};
當(dāng)手機(jī)端通過(guò)藍(lán)牙向LedCharacteristic寫(xiě)入一個(gè)0值的時(shí)候,關(guān)閉LED燈;反之,當(dāng)用戶(hù)寫(xiě)入非0值,則點(diǎn)亮LED燈。注意這里的data,這是一個(gè)byte型數(shù)組,這里也沒(méi)有檢測(cè)數(shù)組的長(zhǎng)度,簡(jiǎn)單的取第一個(gè)字節(jié)值并進(jìn)行判斷,然后使用mraa庫(kù)來(lái)控制GPIO輸出狀態(tài)。
就是這么簡(jiǎn)單。
看看實(shí)際測(cè)試的結(jié)果,控制臺(tái)輸出如下
NRF CONNECT的掃描結(jié)果如下
注意這里的UUID值,與代碼中的UUID值是一致的。
向LedCharacteristic寫(xiě)入0x01值,代表點(diǎn)亮LED燈。
RPI上的LED燈顯示效果
測(cè)試沒(méi)有問(wèn)題,就可以寫(xiě)個(gè)簡(jiǎn)單的APP來(lái)控制RPI3了。
雖然現(xiàn)在還只有GPIO操作,不過(guò)借助mraa庫(kù)及upm庫(kù),可以為RPI添加大量的外設(shè),包括氣壓計(jì)、溫濕度計(jì)、LCD屏等等,只限于你的想像力。
不過(guò)在使用其它外設(shè)之前,記得打開(kāi)相關(guān)的驅(qū)動(dòng)支持,使用raspi-config命令就可以實(shí)現(xiàn),如下圖
只點(diǎn)個(gè)燈,是有點(diǎn)太簡(jiǎn)單了,不過(guò)只要燈點(diǎn)亮了,各種應(yīng)用也就不遠(yuǎn)了!
- 本文系21ic原創(chuàng),未經(jīng)許可禁止轉(zhuǎn)載!
網(wǎng)友評(píng)論
- 聯(lián)系人:巧克力娃娃
- 郵箱:board@21ic.com
- 我要投稿
-
歡迎入駐,開(kāi)放投稿
- NRF52810藍(lán)牙數(shù)字耳機(jī)找人定制
預(yù)算:¥30005天前
- 125KW模塊式PCS軟硬件外包開(kāi)發(fā)
預(yù)算:¥1100000015小時(shí)前
- 12V汽車(chē)啟動(dòng)電源項(xiàng)目BMS設(shè)計(jì)
預(yù)算:¥50000023小時(shí)前
- 數(shù)據(jù)可視化軟件 開(kāi)發(fā)
預(yù)算:¥5000023小時(shí)前
- PLC項(xiàng)目調(diào)試修改
預(yù)算:¥100001天前
- 起動(dòng)電機(jī)控制器開(kāi)發(fā)
預(yù)算:¥1100001天前