写了一个配合SensorTile调试的android程序
可以实现接收SensorTile加速度传感器发来的数据并通过曲线显示
考虑到参加SensorTile大赛的网友有不会android开发的
可以拿这个app实现一些简单的功能
使用这个app不需要安装android开发环境
只需要安装编译好的apk到手机
jsble.apk (2.3 MB, 下载次数: 0)
然后把写好的html文件放到sd卡的int8目录下即可
例如读取SensorTile广播的mac地址,rssi和scan data并通过文本框显示
在手机sd卡目录下创建一个int8的文件夹
使用记事本创建一个html文件
复制下边的html代码到记事本
保存后将html文件放到sd卡的int8文件夹
<html>
<head>
<title>JsBLUE APP</title>
<scripttype=\”text/javascript\”>
function jsCallback(jsonStr){
if(jsonStr.cmd == \’ON_LE_SCAN\’)
{
var json = JSON.parse(jsonStr.prm);
document.getElementById(\’textarea\’).value=\’mac:\’ json.mac \’rnrssi:\’ json.rssi \’rnscan data:\’ json.scanData;
}
}
</script>
</head>
<body>
<p>JsBLUE 接收BLE设备广播数据</p>
<textareaid=\”textarea\”rows=\”10\”cols=\”50\”></textarea>
</body>
<html>
运行app就会看到下边的效果
为了更好的利用SensorTile的广播数据
收到的scan data使用了16进制字符显示
例如想显示SensorTile加速度的x,y,z轴数据
可以在SensorTile例程里把读取到的x,y,z轴数据添加到广播数据
buf[0]= acceleration.AXIS_X >>8;
buf[1]= acceleration.AXIS_X &0xff;
buf[2]= acceleration.AXIS_Y >>8;
buf[3]= acceleration.AXIS_Y &0xff;
buf[4]= acceleration.AXIS_Z >>8;
buf[5]= acceleration.AXIS_Z &0xff;
UpdateAdvStr(buf);
SensorTile 三轴加速度的发送程序
Project.bin (21.08 KB, 下载次数: 0)
手机收到数据后会将数据转换成16进制字符并调用html文件里的jsCallback函数
在jsCallback里处理数据并显示
function jsCallback(jsonStr){
if(jsonStr.cmd ==\’ON_LE_SCAN\’)
{
var json = JSON.parse(jsonStr.prm);
if(json.mac !=\’FF:FF:FF:FF:FF:FF\’)
{
return;
}
var x = json.scanData.substr(4,4);
var y = json.scanData.substr(8,4);
var z = json.scanData.substr(12,4);
x = hex2signedDec(x);
y = hex2signedDec(y);
z = hex2signedDec(z);
$(\”#info_label\”).text(\’x:\’ x \’ y:\’ y \’ z:\’ z);
addData([x,y,z],100);
}
}
解压文件到sd卡下的int8文件夹测试效果
html.rar (698.26 KB, 下载次数: 0)
目前App只实现了接收BLE的广播功能
所以和SensorTile的通信只能是单向的
SensorTile发送数据,android 手机接收数据
完整的项目源码可以到https://github.com/int8cn/jsble下载
以上图文内容均是EEWORLD论坛网友:littleshrimp 原创,在此感谢。
欢迎微博@EEWORLD
如果你也写过此类原创干货请关注微信公众号:EEWORLD(电子工程世界)回复“投稿”,也可将你的原创发至:bbs_service@eeworld.com.cn,一经入选,我们将帮你登上头条!
与更多行业内网友进行交流请登陆EEWORLD论坛。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。