wandering1
|
69d70af4cf
|
docs: 零点记录表改为与 adc 日志同序,补实测数据
台架首次实测暴露一处抄数陷阱:adc: 日志列序是 UA UB UC UN IA
IB IC IN,而记录表按语义分组排成 UA UN IA / UB UC IB IC IN。
照日志从左往右抄进表格从上往下,UN/IA 就填成了 STM32 的 ~1000、
UB/UC 填成了 TPAFE 的 ~11450 —— 而 UN/IA 属 TPAFE、UB/UC 属
STM32,这两个量级在物理上不可能,看起来像"数据全错"。
- 记录表行序改为与 adc: 日志完全一致,并加"转换器"列,量级对不上
时一眼能看出来
- 表前加警示,把这次踩坑的经过写成具体例子(不写"注意顺序"这种
空话,写清错在哪、错成什么样)
- 补"怎么抄短接后的数":只抄该路那一列,别贴整行;塌到 0 的不是
你以为那一路,属映射问题转 §5.4,不是零点问题
- 补一句"短接后读到 0 是短接到位,不是取数失败"
- 记 2026-10-27 首次实测空载值(按日志列序归位):UA 11429 /
UB 1044 / UC 954 / UN 11453 / IA 11451 / IB 1040 / IC 1062 /
IN 980,与 18:04 烧录后开机日志一致
§8 已知坑按属主决定删除,不再保留。
|
2026-10-27 18:33:18 +08:00 |
|
wandering1
|
00f9958cbb
|
docs: ADC 注入流程记录表并入各步,删 §9 与变更记录
原来"§5 步骤"只给判据、表格集中在 §9,台架现场要来回翻页;
现在每步末尾就是该步的填表处,边做边填。
- §5.2 零点:参考表与记录表合成一张,8 路逐行留空
- §5.3 三点线性:目标/实测/码值/反算 + 两片转换器期望码同表
- §5.4 逐通道映射:8 行,含"是否符合预期"列
- §5.5 极性:三路 × 正负两点 + 对称性偏差
- 删 §9「记录表」整节与「变更记录」小节,章节回到 1~8
- §4 与 §5.4 里指向 §9 / 附录表的引用改为"本节记录表"
- docs/README.md 目录描述同步为"每步自带现场记录表"
变更记录虽按 docs/文档规范.md 表格属"建议"保留项,但本文是台架
作业指导书,历史沿革查 git log 即可,正文只留当前有效动作。
|
2026-10-27 17:57:11 +08:00 |
|
wandering1
|
2b4c0e97c2
|
docs: ADC 注入流程 §4 补码值刻度图
§4 的「码」定义表只有文字与数字,台架现场容易把 TPAFE 的
152.59 µV 与 STM32 的 805.66 µV 混着用。新增一张刻度尺对照
图(docs/images/ADC码值刻度.svg),上下两把尺子分别标出
11430 码 ≈ 1.744 V 与 1000 码 ≈ 0.806 V,把"同一整数在两片
转换器上代表不同电压"变成可见的;正文补一句两把尺子差 5.3
倍、§9 每格必须写明所属通道。
生成器 tools/arch_diagram/gen_adc_code_scale_svg.py 沿用图形绘制
流程 §3.2 约定(纯标准库 / html.escape / newline="\n" /
ElementTree 自检 + 文字溢出预检);码制与 LSB 数据集中在
PANELS 常量,换芯片才重画。已登记到 tools/arch_diagram/README.md
与 docs/架构设计/图形绘制流程.md 的生成器表 + 变更记录。
目检用无头 Chrome 截图完成(cairosvg 未装,截图不入库)。
|
2026-10-27 17:25:51 +08:00 |
|
wandering1
|
e50d2b5cf0
|
docs(adc): §4 补「码」的定义与两片转换器的刻度对照
用户反馈"码这个单位第一次见"。补一张刻度对照表:
- TPAFE5160 16 位双极性,−32768~+32767,1 码 152.59 µV
- STM32 ADC1 12 位单极性,0~4095,1 码 805.66 µV
带换算示例(11430 码 ≈ 1.744 V,与 cal: 行 1743 mV 自洽),
并写明本文为何一律用码:固件打印的就是码,且把码换成伏正是本次
要验证的事,先换算等于默认了未验证的系数。
|
2026-10-27 17:19:13 +08:00 |
|
wandering1
|
c92d503851
|
docs(adc): 修 §5.2 表格渲染,讲清零点这步怎么填
原表单元格里写了未转义的竖线(绝对值符号),被 GFM 当成列分隔符,
整张表渲染成乱码,看不出要填什么。§6 判据汇总同病同修。
同时把这一步的操作讲清楚:
- §5.2 补"做什么"四步:断电短接 → 上电读 adc: → 抄进 §9.1 → 断电换下一路
- 明确本节只给判据,要填的表在 §9.1(原表看着像表单,实际是参考值)
- §9.1 记录表加"空载码值(浮空)"列与填法说明,让空载与短接两个数都留痕
表格列数已用脚本复检三份相关文档,全部对齐。
|
2026-10-27 17:17:03 +08:00 |
|
wandering1
|
dc9ae01f50
|
docs(adc): 更正步骤 0 判据——端子对 AGND 不是 1 kΩ
原判据写"端子侧应量到 1 kΩ 量级(串阻 + 转换器输入阻抗并联)",两处错:
1. 端子到 AGND 是串联通路:R31(1k) → AIN_7P → 芯片内部 1 MΩ →
AIN_7GND → R32(1k) → AGND,合计约 1.002 MΩ。1 kΩ 只在串阻两端成立。
2. 芯片输入阻抗是 1 MΩ 恒定(TPAFE5160 手册 "Analog Input
Impedance" 节),量级上与 1 kΩ 并联不出 1 kΩ。
改为三行分测表:串阻两端 ≈1 kΩ / TPAFE 侧对 AGND ≈1 MΩ /
STM32 侧对 AGND 高阻不定量。并写明本步只排除短路、不验收正确性。
顺带把手册的匹配要求写进去:AIN_nP 与 AIN_nGND 两侧外接源阻抗
要相等以抵消失调误差,R31 / R32 各 1 kΩ 即为此——这就是 R32 的
存在理由(匹配,不是分压),补强"本板无分压"的结论。
ADC通道映射说明.md §7「前端偏置」行同步补 1 MΩ 与匹配依据。
|
2026-10-27 17:12:54 +08:00 |
|
wandering1
|
9163a92d3b
|
docs(adc): 前端拓扑改 SVG,③ 段定死 1:1(本板不是分压器)
ASCII 拓扑图把 C44 / R32 画成挂在 ADC7 下的一根竖线,读起来像 2:1 分压,
恰是文档要否掉的结论。改为两个节点分开画的 SVG,并加 STM32 侧对照面板。
- 新增 tools/arch_diagram/gen_adc_frontend_svg.py →
docs/images/ADC前端电路.svg(纯标准库 + 文字溢出预检 + 幂等重跑)
- docs/测试说明/ADC前端注入验证流程.md §2、docs/硬件平台/
ADC通道映射说明.md §7.1 的 ASCII 图换成该 SVG
- ③ 段(AINn ↔ 转换器引脚)定死变比 1:1:ADCn 节点只有
{串阻.2, 滤波 C, 转换器引脚},无对地元件;"1k 到地"接在差分负端
- 305.18 / 1611.3 µV/码(读法 A)作废;数据可信.md §2.1 表改为
引脚侧系数 152.59 / 805.66,卡 0 判据从"判别两种读法"降为
"确认转换器 LSB 与逐通道映射"
- 顺带修 ADC通道映射说明.md §8 步骤 1 的 §5.1 自引用误判
(文档名以 V0.0 开头被前缀规则误认,改写成全路径形式)
门禁:Keil 无关(纯文档 + 生成器);check_ids --strict、
check_doc_links --all --sections-strict、pre-commit 全过。
|
2026-10-27 17:08:56 +08:00 |
|
wandering1
|
343305b433
|
feat(adc): 心跳新增 adc: 行输出 9 路原始码值,并补卡 0 台架注入验证流程
背景:ADC 采集的软件链路已全部打通(节拍、语义取数、折算、相量、
200 ms 快照、104/UI 消费),但"读数对不对"从未验证过——卡 0 的
已知电压注入一直挂账。挂账的直接原因之一是读数出口不够用:
固件只有 cal: 行(UA/UN/IA 三路,mV)与 first: 行(9 路码值,仅
开机一次),验 8 个通道 × 3 个注入点要复位二十余次。
改动一(App/task/adc_task.c,v3.3)
- 心跳新增 adc: 行,每 10 s 输出 9 路原始码值,与 first: 行同序
同格式,台架"改电压 → 读一行"即可对表,全程免复位。
- 不并入 cal: 行:9 个码值会把该行推到 168 字符,撞
DBG_CON_LINE_MAX(192) 的静默截断边界(截断不报错,只会少打几路,
是最难发现的台架假数据来源)。
- 无新增跨任务状态、无新增外设访问;栈 +36 B(局部码值数组),
adcTask 静态最坏 1400 B / 余量 1160 B(底线 1024 B),stack_report
PASS;静态 RAM 不变,Flash +188 B。
改动二(新增 docs/测试说明/ADC前端注入验证流程.md)
- 卡 0 的执行侧:注入点清单、期望码值表、零点/线性/映射/极性/节奏
五步、现场记录表、安全红线、已知坑。
- 固化 2026-10-27 的网表结论:逐通道追 V0.1.tel 确认 ADCn 节点上
只有"串阻 2 脚 + 滤波电容 + 转换器引脚",没有对地分流电阻;所谓
"1k 到地"是 TPAFE 负输入脚 AIN_nGND 经 1k 拴到 AGND 的差分滤波。
故本板不存在 2:1 分压,端子侧斜率 = 引脚侧斜率 = 6553.6 / 1241.2
码/V。数据可信.md §2.1 的 305.18 / 1611.3 µV/码 确认不成立。
- 不验交流:台架无信号源,且五路单极性削顶。
改动三(索引与指针)
- docs/README.md 测试说明索引、测试文档模板规范.md 的 ADC 缩写行
(原"待立")同步。
- 数据可信.md 卡 0 增加指向该流程的指针(本表只写判据,不写怎么
接表笔)。
门禁:Keil 构建 0 错误 0 警告;check_ids --strict 通过;
check_doc_links --all --sections-strict 通过(193 文档 / 2871 处引用);
pre-commit 全过(含 cppcheck、编码规范、体积档、标定层与量纲回归
单测);两处内存台账已按 --write / --update 刷新。
|
2026-10-27 15:14:07 +08:00 |
|