把 nanoMODBUS 接进 VelaGuard:从零到 RTU 主站跑通

把 nanoMODBUS 接进 VelaGuard:从零到 RTU 主站跑通 面向初学者的垂直教程。目标:在 app/velaguard 里接入 nanoMODBUS(MIT,约 2000 行 C 的 Modbus RTU/TCP 协议栈),用 modbus_port_openvela.c 做串口适配层,再写一个 modbus_collector(NSH 命令 vgmodbus)实现 Modbus RTU 主站,能周期读取 一个从站的保持寄存器。 ...

August 15, 2026 · 8 min · 19y

从插上网线到云端收到“设备在线”:velaguard-net 最小网络闭环拆解

面向初学者的垂直技术博客。本文以仓库里一个真实完成的任务为蓝本: openvela 竞赛项目里的「阶段 1 最小网络闭环」(RJ45 以太网 → MQTT → LWT 遗嘱消息),对应提交 4954841 feat(net): stage-1 RJ45+MQTT min loop。 ...

August 14, 2026 · 18 min · 19y

STM32H750B-DK 的 QSPI-XIP 构建、烧录与启动机制

本文解释本项目在 STM32H750B-DK 上使用外部 QSPI 作为主镜像、片内 Flash 作为启动 stub 的完整链路。重点不是“执行哪条命令”,而是说明: 地址为什么是 0x08000000 和 0x90000000 两套空间; Kconfig 如何影响链接脚本,链接脚本如何影响 ELF、HEX 和 BIN; 为什么板上需要两个持久化镜像; STM32CubeProgrammer 的 External Loader 到底是什么; boot stub 如何把 QSPI 变成 CPU 可以直接取指的 XIP 地址; 烧录成功但不能启动时,应该从哪里开始定位。 本文对应我们在 openvela 项目中的实际实现,主要参考资料包括项目仓库里的 windows_build_openvela.ps1、windows_flash_cube.ps1、QSPI 补丁 openvela-qspi-boot-stm32h750b-dk.patch、boot stub 源码 stm32h750b_qspi_bootstub.c 与链接脚本 stm32h750b_qspi_bootstub.ld, 以及配套的 Windows 编译/烧录/调试指南。 ...

August 11, 2026 · 14 min · 19y

CubeMX关于刹车输入的一个小BUG

STM32CUBEMX在配置定时器PWM输出的刹车输入引脚时 要注意配置的刹车极性和对应引脚的上下拉模式是否相反 若不相反,则会导致复位启动时无法产生对应的波形。 ...

May 24, 2025 · 1 min · 19y