AT89C51 / 测试记录

流水灯能执行,原图参数需调整

用户确认条件:5V · 12MHz · 8 路低电平点亮 · 每灯约 201ms

原参数未通过电气检查。120Ω LED 电阻负载过重;200Ω 复位电阻在慢速上电时可能无法自动复位。下方灯光展示的是已验证的测试程序逻辑。

查看流水灯运行记录

Keil 实际执行记录

回放 P0 寄存器的真实采样:两轮流水灯后全部熄灭。亮灭由逻辑值换算,亮度未模拟;不是实时 Proteus 仿真。

全部熄灭
0.000000 sP0 = 0xFF

电路仿真发现了什么

原图单脚负载需求 / 120Ω20.85 mA超过 AT89C51 单脚 10mA 稳态上限
对照单脚负载需求 / 1.5kΩ2.20 mA八灯全亮约 17.57mA,低于 P0 端口 26mA 上限

负载需求是在 5V 电源、引脚低电平夹位 0.45V、示例黄色 LED 模型下测得,包含 10kΩ 上拉电流。过载芯片的真实输出电压和电流不由此模型预测。

120欧与1.5千欧的单脚负载需求对比,以及10毫秒上电时200欧和10千欧的复位波形
复位测试原图 200Ω对照 10kΩ
10ms 电源爬升结束时 RST0.99V:未达到有效高电平4.73V:达到有效高电平
上升结束后的有效高电平窗口0ms约 27.5ms
更慢的 100ms 上电未通过仍未通过

建议将八只 LED 电阻改为 1.5kΩ,复位电阻改为 10kΩ 后再验证实物。若电源启动速度不确定,应使用合适的复位监控器。原始复刻图未被改动。

流水灯对应的电流波形

真实 Keil 采样记录驱动 ngspice 的单向负载模型;1.5kΩ 对照的 16 个亮灯区间全部对应正确支路。模型没有将模拟电气状态反馈给单片机。

八路LED电流依次出现并重复两轮的波形

范围与复现文件

测试程序构建无错误、无警告,已执行两轮。没有验证未知原程序、晶振模拟起振、真实芯片过载行为、板卡供电去耦或实际器件容差,也没有向实物烧录。

查看本次检查对应的原图复刻原参数AT89C51电路复刻图