项目实践
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
配置与质量
- 配置文件
- .gitignore
- .markdownlint-cli2.yaml
- lefthook.yml
JSON
{
"ci_workflows": [
"ci.yml",
"dependencies.yml",
"release.yml"
],
"configs_root": [
".gitignore",
".markdownlint-cli2.yaml",
"lefthook.yml"
],
"markers_present": [
"github_actions"
]
}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.