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

【STM32WB55评测】评测二 p2p通信

[复制链接]
MingXJ 发布时间:2023-7-6 23:52
评测二 p2p通信
          众所周知,站在GATT层,分ClientServer角色,站在GAP层,分CentralPeripheral角色。而p2p通信就是GATT ClientServer特征的一系列操控。STM32WB55刚好定义了一组LED_Button service,它的构成见官方文档《AN5289 - Building a Wireless application7.4章节:
p2p_service.PNG
1 p2p对端通信服务UUID
可读可写是LED特征,通知是Button特征。
一、        准备工作
     STM32WB55 Nucleo board用STM32CubeProgrammer烧录STM32Cube_FW_WB_V1.16.0\Projects\P-NUCLEO-WB55.Nucleo\Applications\BLE\BLE_p2pServer\Binary\BLE_p2pServer_reference.hex,STM32WB55 Dongle进入boot后同样用STM32CubeProgrammer(细节上一篇评测有讲,不赘述)或直接外置Jlink烧录STM32Cube_FW_WB_V1.16.0\Projects\P-NUCLEO-WB55.USBDongle\Applications\BLE\BLE_p2pClient\Binary\BLE_p2pClient_reference.hex,注:dongle的Jink板子并未丝印,需要查看原理图上CN1的PA13/PA14/GND/3V3就能SWD编程。
IMG_20230625_235812.jpg
图2 dongle的SWD编程接口
手机安装ST BLE Toolbox。

+ K  k( u2 m- T( f% c/ o3 S
二、        runtime
1.      手机做client
     手机端往UUID=0000FE41-8e22-4541-9d4c-21edae82ed19写0100把对端server的LED1熄灭,写0101把对端server的LED1点亮;同理开发板SW1按下往UUID=0000FE42-8e22-4541-94dc-21edae82ed19发通知0100或0100,第1个字节代表第1个server。这里测出一个问题,为了录屏,我用旧手机当client(小米6+安卓9),发现APP的LED&Button进入页没有显示LED图标,必须要按下按钮收到通知LED图标才出现,新手机上APP没有此现象;再个就是旧手机不容易扫描到,经常设备看不到p2pserver,新手机好很多,可能是APP未对旧系统适配。
Screenshot_2023-07-06-22-57-50-695_com.st.bluems.jpg
图3 旧版APP进入并未显示有LED控制图标(未适配)
blink_app.gif
图4 手机LED&Button特征操作
2.      dongle做client
      这里的操作就多了,彼此可以互通信,dongle的SW1可控Nucleo board的LED1,反过来Nucleo的SW1可控制dongle的LED1,连接心跳彼此的绿灯都在同步闪烁指示,同时Nucleo的SW2可以设置连接参数,按一下可切换连接间隔在10ms或1s,并且10ms->1s立马切换,1s->10ms要等彼此绿灯闪10次即等10s才切换成功,经测试验证和readme.txt描述现象一致,相应日志也能看到:
  1. >>== HCI_LE_CONNECTION_UPDATE_COMPLETE_SUBEVT_CODE: c0 ?  @+ [- z; B; m$ a1 }
  2.      - Connection Interval:   1000.00 ms' O( g& U- ]- U" T1 s
  3.      - Connection latency:    0
    0 @/ m- a! o# Q' e# d- w
  4.      - Supervision Timeout: 5000 ms% y- I( a/ }. C0 F

  5. 9 i. y8 @/ b$ R
  6. BLE_SVC_L2CAP_Conn_Update(), Successfully 6 E& ?7 j7 w" q2 j
  7. ! h( M- F2 `, H: Y
  8. >>== HCI_LE_CONNECTION_UPDATE_COMPLETE_SUBEVT_CODE7 H8 S1 k8 Q+ V
  9.      - Connection Interval:   50.00 ms/ l; K0 [3 t8 T2 D2 p; L
  10.      - Connection latency:    0, z8 C2 G  H: s
  11.      - Supervision Timeout: 5000 ms
复制代码
串口输出.PNG
图5 连接过程server日志
blink_cs.gif
6 dongle&Nucleo board互通

7 q; [8 W( Z$ N$ Y8 d
收藏 评论0 发布时间:2023-7-6 23:52

举报

0个回答

所属标签

相似分享

官网相关资源

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