原理图/PCB 已在 EasyEDA 里做到 12 页跨页 0 漏接,固件刚完成骨架包 A1。 这次是把已有的一切一次性纳入版本控制,没有改动任何设计内容。 纳入: - 设计与需求文档、PROGRESS.md、小米8 参考原理图 PDF 与追脚脚本 - .claude/ 下的 EasyEDA 桥接工具链与几何/网表缓存(eda-parts.json、 pcb-parts.json、pcb-pads.json、p2-ch1.json 等,是重画各页的唯一事实来源) - 117 张验证截图(本项目所有方向问题都是靠人眼看截图发现的,属于证据不是垃圾) - firmware/ 的 A1 骨架与 site/ 文档站源码 .gitignore 排除:构建产物(firmware/build、host/build、sdkconfig)、 site/node_modules、__pycache__、桥接日志 _bridge.log、脚本自标的 *.stale。 .gitattributes 默认 `* -text`:现有 .py/.json 大多是 CRLF,原样存, 不让 git 重写行尾。唯一例外是 *.sh 强制 LF —— 带 \r 的 shell 脚本 bash 跑不了。 Co-Authored-By: Claude Opus 5 <[email protected]> Claude-Session: https://claude.ai/code/session_01QYuExfgyYa6DzRRcUso8M8
53 行
2.9 KiB
XML
53 行
2.9 KiB
XML
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 900 466" role="img"
|
||
aria-label="分层与职责边界:上位机做崩溃判定,ESP32 只做遥测执行记录,保护在硬实时层">
|
||
<defs>
|
||
<marker id="lg-arw" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse">
|
||
<path d="M0 0 L10 5 L0 10 z" class="dg-head"/>
|
||
</marker>
|
||
</defs>
|
||
|
||
<!-- 上位机 -->
|
||
<rect x="150" y="10" width="600" height="58" rx="8" class="dg-panel"/>
|
||
<text x="450" y="34" class="dg-th dg-c">农场管理系统(既有,本项目不交付 —— N7)</text>
|
||
<text x="450" y="55" class="dg-s dg-c">adb 探活 · 业务调度 · 崩溃判定</text>
|
||
|
||
<!-- 业务面 -->
|
||
<line x1="270" y1="68" x2="270" y2="150" class="dg-wire" marker-end="url(#lg-arw)"/>
|
||
<text x="262" y="103" class="dg-s dg-r">adb over WiFi</text>
|
||
<text x="262" y="119" class="dg-s dg-r">业务面</text>
|
||
|
||
<!-- 控制面 -->
|
||
<line x1="630" y1="68" x2="630" y2="150" class="dg-wire" marker-end="url(#lg-arw)"/>
|
||
<text x="642" y="97" class="dg-s">控制面(SW-12)</text>
|
||
<text x="642" y="113" class="dg-s">WiFi 常态</text>
|
||
<text x="642" y="129" class="dg-s">USB CDC 兜底</text>
|
||
|
||
<!-- 手机 -->
|
||
<rect x="120" y="150" width="300" height="66" rx="8" class="dg-box"/>
|
||
<text x="270" y="181" class="dg-t dg-c">5 台小米8 主板</text>
|
||
<text x="270" y="200" class="dg-s dg-c">业务负载</text>
|
||
|
||
<!-- 控制器 -->
|
||
<rect x="480" y="150" width="300" height="66" rx="8" class="dg-box dg-key"/>
|
||
<text x="630" y="181" class="dg-t dg-c">PhoneRail 控制器 · ESP32-S3</text>
|
||
<text x="630" y="200" class="dg-s dg-c">遥测 · 执行 · 记录</text>
|
||
|
||
<!-- 控制器 → 手机 -->
|
||
<line x1="480" y1="183" x2="420" y2="183" class="dg-wire" marker-end="url(#lg-arw)"/>
|
||
<text x="450" y="240" class="dg-s dg-c">供电 · 侧键 · EDL · VBUS</text>
|
||
|
||
<!-- 控制器 → 硬实时层 -->
|
||
<line x1="630" y1="216" x2="630" y2="292" class="dg-wire" marker-end="url(#lg-arw)"/>
|
||
<text x="642" y="258" class="dg-s">只能建议,不能否决</text>
|
||
|
||
<!-- 硬实时层 -->
|
||
<rect x="120" y="292" width="660" height="96" rx="8" class="dg-panel dg-hard"/>
|
||
<text x="450" y="318" class="dg-th dg-c">硬实时层 —— 不含任何软件</text>
|
||
<text x="450" y="341" class="dg-t dg-c">eFuse 独立 OVP / 限流(SR-3) · 放电 MOS 与 EN 反相联锁(SR-7)</text>
|
||
<text x="450" y="362" class="dg-t dg-c">EFUSE_EN / VBUS_EN / 栅极的上下拉电阻(SR-6)</text>
|
||
<text x="450" y="381" class="dg-s dg-c">凡是「必须及时」的事都已经在这一层里,固件跑不到也烧不了手机</text>
|
||
|
||
<text x="450" y="424" class="dg-s dg-c">因此固件是「遥测 + 执行器 + 记录仪」,不是保护装置</text>
|
||
<text x="450" y="446" class="dg-s dg-c">看门狗复位是可接受的失效(复位即全关);上位机失联则什么都不做(§10.2)</text>
|
||
</svg>
|