乘简 发表于 2026-4-21 13:44:22

发现UART-ISP-bootloader-demo范例程序中有一处BUG!

不知道是哪个大聪明写的,,,被我发现一处BUG。



狂热主宰 发表于 2026-4-21 14:55:02

变量UartRecvSum可能什么情况
可能总有UartRecvSum > 0

乘简 发表于 2026-4-21 17:09:29

狂热主宰 发表于 2026-4-21 14:55
变量UartRecvSum可能什么情况
可能总有UartRecvSum > 0
第1、有一定概率 等于 0的。。。

第2、即使正好不为0,要是中间错掉1位就完蛋了,要是发射火箭的程序,那问题就大了。。。

乘风飞扬 发表于 2026-4-21 18:18:37

例子升级软件发送命令时最后的校验码是前面数据累加和的补码(ADD8-N):


用户ISP程序接收串口数据后,UartRecvSum是将前面是数据累加和(ADD8)再加上收到的校验码(ADD8-N),结果为0才是正确的。
例如:
页: [1]
查看完整版本: 发现UART-ISP-bootloader-demo范例程序中有一处BUG!