工具与软件:
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.
工具与软件:
Unknown 说:1. 为什么我不能同时擦除闪存的一个扇区并从闪存的另一个扇区读取? 为什么闪存在擦除/编程操作过程中无法访问?
在编程或擦除操作期间、将整个闪存存储体置于特殊模式、以施加改变闪存位状态所需的电压。 同一存储体中的每个扇区都有一些共享控制端口等、这就是为什么在这些运行期间无法使用同一存储体中的扇区的原因
Unknown 说:2.I need some run time data in Flash. 在对闪存进行编程时、无法读取闪存。 闪存 API 文档建议将代码复制到 RAM、但由于空间有限、我的代码无法存入 RAM、因此我要将它们保存在闪存中。 在只从闪存运行代码的同时,是否还有其他方法可以将数据保存到其他位置?
由于这一限制、闪存 API 本身必须从 RAM 中运行。 关于运行时数据、您是否尝试将其实时保存到闪存中? 否则、我认为会占用 RAM 的某些区域、这个区域可被重复使用并馈入闪存 API、作为要编程到闪存中的数据数组。
此致!
马修
Karthick、
没有其他选项、闪存和 RAM 是此器件上唯一的可写存储器类型。 是否可以将您的某些功能代码保存在闪存中、并从那里执行以节省 RAM? 虽然从闪存运行时有一些额外的等待状态、但由于我们使用了预取缓冲器、因此总体影响不是对 WS 的1:1。
这意味着、将大部分功能代码保存在闪存中、并且仅将 RAM 用于闪存 API 和数据变量;当数据准备好存储在闪存中时、请调用 API 等。 一旦完成代码的这种组织结构、您就可以了解剩余的 RAM、如果有更多的时间关键函数(如 ISR)、这些函数就可以复制到 RAM 中。
此致!
马修