使用BLE来控制RPI3
- [导读]
- 可穿戴设备大多都是通过蓝牙来进行数据通信,实现设备间的数据交换。与Bluetooth Classic相比较而言,BLE的低功耗特性对于可穿戴设备而言,在电池消耗上更具优势。某种程度上可以说,BLE成就了今天的可穿戴市场,反过来,可穿戴市场的崛起,让BLE更具生命力了!
接下来是控制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);
};
当手机端通过蓝牙向LedCharacteristic写入一个0值的时候,关闭LED灯;反之,当用户写入非0值,则点亮LED灯。注意这里的data,这是一个byte型数组,这里也没有检测数组的长度,简单的取第一个字节值并进行判断,然后使用mraa库来控制GPIO输出状态。
就是这么简单。
看看实际测试的结果,控制台输出如下
NRF CONNECT的扫描结果如下
注意这里的UUID值,与代码中的UUID值是一致的。
向LedCharacteristic写入0x01值,代表点亮LED灯。
RPI上的LED灯显示效果
测试没有问题,就可以写个简单的APP来控制RPI3了。
虽然现在还只有GPIO操作,不过借助mraa库及upm库,可以为RPI添加大量的外设,包括气压计、温湿度计、LCD屏等等,只限于你的想像力。
不过在使用其它外设之前,记得打开相关的驱动支持,使用raspi-config命令就可以实现,如下图
只点个灯,是有点太简单了,不过只要灯点亮了,各种应用也就不远了!
- 本文系21ic原创,未经许可禁止转载!
网友评论
- 联系人:巧克力娃娃
- 邮箱:board@21ic.com
- 我要投稿
-
欢迎入驻,开放投稿
-
人均百万?英伟达中国员工收入曝光! 2024-08-29
-
《黑神话:悟空》玩家硬盘升级攻略:提升游戏体验,畅享3A大作 2024-08-29
-
数睿数据参加《系统与软件工程 低代码开发平台通用技术要求》国家标准编制 2024-08-29
- NRF52810蓝牙数字耳机找人定制
预算:¥30005天前
- 125KW模块式PCS软硬件外包开发
预算:¥1100000015小时前
- 12V汽车启动电源项目BMS设计
预算:¥50000023小时前
- 数据可视化软件 开发
预算:¥5000023小时前
- PLC项目调试修改
预算:¥100001天前
- 起动电机控制器开发
预算:¥1100001天前