骨架篇 · 6d
四道门 ④:晚一拍
第 4 道门 hw_ready_state 在 1102.45 毫秒开了,PP 却到 1102.55 毫秒才开始跑。拆开一拍位置环:测试台在编译时把 motor_ctl_loop.c 里的调用改名接到记录函数上(源码不改),把每一次调用按顺序连同它留下的数值记下来。一拍分四步:读编码器 → 应用层(AppRun)→ 控制层 → 开关输出、写 hw_ready_state。AppRun 在第 2 步读,hw_ready_state 在第 4 步才写,所以那一拍读到的是 0,像老师点完名学生才签到;控制层的 ModeRun 也一样。指令却不晚:规划器第 2 步写出 39228,同一拍第 3 步就变成 0.0118 安的 iq 目标,50 微秒后比较值变成 3296/3297/3305。规矩:一拍里写在后面的值,要到下一拍才被看到。全部来自真实运行的调用记录。