Files
ESP32S3_vt/armor/armor-firmware/Cargo.toml
T
Horldsence a30eb3200a armor: ESP32-C3 装甲板固件(一主三从)+ 烧录脚本,之前一直没提交
这一块代码本来就写好了、根 README 里也按"已实现"描述,但一直没有进仓库,
只存在于工作区里。同一个提交里带上 `.env.example` 的两个新变量(ARMOR_TEAM、
ARMOR_THRESHOLD)——它们的说明文字就是为这套固件写的。

内容:
- armor-protocol:规则层(血量、每板独立 50ms 受击冷却、受击后只有那一路灯带全黑、
  按键 FSM、上报编码)。纯计算,主机上 22 个测试,已跑通。
- armor-firmware:四路压电片 ADC 连续采样、四路 WS2812(C3 只有一个 RMT 通道可用,
  靠 rmt_tx_switch_gpio 轮流驱动)、NVS、BOOT 键、WiFi + UDP 广播。
- scripts:build_armor.sh / flash_armor.sh / armor_probe.py(不开界面单看广播)。

armor/ 是独立 workspace(目标 RISC-V 的 ESP32-C3),与外层 Xtensa 的图传固件互不相干,
各自 .cargo/config.toml 就是这条边界。构建产物由根 .gitignore 的 `/armor/target/` 覆盖,
本次没有把任何 target/ 或 build/ 下的东西加进来。

顺带把 `.DS_Store` 加进 .gitignore。
2026-10-14 19:43:14 +08:00

27 lines
811 B
TOML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
[package]
name = "armor-firmware"
version = "0.1.0"
edition = "2021"
resolver = "2"
rust-version = "1.82"
# 一个 bin:主板固件。三块"从"装甲板里没有 MCU,只有一路 WS2812 + 一路压电片
# 直接接在主板 GPIO 上,所以没有第二份固件可烧(见 armor/README.md)。
[[bin]]
name = "armor"
path = "src/main.rs"
harness = false # 不在固件里跑主机测试框架;规则层的测试在 armor-protocol
[dependencies]
log = "0.4"
anyhow = "1"
embedded-svc = "0.29"
esp-idf-svc = "0.53"
# 规则层 + 线路格式:血量、去抖、按键、灯带输出,以及上报给裁判终端的
# `protocol::ArmorHealth`(armor-protocol 再导出)。规则层能在主机上单测。
armor-protocol = { path = "../armor-protocol" }
[build-dependencies]
embuild = "0.33.5"