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

【STM32WBA52CG评测】 WebApp 控制LED

[复制链接]
BinWin 发布时间:2023-8-20 17:15
       上次提到了ST有提供一个Web平台的APP,可以配合例程进行一些实验。这里就以P2PServer为例展开,也是对计划的小制作的延展。
5 o& a/ b! \! _' w        打开例程、编译、烧录这些都不用说,展开工程目录,可以看到如下分组
$ I" _' d% j( K( L       b.png
% s, E. Q8 B( u! _       已经标记了需要主要关注的地方,从主程序入口可以一步一步挖掘到蓝牙应用函数的地方。通过查看代码,定位了这个程序中对LED控制的代码段,如下% }" k0 W# e$ \8 ?# s9 f
         c.png & y+ r% J% y" I5 }7 D2 v
           打开Web App来看下,是什么样子的
, `' N) E0 ^6 {& S            d.png
' J/ m2 A' Q; J          板卡程序烧录好以后,复位程序,这个时候,就可以用手机或电脑蓝牙搜索板卡的信号了。WEB端的操作是这样的。- t* w1 M+ V! L. p8 h! ?
            e.png
  e* A* v# S& s1 L( T         因为我已经连接过了,所以有配对记录,连接成功后,就可以进入到上一幅图片的操作页面。点击按钮可以打开和关闭板子上的LED,按钮上的字符也会自行改变状态。下面的输入框,输入0x01和0x0也可以打开和关闭LED,这只是WEB UI呈现的不同,实际发送的有效数据内容都是0x01和0x0。到这里,APP控制LED的方法已经很清晰了。修改程序,添加两个指令,留着给RGB灯条的控制使用。程序段如下,是很简单的内容:5 V) a# v' F& O8 g# B0 h' a
8 ]( ?- X  q) l# m! f
  1.       /* USER CODE BEGIN Service1Char1_WRITE_NO_RESP_EVT */% _" L( e: O+ r0 I: |9 i* ~
  2.       if(p_Notification->DataTransfered.p_Payload[1] == 0x01)
    - G/ L* p2 o) V0 o# r
  3.       {5 g! d- z' y2 E$ j+ m2 ?" K
  4.         BSP_LED_On(LED_BLUE);
    " \  V( z5 V# t, v* p  h' L& L
  5.         APP_DBG_MSG("-- P2P APPLICATION SERVER : LED1 ON\n");   J2 t( q( ?2 N! e7 |4 W0 |& X
  6.         P2P_SERVER_APP_Context.LedControl.Led1 = 0x01; /* LED1 ON */2 i. j) A5 \- a2 ^
  7.       }
      d  e+ ^0 p# A8 S# j3 h& `/ i
  8.       if(p_Notification->DataTransfered.p_Payload[1] == 0x00)6 x3 H* F  f4 l$ q
  9.       {
    8 X* {5 L  d$ {4 {& g: {; i* N
  10.         BSP_LED_Off(LED_BLUE);
    9 `6 b3 `" ?4 w7 @
  11.         APP_DBG_MSG("-- P2P APPLICATION SERVER : LED1 OFF\n");
    + H" f7 i3 v/ @+ f. P
  12.         P2P_SERVER_APP_Context.LedControl.Led1 = 0x00; /* LED1 OFF */
    : s# ]* I) K8 @. K
  13.       }
    - S* [' c8 ?. t. M
  14.                         if(p_Notification->DataTransfered.p_Payload[1] == 0x02)0 o# S  l. E" }3 F& W3 S+ p( N
  15.       {5 i4 A' _, d, O* {$ v% S
  16.         BSP_LED_On(LED_RED);
    - p5 z1 b* J8 [
  17.         APP_DBG_MSG("rgb set 1\n");
    1 x6 U) I: c" g9 o$ _  M
  18.         P2P_SERVER_APP_Context.LedControl.Led1 = 0x02; /* LED1 OFF */
    8 U6 e$ O. u% H7 M( Y7 C) p5 N
  19.       }# @5 K7 `, o3 D) X# h6 i
  20.                          if(p_Notification->DataTransfered.p_Payload[1] == 0x03)
    , @- L' ~4 U. m
  21.       {: q5 O! l) o) Q3 W/ X6 t
  22.         BSP_LED_Off(LED_RED);) x" k4 O1 c. m2 O& Z2 _
  23.         APP_DBG_MSG("rgb set 2\n");
    + [- x7 ~+ D8 E% Q( i6 Z" Q* I3 t4 h
  24.         P2P_SERVER_APP_Context.LedControl.Led1 = 0x03; /* LED1 OFF */
    7 ^. W& l* P# {- }7 i$ M( Q
  25.       }- n/ i7 }& ]/ k, E2 M
  26.       /* USER CODE END Service1Char1_WRITE_NO_RESP_EVT */
复制代码
         这样就可以有4条指令来给到板卡了。接下来一步做4种RGB灯条的效果。ST的WIKI资料做的真不错,涵盖了绝大部分内容。5 n9 }- y7 M4 i9 R& D2 m
, _2 @" n* e4 t* F; y# h
- B* r$ a& ]; w
赞 1 收藏 评论4 发布时间:2023-8-20 17:15

举报

4个回答
Yude 回答时间:2023-8-21 14:31:13

厉害,还有下一集吗?

STMWoodData 回答时间:2023-8-29 09:02:35

学习学习蓝牙

qintian0303 回答时间:2023-8-29 09:44:13

学习学习

无极考拉 回答时间:2023-8-29 13:06:44

学习一下

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版