Ivan's Blog
项目实践

stm32g4-flash-programmer

Tooling repo for programming/flashing STM32G4 devices; includes multiple Rust crates (firmware/host/protocol) plus examples and scripts. Evidence: README.md, firmware/Cargo.toml, host-tool/Cargo.toml, protocol/Cargo.

目录

技术栈

运行与交付

CI 工作流
  • ci.yml
  • dependencies.yml
  • release.yml
能力标记
  • github_actions
JSON

Basics

Tooling repo for programming/flashing STM32G4 devices; includes multiple Rust crates (firmware/host/protocol) plus examples and scripts. Evidence: README.md, firmware/Cargo.toml, host-tool/Cargo.toml, protocol/Cargo.toml.

Architecture

  • Split into concerns: on-device firmware (firmware/), host-side tool (host-tool/), shared protocol (protocol/). Evidence: firmware/, host-tool/, protocol/.
  • Examples are checked in under examples/ to validate board-specific flows. Evidence: examples/.

Conventions

  • Automation: repo has a CI helper script and Makefile for common flows. Evidence: test-ci.sh, Makefile.
  • Docs: has docs/ to capture developer workflows and usage. Evidence: docs/, README.md.

Taste notes

The explicit tri-split (firmware/host/protocol) is a clean pattern for embedded tooling projects and scales well as features grow.