搜索
热门关键词:
开关电源
三极管
ModelSim
Multisim
电动汽车
手机版
官方微博
微信公众号
登录
|
免费注册
首页
新闻
新品
文章
下载
电路
问答
视频
职场
杂谈
会展
工具
博客
论坛
在线研讨会
技术频道:
单片机/处理器
FPGA
软件/编程
电源技术
模拟电子
PCB设计
测试测量
MEMS
系统设计
无源/分立器件
音频/视频/显示
应用频道:
消费电子
工业/测控
汽车电子
通信/网络
医疗电子
机器人
当前位置:
EEChina首页
›
论坛
›
新手园地
返回列表
查看:
1832
|
回复:
0
【疯壳·智能穿戴开发教程11】开源蓝牙心率防水运动手环-整机功能代码讲解
[复制链接]
Linda-x
Linda-x
当前离线
积分
9771
发表于 2022-9-1 15:42:51
|
显示全部楼层
|
阅读模式
贸泽电子有奖问答视频,回答正确发放10元微信红包
关键词:
开源
,
蓝牙
,
心率监测
,
运动手环
,
整机功能代码讲解
开源
蓝牙
心率防水运动手环
——疯壳·智能穿戴开发系列
整机功能代码讲解
整机代码
1 软件设计
本节,我们将融合前面的蓝牙收发、三轴记步、电量检测、外部 Flash 读写、 心率检测和 Led 屏幕显示,完成手环的制作。
以上各个部分可以参考前面的章节。
首先,看一下我们手环的整个软件主函数流程。
图1
代码运行后,首先进入初始化,初始化系统时钟、外设和蓝牙。除此之外, 还开启了定时中断和 GPIO 中断。
我们的定时中断每 10ms 触发一次,用于
ADC
定时采集心率数据,以及定时和时间更新。另外,由于一些原因,主函数中的步数读取、电量检测、心率检测、屏幕显示并不是每一次循环都执行一次。这里的定时中断也作为一个计时功能, 步数 20 秒更新一次,心率模块 1 分钟打开一次,亮屏无操作,5 秒熄灭屏幕。
这里的 GPIO 中断主要是用来切换屏幕显示页面。
代码1
从 GPIO 的中断回调函数中可以看出,每次中断只是把变量 Touch_release 置1,并没有直接对显示做任何处理,而在定时中断的回调函数中,判断变量Touch_release 的值,从而确定我们是长时间按键,还是短时间按键,来完成相应的处理。
在定时器中断函数中,检测到短时间触摸,就打开显示标志位,同时设置显示的页面。
关于蓝牙收发部分,我们在蓝牙收发章节的基础上进行了修改,通过手机软件 Wolverine BLE 发送 step 获取步数、发送 cal 获取卡路里、发送 heart 获取心率值、发送 rtc 加时间完成手环的时间设置。下面是函数
代码2.1
代码2.2
每当手环收到来自手机软件 Wolverine BLE 的数据时,首先从 Flash 中读取步数和心率数据。然后对比接收到字符串。最后发送或设置相应的数据。这里有一点要注意,我们从 Flash 中读取到的是数据,而通过蓝牙发送的是字符串,就需要将数字转换成字符就如同代码中将一个位的数字加上 0x30,换算成该数字对应的 ASCII 码值。
对于发送给手机的卡路里数据,其实是通过三轴步数计算过来的。消耗的卡
路里跟步数以及个人的体重等因素呈比例关系,大家可以根据自己的情况修改卡路里与步数之间的系数。
代码3
关于其他部分代码,请参考我们的我整机代码例程。
2 实验现象
首先打开 SmartSnippets。
图2
设置好 SmartSnippets 之后,点击上图中的 Open。
(1)点击 Connect,连接我们的
单片机
。
图3
(2)点击 Erase,擦除 Flash。
图4
(3)点击 Browse,找到我们工程的.hex 文件。
图5
(4)点击 Burn,完成代码下载。
图 6
代码下载完成之后,运行代码,能看到屏幕显示时间。
图 7
在时间显示界面下,触摸一下按键,会显示心率。
图8
在心率显示界面下,触摸一下按键,会显示步数界面。
图 9
再触摸一下按键,就会进入卡路里显示界面。
图10
打开手机软件 Wolverine BLE。
(1)点击 Connect。
图11
(2)选择我们的蓝牙设备 DIALOG-PRFL。
图12
我们发送 step,会获取步数。
图 13
发送 cal,会获取卡路里。
图14
发送 heart,会获取心率。
图15
文件下载请点击:
9_(100%开源)蓝牙心率防水运动手环_整机功能代码讲解.pdf
(1.86 MB)
2022-9-1 15:40 上传
点击文件名下载附件
相关文章
•
艾迈斯欧司朗推出超紧凑绿光ChipLED,以极小体积实现入耳式设备精准心率监测
•
蓝牙技术联盟宣布2025蓝牙亚洲大会重磅回归
•
为什么Chromecast、Airplay 和蓝牙不能和睦相处?
•
蓝牙6.0核心规范正式发布,引领精准定位新时代
•
蓝牙技术联盟发布全新安全精准测距功能 为蓝牙设备带来真实距离感知
•
推出QCC3024低功耗蓝牙芯片、QCC-3024-0-CSP90-TR-00-0 SoC VFBGA-90
•
蓝牙技术联盟发布《2024年蓝牙市场最新资讯》
•
围观2024年物联网热点话题:芯科科技亚太区Tech Talks技术讲座前瞻无线开发新技能
•
既然有了NFC和蓝牙,我们为何还要UWB?
•
蓝 牙 Mesh 组 网 有 何 作 用 ?
回复
举报
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
浏览过的版块
ARM训练班
医疗电子
职业发展
消费电子
电源技术
机器人技术
关于我们
-
服务条款
-
使用指南
-
站点地图
-
友情链接
-
联系我们
电子工程网
© 版权所有
京ICP备16069177号
| 京公网安备11010502021702
快速回复
返回顶部
返回列表