工具/软件:
我 在写入 FRAM2时遇到问题、没有错误或警告、但写入不会执行。
我将测试代码最小化到这个,读取工作,但写入没有任何作用。
请提供建议!
lnk_msp430fr5994.cmd:
...
}> 0x4000
main.c:
pragma DATA_SECTION (帧2、".storage")
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具/软件:
我 在写入 FRAM2时遇到问题、没有错误或警告、但写入不会执行。
我将测试代码最小化到这个,读取工作,但写入没有任何作用。
请提供建议!
lnk_msp430fr5994.cmd:
...
}> 0x4000
main.c:
pragma DATA_SECTION (帧2、".storage")
我看不到在哪里启用 FRAM。 对于您的用例(高 FRAM)、您可以使用 MPU 来实现此目的。
一个快速的实验就是禁用 MPU (取消选中 Build Settings->General->MPU[tab]->Enable MPU)。 该写入操作启用所有 FRAM。
如您所想、这种方法从长远来看并不是很好。 您可以使用 MPU[Tab](如上所示)更改 FRAM 区域的 RWX 设置。 数据表提供了存储器布局。
您也可以使用"#pragma PERSISTENT ()"创建可写 FRAM。 对于此功能、编译器/链接器会为您执行 MPU 工作、 但.TI.persistent 段被置于低 FRAM 中、因此大小受到限制。 这在示例 msp430fr599x_framwrite.c 中进行了演示、此处为:
https://dev.ti.com/tirex/explore/node?node=A__AAkb-Bq6Hd25qRBlFc08Zw__msp430ware__IOGqZri__LATEST
[编辑:更正了拼写错误。]