1299|2

27

帖子

2

资源

一粒金砂(中级)

【Silicon Labs BG22-EK4108A 蓝牙开发评测】三、蓝牙协议测试之APP点灯和按键检测 [复制链接]

1.使用蓝牙协议测试之APP点灯和按键检测,采用官方提供的Demo总是在仿真的时候跑飞,也是好不容易才解决了问题跑起来,第一步新建工程,选择BlueTooth,再选择项目为BlueToo Soc Blinky,如下图所示:

1.png

2.点击Next,设置工程名字和存放路径,点击Next完成工程 创建完毕,点击锤子标记,开始编译,编译完成后如下图所示。

2.png 3.编译完成后,点击属性开始配置环境如下图所示。

3.png 4、然后将代码烧录到开发板中,在装上APP后,打开手机蓝牙,再打开APP,选择Demo-Blinky,选择Blinky Sample蓝牙设置后,点击指示灯开,如下图所示:

44.jpg

5.APP上的灯点亮后,就可以看到开发板上的指示灯亮了,如下图所示,点击关闭就关闭指示灯。 46.jpg 6、这时按下开发板上的按钮,可以看到APP上的按钮改变颜色。如下图所示。

7、如上所示就完成了点灯和按键检测的测试了。那么在代码中是如何实现的呢?下面我们将层层解读代码实现。打开源代码中的Main.c文件,就可以

看到main函数如下图所示,分为硬件及驱动初始化,APP初始化,蓝牙接收事件处理和蓝牙发送数据事件处理接口。 0.png 8、由于其它初始化代码前面测试已经讲解,这次主要讲一下蓝牙协议的接口,蓝牙协议初始化接口如下所示,可以看到蓝牙配置,协议初始化和Class初始化。

Stack说明2.png

9、初始化完成后,蓝牙接收事件的处理函数如下,执行当前蓝牙接收事件处理函数,读取事件数据长度,依此进行是否发生接收事件,当发生后读取接收数据,于对数据进行处理。

接收处理蓝牙消息.png 10、蓝牙发送处理函数如下,先检测按钮是否发生改变,当发生改变后,将发生事件写入GATT库,当待发送事件处理完成后,再将发有事件信息通过蓝牙发送出去。

发送处理蓝牙消息0.png 发送处理蓝牙消息1.png 发送处理蓝牙消息2.png 10、通过9和10的处理,就可以看到我们实现蓝牙点灯和按钮事件发生了。

 

 


回复

6743

帖子

0

资源

五彩晶圆(初级)

测试步骤写的很细

想问一下方提供的Demo总是在仿真的时候跑飞,是怎么个情况

点评

范例代码运行很稳定,如果代码运行不稳定是信道的问题。  详情 回复 发表于 2022-1-21 08:48

回复

451

帖子

0

资源

一粒金砂(高级)

Jacktang 发表于 2022-1-21 07:20 测试步骤写的很细 想问一下方提供的Demo总是在仿真的时候跑飞,是怎么个情况

范例代码运行很稳定,如果代码运行不稳定是信道的问题。


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

查找数据手册?

EEWorld Datasheet 技术支持

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

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

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

    北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

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