你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

基于STM32WB55血氧心率检测手环

[复制链接]
攻城狮Melo 发布时间:2023-5-28 16:17
1.STM32WB55开发经验
1 T: V9 L5 H: C3 u$ Q. d7 T) M在长达大半年的STM32WB55蓝牙手环开发的过程当中,让我感受到了这款芯片的魅力和ST为其倾力打造的生态环境是真的很不错!
' e7 u. V. m+ |
9 {' b7 L7 X4 M9 B4 g$ z* S
不过在开发STM32WB55这款芯片的时候,刚开始能找到资料确实太少了,入门真的门槛稍微高了点。我是靠着官方给的英文文档一步一步啃过来的。到现在为止大致掌握了STM32WB55的开发流程,以及在它的蓝牙方面的开发应用。我已经成功的使用STM32CUBEMAX生成多个蓝牙的profile包括三轴传感器,血氧、心率,数字麦克风等多个传感器蓝牙传输的方法。% `+ ~1 m$ v; r
% u$ h6 M8 Y; H
整个工程使用的外设情况如下所示,尽可能的利用cubemax完成对开发的初始化,极大的方便工程师对这款芯片的开发:/ @8 D. i: \& K
' L2 t" V8 H% w- g
20200622145245211.png 8 M1 `" U5 z3 B
" U- b, K4 M- ]% T. p
* K8 z6 I0 x; ?$ M
2主界面的功能测试过程
" ?% m* ]! Z2 D( w
开发的手环LCD主界面的界面图如下所示:
3 t$ u% Q+ H' {; v( m9 n) R
4 d8 T& k, J" ^5 t. C: {
20200711202217437.png " @5 g0 s4 \  K1 {# ^; {+ }# ^
% [/ |; w, t0 }

  t2 S$ C6 k% W* x$ C3蓝牙协议和APP显示的功能测试
9 J+ K2 V6 c9 J. T1 e打开APP,点击开始扫描,便能检测到设备的蓝牙信息,点击“HJSH”便开始配对连接。- H% Y, B  i4 V& @. B. K: Z* N

' a+ S5 v: V* H! I* Q( [* `
20200707152516335.png 20200707152520146.png ' B2 F" Z& F: W6 D

" n" |0 y5 f2 B, N: _  B0 [
3.1血氧心率传输: N8 H8 d* I" d
在APP界面直接同步显示硬件传输过来的血氧和心率,未检测之前的界面如下如所示:
) }9 ]  @. T6 B. k8 T0 j
8 \# a. R: R( o! |* a
20200707152551293.png & h/ F$ r3 e2 T

& V3 C# n/ j: z( [, N7 S- E3 C8 \检测后的数据显示如图所示,其中“80bpm”代表的是心率的数值,“97KJ”中的97是代表的是血氧饱和度的值。+ F. D( G; [! P$ g' E$ _. O
2 z3 x7 Q. G4 @2 s) B5 R9 G
20200707152601624.png - _$ o$ w3 Z! f" R1 r

. U& t- X- t/ A. ^! C5 H
3.2音频数据传输, X  i# @, ~$ W) ~1 q0 h/ U* s
然后点击APP左上角的三条横线便可切换不同的蓝牙服务,选择“BlueVoice”便可以切换到蓝牙音频传输服务里。
& k; S2 e$ V0 _5 i1 _$ N$ W8 O9 s% G4 c
2020070715262159.png 20200707152624646.png
& X. W, x5 n" L: v$ ]4 h
7 j! f7 k; _7 E) C4 L8 B: v
切换到蓝牙音频传输服务里,便可以开始音频的传输了,能实时播放硬件采集的音频数据。& I3 P8 \" d' D0 e' w

. v6 m0 N% B6 L2 _, }9 `: \
20200707152631529.png
* i) V: r( A  u9 o* ~* C/ L
, `6 J# r; ~/ v4 m) @! L, s
3.3三轴传感器数据传输
% n  u' o* g- G9 D三轴传感器需要在APP的主界面点击“Open BLE Toolbox”,然后连接“HJSH”,最后找到最右边图的那个界面上的服务,使能其通知便可以开始以1s一次的频率读取到三轴传感器的数据了,数据格式为0xF3+2字节的X轴数据+2字节的Y轴数据+2字节的Z轴s数据+0x3F。- |- A- i. E5 Q" S) V  \# K. |' b6 j
' V2 M" ]& S! R; P5 l9 l; ^
20200707152641981.png 20200707152644964.png 20200707152647625.png 8 ]: q2 b4 T. O6 S$ n0 a
; P# f+ }( N; `7 Z3 @
三轴传感器还可以设置上传周期。往以下图片里的三轴传感器蓝牙服务写命令,以F3+1字节的上周周期(单位:s)。如下图,输入F301便是输入命令硬件以1s每次的频率上传一次三轴传感器的数据。
. C; U  g& }( I4 [2 _: ~5 H1 Q( D
20200707152654971.png 20200707152657278.png
1 y2 N$ V' g; Q# L) H/ L7 s" c* P" M
3.4 使用蓝牙调整scanrspdata和attDeviceName中的序列号! t5 D  J6 m; ]
首先找到以下的这个服务类,点击“WRITE”操作,在“WRITE”里面选择“String”选项。然后开始写入需要的序列号,数据格式以“ASCLL码F+10字节的ASCLL码数据。写入成功后,退出后连接后,继续扫描我们的蓝牙设备,便可以在广播数据里看到我们写入的序列号了(广播出来是的是十六进制格式的ASCLL码)。也可以在最后一张图片的服务类里当前读取广播的序列号。" J1 L/ k( [& P5 V* J* i
& I+ _- t1 b6 S. [0 F% P& |
20200707152725609.png 2020070715272868.png 20200707152732569.png
. {3 P* f9 w& d4 x$ W2 |9 T5 n2 b$ k' i& O- Z) _. B
20200707152734984.png 20200707152744722.png
, m% s% g2 V% Y6 C' s0 U
  k1 v  Z4 y& t7 }4 _- _

$ {( a. p% n/ E) W0 o$ q. J+ f) Z, D有时间再慢慢更新,记录着大半年的开发心得。可以加19921257213交流心得。有任何关于STM32WB55的项目也可以找我。0 \) Y# U1 n& N% V0 o
————————————————# z0 H9 V6 I7 E" c' x
版权声明:&热爱- i. L" D. A; w
如有侵权请联系删除
& ?3 G7 a+ k; |/ M: c3 Z) z7 B/ Q" U# |* z1 h2 R2 P
9 k6 u0 B1 r. C$ X
收藏 1 评论2 发布时间:2023-5-28 16:17

举报

2个回答
STMWoodData 回答时间:2023-5-29 16:41:58

学习学习

bitterheart 回答时间:2023-5-30 15:25:06

强!

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版