我正在开发一个Arduino Due Board(ATSAM3X)项目,我正在使用Atmel Studio7和ASF。 我想知道如何读取闪存块/区域,计算CRC32或简单的校验和存储器,数据表非常混乱,EEFC模块描述了如何在flash中写入或如何读取“唯一标识符”,但不是如何读取地址闪光范围。
如果某人有我可以阅读的示例代码或文档,我将不胜感激。
最好的关心每个人。 马可
答案 0 :(得分:0)
你可以使用
char *ptr = <start address of the required memory block>;
然后从ptr开始阅读。
你碰巧提到你要计算校验和。计算正在运行的程序的校验和有一个缺点,即程序数据部分(包含其他内容的变量赋值的部分)随着程序的执行而改变。仅计算文本部分的校验和,该程序在整个程序中保持不变。有关详细信息,请参阅代码部分。