存储/验证嵌入式系统中的校验和

时间:2017-06-20 13:38:58

标签: c linker embedded checksum

我有一个带闪存的嵌入式系统。程序存储在闪存中。我有一个函数来计算flash的.text部分的校验和,其中存储了我的非易失性代码。我想比较计算的校验和与固定的值,并在编译时知道存储在闪存中。我在链接器中创建了一个新的flash部分。我想用0xABCD填充它,这是校验和。我怎么能在链接器中这样做?编译器是GCC

1 个答案:

答案 0 :(得分:0)

您检查求和的代码是由链接器生成的,因此无法直接在一次传递中生成链接器。

更简单的方法可能是简单地保留链接器脚本中的校验和存储区域未编程(0xFFFF),然后使用SRecord utilities之类的工具计算并添加校验和后链接。基本上做你的PROM刻录机(在评论中提到)过去做的事情。