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

【STEVAL-STWINKT1B评测】3、读取板载温度、湿度、气压三通道数据

[复制链接]
EPTmachine 发布时间:2026-3-23 18:51

在以下页面可以下载到用于预测性维护、智能工业、IoT和远程监控应用的STEVAL-STWINKT1评估套件固件,也就是本次测评使用的评估套件。

https://www.st.com.cn/zh/embedded-software/stsw-stwinkt01.html

下载并解压开发套件,stsw-stwinkt01\STSW-STWINKT01_V2.2.0\Projects中包含不同的软件演示程序。

套件中使用到到的软件栈结构如下。

STSW_STWINKT01_Stack.png

1、示例程序

开发套件中提供的BLE_SampleApp,实现初始化硬件、蓝牙软件栈,传感器数据管理等功能。系统在上电后的程序运行逻辑如下:

  • 初始化硬件和时钟;
  • 配置并复位传感器片选引脚;
  • 初始化板卡:
    • USB外设 (用于调试)
    • LED1指示灯
    • 环境传感器
  • 初始化蓝牙低功耗软件栈
  • 初始化蓝牙低功耗服务
  • 初始化定时器
  • 主循环:
    • LED管理
    • 低功耗蓝牙时间管理
    • 环境传感器数据管理

上述流程在代码中表示为

int main(void)
{
  uint32_t StartTime;

  /* STM32L4xx HAL库初始化 */
  HAL_Init();

    HAL_PWREx_EnableVddIO2();
  __HAL_RCC_PWR_CLK_ENABLE();
  HAL_PWREx_EnableVddUSB();

  /* 初始化硬件和时钟 */
  SystemClock_Config();

  BSP_PB_Init(BUTTON_USER, BUTTON_MODE_EXTI);
  BSP_PB_PWR_Init();
  BSP_LED_Init(LED_GREEN);
  BSP_LED_Init(LED_ORANGE);
  BSP_Enable_DCDC2();

  BSP_BC_Init();
  BSP_BC_BatMS_Init();
  BSP_BC_CmdSend(BATMS_ON);
  t_stwin = HAL_GetTick(); 
  /*配置并复位传感器片选引脚,初始化板卡*/
  InitTargetPlatform(TARGET_STWIN);

  STLBLE_PRINTF("\t(HAL %ld.%ld.%ld_%ld)\r\n"
        "\tCompiled %s %s"
#if defined (__IAR_SYSTEMS_ICC__)
        " (IAR)\r\n"
#elif defined (__CC_ARM)
        " (KEIL)\r\n"
#elif defined (__GNUC__)
        " (STM32CubeIDE)\r\n"
#endif
         "\tSend Every %4dmS Temperature/Humidity/Pressure\r\n",
           HAL_GetHalVersion() >>24,
          (HAL_GetHalVersion() >>16)&0xFF,
          (HAL_GetHalVersion() >> 8)&0xFF,
           HAL_GetHalVersion()      &0xFF,
         __DATE__,__TIME__,
         uhCCR1_Val/10);

#ifdef ENABLE_USB_DEBUG_CONNECTION
  STLBLE_PRINTF("Debug Connection         Enabled\r\n");
#endif /* ENABLE_USB_DEBUG_CONNECTION */

#ifdef ENABLE_USB_DEBUG_NOTIFY_TRAMISSION
  STLBLE_PRINTF("Debug Notify Trasmission Enabled\r\n");
#endif /* ENABLE_USB_DEBUG_NOTIFY_TRAMISSION */

  HCI_TL_SPI_Reset();

  /* 初始化蓝牙低功耗软件栈 */
  Init_BlueNRG_Stack();

  /* 初始化蓝牙低功耗服务 */
  Init_BlueNRG_Custom_Services();  

  /* 初始化定时器 */
  InitTimers();

  StartTime = HAL_GetTick();
  /* 主循环 */
  while (1){
    /* LED管理 */
    if(!connected) { 
      if(!TargetBoardFeatures.LedStatus) {
        if(HAL_GetTick()-StartTime > 1000) {
          LedOnTargetPlatform();
          TargetBoardFeatures.LedStatus =1;
          StartTime = HAL_GetTick();
        }
      } else {
        if(HAL_GetTick()-StartTime > 50) {
          LedOffTargetPlatform();
          TargetBoardFeatures.LedStatus =0;
          StartTime = HAL_GetTick();
        }
      }
    }

    /* 低功耗蓝牙时间管理 */
      hci_user_evt_proc();

    /* 更新蓝牙广播设置,使设备可以被连接 */
    if(set_connectable){
      setConnectable();
      set_connectable = FALSE;
    }

    /* 环境传感器数据管理 */
    if(SendEnv) {
      SendEnv=0;
      SendEnvironmentalData();
    }

    /* Wait for Interrupt - Activate Low Power mode*/
    /* Comment this macro if you need to debug the firmware */
    __WFI();
  }
}

将工程编译和烧录到开发板,即可运行示例程序。

2、利用ST BLE Sensor获取显示数据

ST提供ST BLESensor App应用程序用于获取STEVAL-STWINKT1的传感器数据。

https://www.st.com/en/embedded-software/stblesensor.html

在官网可以在下载到apk安装文件。

ST_BLE_Sensor_apk.png

运行应用程序,连接开发板在控制界面能通过不同的方式查看板载环境传感器数据

BLE_Sensor_Panel.png

选择Environmental选项卡,进入温度、湿度和气压传感器数据显示界面,查看相应的传感器数据。

Enviromental_Sensor_Data.png

使用Plot Data选项卡,则可以查看实时的传感器采样值。

BLE_Sensor_plot.gif

3、总结

STEVAL-STWINKT1评估套件配合ST BLE Sensor App实现低功耗蓝牙应用的完整方案,为实际的开发验证提供参考,加速使用ST芯片开发的物联网嵌入式产品。

收藏 评论0 发布时间:2026-3-23 18:51

举报

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