5670|6

1237

帖子

66

TA的资源

纯净的硅(中级)

楼主
 

【Silicon Labs BG22-EK4108A 蓝牙开发评测】七、微信小程序控制led和接收按键状态2 [复制链接]

 

上一帖学习了Silicon Labs BG22-EK4108A 的蓝牙led控制和按键状态反馈例程,其中最重要的是如下的服务和特征值:

编写微信小程序控制led亮灭和获取按键状态就是对这两个特征值的写操作和订阅通知实现。通知数据接收后需要进行处理展示,通过两个页面之间数据交换实现:

      wx.onBLECharacteristicValueChange(function(res){
          console.log(res);
          var tmp =that.ab2hex(res.value);
          var cdn = that.data.currDeviceName;
          that.printLog("当前蓝牙设备名字: " + cdn + "," + "收到Notify数据: " + that.ab2hex(res.value));
          //发送数据到其它页面
          if(cdn=='Blinky Example')
          {
            event.emit('environmetDataChanged',tmp);
          }
        });

显示通知数据的页面:

//屏幕打开时执行的函数
  onLoad: function () {
    //接收别的页面传过来的数据
    event.on('environmetDataChanged', this, function(data) {
      //另外一个页面传过来的data是16进制字符串形式
      console.log("接收到蓝牙设备发来的数据:"+data)
      var a=parseInt(data[0]+data[1],16);
      //实时修改显示值
      var up0 = "charts[" + 0 + "].data";
      this.setData({
        [up0]:a,
      });
    })
  },

接收到led控制数据'0'或者'1'就进行开关led:

发现服务过程,微信小程序调试日志显示发现的服务和SSV5中定义的一致:

写特征值过程和按键状态通知接收过程的日志:

微信小程序的日志,连接设备成功后会扫描设备有哪些服务,然后开始接收具有通知权限的数据:

demo界面:

led控制:

按键状态通知订阅:

 

掌握了如何读写特征值,订阅通知数据,就能扩展很多有意思的应用了,比如开发板通过ADC采集传感器数据以通知的方式发送到微信小程序,演示效果:


 

最新回复

历害了,前后端都会,才子,可以拜你为师吗?  详情 回复 发表于 2022-2-8 11:23
点赞 关注
 
 

回复
举报

6587

帖子

0

TA的资源

五彩晶圆(高级)

沙发
 

蓝牙led控制和按键状态反馈测试的挺好

 
 
 

回复

1412

帖子

3

TA的资源

版主

板凳
 
用小程序控制,看起来就很高大上。

点评

主要是方便跨平台  详情 回复 发表于 2022-1-25 18:09
 
 
 

回复

1237

帖子

66

TA的资源

纯净的硅(中级)

4
 
annysky2012 发表于 2022-1-25 16:54 用小程序控制,看起来就很高大上。

主要是方便跨平台

点评

是的,小程序做起来就是不一样  详情 回复 发表于 2022-1-27 08:33
 
 
 

回复

1412

帖子

3

TA的资源

版主

5
 
dql2016 发表于 2022-1-25 18:09 主要是方便跨平台

是的,小程序做起来就是不一样

个人签名

没有什么不可以,我就是我,不一样的烟火! 

 
 
 

回复

6841

帖子

11

TA的资源

版主

6
 
历害了,前后端都会,才子,可以拜你为师吗?
 
 
 

回复

1237

帖子

66

TA的资源

纯净的硅(中级)

7
 
lugl4313820 发表于 2022-2-8 11:23 历害了,前后端都会,才子,可以拜你为师吗?

 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表