Assembly 如何在STM8S控制器中验证代码的内存校验和

Assembly 如何在STM8S控制器中验证代码的内存校验和,assembly,stm8,Assembly,Stm8,我使用的是“STM8103F3”控制器。我想在我的代码中执行ROM测试,但我找不到可以验证“内存校验和”的寄存器。内存校验和我可以得到我的“ROM”字节,但我面临的问题是如何验证。谁能在这个问题上帮助我 简单的回答: 这是不可能的 为什么? 如果微控制器有这样一个功能,它除了简单地将闪存中的所有字节相加之外,什么都做不了 如果闪存中有错误,它将计算与您计算的校验和相同的错误校验和。你会将你的错误校验和与微控制器的错误校验和进行比较,只会发现它们是相同的 该怎么办 在汽车工业中,您将在将程序写入闪

我使用的是“STM8103F3”控制器。我想在我的代码中执行ROM测试,但我找不到可以验证“内存校验和”的寄存器。内存校验和我可以得到我的“ROM”字节,但我面临的问题是如何验证。谁能在这个问题上帮助我

简单的回答:

这是不可能的

为什么?

如果微控制器有这样一个功能,它除了简单地将闪存中的所有字节相加之外,什么都做不了

如果闪存中有错误,它将计算与您计算的校验和相同的错误校验和。你会将你的错误校验和与微控制器的错误校验和进行比较,只会发现它们是相同的

该怎么办

在汽车工业中,您将在将程序写入闪存之前计算校验和(例如,您使用十六进制文件计算校验和)

然后将计算出的校验和写入微控制器的闪存。当然,在计算校验和时,必须去掉存储校验和的内存区域

要进行检查,请计算闪存(在微控制器上)上的校验和,并将其与将程序写入闪存之前计算的校验和进行比较。

简单回答:

这是不可能的

为什么?

如果微控制器有这样一个功能,它除了简单地将闪存中的所有字节相加之外,什么都做不了

如果闪存中有错误,它将计算与您计算的校验和相同的错误校验和。你会将你的错误校验和与微控制器的错误校验和进行比较,只会发现它们是相同的

该怎么办

在汽车工业中,您将在将程序写入闪存之前计算校验和(例如,您使用十六进制文件计算校验和)

然后将计算出的校验和写入微控制器的闪存。当然,在计算校验和时,必须去掉存储校验和的内存区域


要进行检查,请计算闪存(在微控制器上)上的校验和,并将其与在将程序写入闪存之前计算的校验和进行比较。

感谢输入谢谢输入