这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » DIY与开源设计 » 电子DIY » 【Let'sdoDigiKey2026第3期】+基于STM32H533RE的开发

共1条 1/1 1 跳转至页

【Let'sdoDigiKey2026第3期】+基于STM32H533RE的开发环境搭建、LED控制与串口printf实战

菜鸟
2026-10-24 11:51:07     打赏

一、项目背景

我参加了 DigiKey 与 EEPW 联合举办的 2026 年第 3 期活动。本期活动主题为“基于边缘 AI 的电机状态检测”。在开展后续功能开发前,我先完成 ST 开发板的开发环境搭建,并验证板载 LED、蜂鸣器和串口通信。

本帖记录的是基础环境与外设功能的实现过程,后续会在此基础上继续开展项目功能验证。

活动页面:Let's do 2026 年第 3 期活动介绍

image.png

二、硬件与软件环境

硬件

  • 主控板:NUCLEO-H533RE

  • 调试与下载:开发板板载 ST-LINK

软件

  • STM32CubeMX:配置芯片、时钟及外设

  • STM32CubeIDE 或 Keil MDK:编译、下载和调试

  • 串口调试助手:查看串口输出

三、系统设计与连接说明

本阶段的控制关系如下:

电脑上的 CubeMX / IDE          │          ├── ST-LINK 下载与调试          │     NUCLEO-H533RE       ├── GPIO ── 板载 LED       ├── GPIO 或 PWM ── 蜂鸣器模块       └── UART ── ST-LINK 虚拟串口或 USB 转串口 ── 串口助手

LED、和 UART 的具体引脚,需要根据所用开发板版本、原理图及实际接线确认。配置串口前也需要确认该串口是否连接到 ST-LINK 虚拟串口。

四、开发环境搭建与外设配置

1. 创建工程

在 STM32CubeMX 中选择对应的 STM32H533RE 芯片或 NUCLEO-H533RE 开发板,配置时钟后生成适用于 STM32CubeIDE 或 Keil MDK 的工程。

2. 配置串口

启用与电脑端串口连接相对应的 USART/UART 外设,配置常用参数:

  • 波特率:115200

  • 数据位:8

  • 停止位:1

  • 校验位:无

  • 硬件流控:无

串口实例名称及引脚以实际 CubeMX 工程配置为准。下面的代码以 USART2、huart2 为例;如果工程使用其他 UART,需要相应替换。

image.png

五、基础控制代码

以下示例展示 LED 翻转、通过有源蜂鸣器发声,以及通过 UART 输出状态信息。代码假设 CubeMX 中已将 GPIO 用户标签设置为 LED、BUZZER,并启用了 USART2。

#include "main.h"#include <string.h>static void App_RunOnce(void){    const uint8_t message[] = "System ready: LED and buzzer test\r\n";    /* 通过串口输出状态信息 */    HAL_UART_Transmit(&huart2,                      (uint8_t *)message,                      sizeof(message) - 1U,                      HAL_MAX_DELAY);    /* 翻转板载 LED */    HAL_GPIO_TogglePin(LED_GPIO_Port, LED_Pin);    /* 有源蜂鸣器响一小段时间 */    HAL_GPIO_WritePin(BUZZER_GPIO_Port, BUZZER_Pin, GPIO_PIN_SET);    HAL_Delay(200);    HAL_GPIO_WritePin(BUZZER_GPIO_Port, BUZZER_Pin, GPIO_PIN_RESET);    HAL_Delay(800);}

在 main() 完成 HAL、时钟、GPIO 和 UART 初始化后,可在主循环中调用:

while (1){    App_RunOnce();}

如果使用无源蜂鸣器,不能只依赖持续的 GPIO 高电平发声,需要启动对应的 PWM 通道,并按 CubeMX 生成的定时器实例和通道配置进行控制。

image.png

六、编译、下载与功能验证

  • 使用 IDE 编译工程,确认没有编译错误。

  • 通过 ST-LINK 将程序下载到开发板。

  • 打开串口调试助手,选择与开发板实际连接的串口,并设置为 115200、8N1、无校验。

  • 复位开发板,观察 LED 是否按程序翻转、并确认串口助手能收到状态信息。

  • 预期串口输出示例:

    hello


    七、小结

    本阶段完成了 STM32 开发工程的基础搭建,并围绕 LED、蜂鸣器和 UART 输出进行了基础控制设计。这些功能为后续增加传感器采集、数据处理和电机状态检测打下了基础。接下来将结合活动主题继续完善系统功能,并补充实际测试数据与运行效果。



共1条 1/1 1 跳转至页

回复

匿名不能发帖!请先 [ 登陆 注册 ]