|
NUCLEO G474RE 评测一 这次使用 NUCLEO-G474RE 开发板,我从工程编译和烧录开始,逐步完成了双通道模拟采集与故障诊断演示。板载 ST-LINK、虚拟串口和 LD2 指示灯让前期调试比较集中:一根 USB 数据线就能承担供电、下载和日志输出。本文先记录开发环境、烧录结果,以及搭建过程中遇到的问题。 从板载资源确定评测内容NUCLEO-G474RE 搭载 STM32G474RE,采用 Nucleo-64 板型,提供 Arduino 和 ST morpho 扩展接口。STM32G474RE 的 Cortex-M4 内核最高支持 170 MHz,并集成 ADC、DAC 等模拟外设。这些资源为板上信号生成和采集提供了条件。本次程序使用 HSI 16 MHz 时钟,评测重点是外设协作和开发流程,没有进行最高主频下的性能测试。[1][2] 我选择了一个容易复现的实验:先由 DAC 输出分档直流信号,再把它接回 ADC 的两个输入通道,通过串口观察结果,最后改变其中一路接线,检查程序能否识别差异。这样可以逐步检查 GPIO、串口、ADC、DMA 和 DAC,也便于在出现问题时定位环节。 图1 NUCLEO-G474RE 板卡全景与 ST-LINK USB 连接 开发工具与工程组织本次使用 STM32CubeMX 6.15.0 配置外设,采用 CMake 3.28.1、Ninja 和 Arm GCC 13.3.1 构建工程,再通过 STM32CubeProgrammer 下载程序。固件使用 STM32 HAL,主循环中执行演示逻辑,没有引入操作系统。 工程保留 G474RE_Evaluation.ioc,ADC1、DMA、DAC1、LPUART1 和 PA5 的初始化由 CubeMX 生成代码负责。采样处理、分档输出、状态判断与 LED 控制集中在 Src/demo.c。外设配置和演示逻辑分开后,核对引脚、修改阈值和阅读程序都比较方便。 在工程目录中使用本机配置好的 LocalDebug 预设,可以完成配置与干净构建: cmake --preset LocalDebug 完整 Demo 的 Debug 和 Release 均已完成干净编译,并生成 ELF、BIN 产物。ELF 可用于下载和调试,BIN 则便于按指定 Flash 地址烧录。复现时需要先调整本机预设中的工具路径,避免 CMake 误用电脑上的宿主机编译器。 通过 ST LINK 完成连接和烧录开发板通过板载 ST-LINK USB 接口连接电脑后,在 STM32CubeProgrammer 中选择 ST-LINK 连接。此次连接记录识别到 NUCLEO-G474RE,Device ID 为 0x469,说明下载器已经能够与目标 MCU 通信。 下载使用 Debug ELF,程序起始地址为 0x08000000。实际日志显示 File download complete 和 Download verified successfully,随后程序启动成功。下载后校验确认了写入结果;接下来还需要观察程序运行,判断初始化和外设配置是否符合预期。 让串口和指示灯共同反馈运行状态基础 GPIO 验证使用 PA5 对应的板载 LD2。完整 Demo 保留这颗灯作为状态指示:正常时慢闪,检测到两路输入不一致时快闪。现场已经观察到这两种现象,后续文章将结合串口状态介绍对应的接线。 电脑本次识别到的 ST-LINK 虚拟串口为 COM3,串口助手设置为 115200、8 数据位、无校验、1 停止位、无流控。打开串口并复位后,能够收到 STM32G474RE UART OK,以及 ADC 码值、电压换算值、DAC 目标和运行状态。COM 号由电脑分配,换一台电脑时应重新查看设备管理器。 串口固定字符串只能说明这段输出正在运行,采集数值是否随接线变化还要继续验证。对外设演示而言,同时保留日志和状态灯很实用:日志能解释程序判断了什么,LED 则方便在不盯着电脑时观察状态。 CubeMX 再生成时遇到的路径问题搭建过程中,CubeMX 命令行生成 CMake 工程时出现了绝对路径重复拼接,并记录 FileNotFoundException。当前构建文件已经修正,现有工程能够编译,但直接重新生成后能否无需修复就完成构建,仍需要进一步解决和验证。 因此,修改 .ioc 前应保留工程备份;生成后检查日志和 CMake 引用的源文件路径,再重新编译。不能只根据生成界面的完成提示判断整个流程正常。这也是本次工具链使用中最明显的维护问题。 这一阶段的使用体会板载 ST-LINK 和虚拟串口减少了外部调试硬件的接线,LD2 也能直接承担运行反馈。经过构建、下载校验和串口输出检查,后续 ADC、DAC 调试已经有了可用的观察通道。对于想学习 STM32 模拟外设的开发者,这套起步方式容易把每一步的结果看清楚。 下一篇将把 A2 的 DAC 输出接到 A0、A1,记录四个档位下的双通道采集结果,并说明串口电压读数应如何理解。 参考资料[3] ST 板卡使用手册 UM2505 |
学习有奖 | 《STM32CubeMX2 实战课程》打卡学习,精通工程配置与代码移植
文末有福利 | ST PowerGaN:引领电力能源领域高效化、小型化技术革新(下)
【免费评测】STM32H5 新品 ——NUCLEO H5E5ZJ 开发板测评活动
双节狂欢 | 中秋遇国庆,实战&互动&福利享不停!
#双节活动#STM32Cube for VS Code的开发经验
体验官招募|300套STM32C5开发板免费试用,千元现金奖励等你来拿!
学习有奖 | 打卡《STM32 MCUBoot 安全启动与固件升级》课程,筑牢固件安全能力
把安全做进产品全生命周期|CRA 安全月三场系列直播重磅来袭
【粉丝福利】2026 ST中文论坛年中粉丝福利活动
STM32N6视频打卡学习
微信公众号
手机版