找回密码
 注册
关于网站域名变更的通知
查看: 185|回复: 1
打印 上一主题 下一主题

【开源教程10】疯壳·开源蓝牙心率防水运动手环-蓝牙 BLE 收发

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2022-8-16 11:10 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
开源蓝牙心率防水运动手环
——疯壳·智能穿戴开发系列
蓝牙 BLE 收发   
4 i; n9 G9 _) B! w' a: n8 [
3 y3 d1 c* t0 `
* G5 ?! V6 l# H9 E1 o
! P6 D5 E* W# M8 y
    1相关简介& x* z! S( c4 Q# i6 Z: a
! U' q5 ]1 c/ `
    DA14580 内部集成了射频模块,同时官方也提供了一套 SDK,里面包含了蓝牙协议栈部分。本节蓝牙收发就是通过修改官方提供的 SDK,完成蓝牙收发功能。关于蓝牙的基本知识,大家可以参考前面的蓝牙基础。
0 Q9 c% O/ t$ h/ {3 h' j7 x    2硬件设计6 B( e0 s7 o# M2 }3 v2 s! J

. n% ?; h! {: m    DA14580 内部集成了射频模块,这里只需要从 PF10p 脚接一根天线。# A$ F& N( `6 `; o, V# R* w" [0 C

: `' l( `& |+ W; ]6 U' h8 ]% O    
0 Q- J  p9 X# L6 O; D) ^& l0 Y    图 1) Q0 M! Q4 I& ~& `( S# q1 `
    3软件设计
1 w" J. b3 v: M3 ], t# `& T5 d# q$ ~2 s7 @6 y
    打开 SDK,从路径:# C0 B( \" K- h/ H2 z/ Q$ \

# j6 B. `; G+ ?, }- K7 J. S    SDK5.0.4\DA1458x_SDK\5.0.4\project\target_apps\ble_examples\ble_app_profi le\Keil_5 中打开 ble_app_profile 工程文件。* }0 ^& U$ e. F6 F  d

1 k: U( y$ T% p, M0 J
$ E+ w) C/ |- r) h    首先修改 user_cust1_def.h 文件,该文件对服务的参数进行了声明,我们这里需要修改服务和特征值的 UUID 等参数,并将多余的特征值删除。/ H7 I& `0 r/ C. Z
/ J# t: A& B0 j- A  O/ t# D* ~6 Q
   3 P. `5 R) v. d' T8 k
    图 2
6 d: `' ~' g: D; `! p* }: ]3 u9 G, R    再修改 user_cust1_def.c 文件,该文件对文件和特征值的属性进行了定义,这里需要对要使用的服务和特征值进行修改,并删除多余的特征值定义。7 G2 U* y& e# C9 u
4 r& v' i+ J8 _5 J- w# l
   / Y8 x1 O) s5 N( S  ^2 [! U/ ~# S
    图 3
  P7 r$ F. k' @
4 }5 |8 |9 M# d# `
, w2 `4 `& B7 m. p    - f* G0 g) Q: A) X3 c
    代码1- n  ~7 a, O4 A7 _
    最后要修改的是cust1_task.c 文件,该文件定义了 cust1 服务的一些任务函数, 需要将原来定义为 128 位的修改为 16 位。另外,由于前面删除了多余的特征值服务,这里还需要修改接受函数。! n; h/ n- b+ ^4 K8 S6 {3 Y4 n1 ]
0 B. d2 C; g2 {9 P1 P4 R
   
; `" M0 O3 x7 ?- b    图 4
( W8 F& N! K; [! y9 @    相关代码可以查看我们的实验例程。0 W) q7 d9 H* p0 w! R% f7 M* V

( X0 i; P# g0 B& ?& m- f0 n    4实验现象) T+ C8 ^- @8 d2 D: ?, l: _7 D3 L
, N0 F+ N$ R1 G# d7 x/ H1 ^
    首先打开 SmartSnippets。: k; M4 T2 ]) ^+ r( C: w" ^) q2 y7 z
' X. ?; {5 M, E) j7 |: r" }
   ; Z, `2 b9 N) U
    图 5, [& }- `* c+ v& P) r( {  W
    设置好 SmartSnippets 之后,点击上图中的 Open。* y# ^* e- ]' n2 m7 E! N5 q

2 ^4 ?: _5 L0 b: w: S    
) i: }" Y1 Q: Y, w) _# K    图 6; n4 i4 G( Q; V0 o* Z( b
    (1)点击 Connect,连接我们的单片机
7 v) h9 C* O0 G! ?
$ ^9 v# t+ b( V    (2)点击 Erase,擦除 Flash。7 f* O2 j; R# M: |
0 C- J8 |$ H' l
    (3)点击 Browse,找到我们工程的.hex 文件。8 N  g/ I  M% n2 ?9 E& O; L

. }; P) z0 E  `( G; `    (4)点击 Burn,完成代码下载。
# s& ]: _+ A' N5 |& h6 |. h6 B5 x) ?
    代码下载完成之后,运行代码,然后打开手机上的 Wolverine BLE。0 ~, @6 R+ L/ ~6 m( f4 ~7 W, @) W7 ]
% O; H% ]1 ^+ ?( f2 Y
    (1)点击 Connect。) c  x! W# r7 F! K
9 ^0 \3 W$ \  e% s5 `
   
; ^' I& [8 |( m% H. h% p    图 7
+ m& K4 B9 f( P; u+ |/ x& e1 C' ?% I, i& z9 C6 u: }. l
    (2)选择我们的蓝牙设备 DIALOG-PRFL。
! E9 ]% D: ?" d8 E- {
% ^# T9 u8 J0 O% B1 w, @    
4 e) ]) z+ W+ _( P* L) ?    图 84 I. ^! y8 M* y) h
    (3)在输入框输入 BLE,然后点击 Send。
/ _! F* U6 m! U# k, g' N7 l7 A# y1 y9 m; D* E, [; ]
   
4 K3 C2 i% {1 c9 ]2 s8 x    图 9
/ U8 H. V' K- Y    完成以上 3 步,手机能收到我们所发送的字符。! o! I$ t8 U/ g! u9 g4 W

7 [; B9 d! _' d- p4 ]3 \) s    
) j& @. _& o' T" U6 S7 N' c    图 10' l2 {9 J% }# O: e

* L1 H% p  o) B' \* ^2 ~' {2 n2 T
6 z- \1 U; Z- v( u  A: ~7 ?' L7 u, p" X  i* e! G3 E
文件下载请点击: 8_(100%开源)蓝牙心率防水运动手环_蓝牙BLE收发.pdf (826.02 KB, 下载次数: 0) 7 w2 d$ C" G0 B! P. H; U) s( e' u3 ~7 ]* U
, n% G! H: f+ y3 c9 `

该用户从未签到

2#
发表于 2022-8-17 18:37 | 只看该作者
控制蓝牙可以用单独的模块
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-7-26 14:58 , Processed in 0.125000 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表