我在dsPic33EP256MC502应用程序上工作,我需要用闪存来保存配置。所有的工作,除了擦除页面,我抹了太多或太多。
数据表说页面擦除页的大小是"1024指令“(3072字节),因为指令是24位+幻影字节,指令是32位对齐的。我们需要两个地址单元来寻址指令
例子:
0x000000 : [Phantom] [Instruction1] [Instruction1] [Instruction1] 0x000002 : [Phantom] [Instruction2] [Instruction2] [Instruction2] 0x000004 : [Phantom] [Instruction3] [Instruction3] [Instruction3] 0x000006 : ...A/天真地计算1024指令页面大小,如下所示:
B/ I做了一个实证检验,我发现0x600每页地址,这意味着1024条指令是:
我不明白数据表是如何计算带或不带幻影字节的指令的,三个或四个字节?每页有多少个地址?
有人能帮我理解我的错误和/或得到一个好的观点吗?
发布于 2016-06-16 16:19:58
我现在确认1024条指令擦除页面是:
要小心测试擦除页对齐,因为如果你在页面中的某个地址擦除一页,整页就会被擦除,这就是为什么我的实证结论是错误的。
第0页: 0x000000至0x0007FE
第1页: 0x000800至0x000FFE
第2页: 0x001000至0x0017FE
第3页: 0x001800至0x001FFE
第4页: 0x002000至0x0027FE
..。
第84页: 0x02A000至0x02A7FE
第85页: 0x02A800至0x02AFFE (最后一页包含闪存配置字节)
第86页: 0x02B000 (不存在页)
https://stackoverflow.com/questions/37844082
复制相似问题