主题中讨论的其他器件: TM4C129XNCZAD
您好!
我正在使用 TI 的 MSP-EXP432E411Y 电路板。 我已经为以太网配置了 TI 引导加载程序。
借助这款基于闪存的引导加载程序、我可以在 BSL-Scripter 的帮助下下载 MSP432E411Y 中的固件映像。
我的问题如下。
1.在闪存擦除或编程操作期间,此微控制器的中断被禁用?
2.如果被禁用、那么是否可以启用中断? 仍在运营?
3.是否可以在此控制器上进行非阻塞式编程和擦除?
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.
您好!
我正在使用 TI 的 MSP-EXP432E411Y 电路板。 我已经为以太网配置了 TI 引导加载程序。
借助这款基于闪存的引导加载程序、我可以在 BSL-Scripter 的帮助下下载 MSP432E411Y 中的固件映像。
我的问题如下。
1.在闪存擦除或编程操作期间,此微控制器的中断被禁用?
2.如果被禁用、那么是否可以启用中断? 仍在运营?
3.是否可以在此控制器上进行非阻塞式编程和擦除?
从理论上讲 、MSP432E411Y 具有一个"上部"和"下部"512kB 闪存组、代码可在另一个组正在编程或擦除时继续从一个组的闪存中执行。 请参阅 《MSP432E4 SimpleLink微控制器技术参考手册》的7.2.3.10闪存编程部分
但是 、MSP432E401Y:如果在闪存编程期间发生 FreeRTOS 上下文切换、处理器可能会崩溃 、其中包含一个程序示例、当 程序擦除和编程上部闪存组时、程序会崩溃、而程序在下部闪存组中运行。
基于 https://e2e.ti.com/support/microcontrollers/other/f/908/p/844981/3141630#3141630、适用于 与 MSP432E 系列共享功能的 TM4C129XNCZAD、使闪存预取缓冲器保持启用状态可能会导致崩溃。
一种变通方法是在对闪存进行编程或擦除时禁用闪存预取缓冲器。
另一种可能是使任何代码、包括中断处理程序、在闪存编程/擦除期间需要运行以从 RAM 运行、然后、RAM 应该允许对上部和下部闪存组进行编程或擦除。
感谢 Chester Gillon 的快速回复。
然而,我的问题仍然没有得到答复。 根据 TI MSP432系列、其他微控制器"在任何闪存操作期间禁用中断、并在闪存操作完成后再次重新启用中断"。
我们计划开发2个应用程序、该应用程序使用闪存镜像技术来互相报文存储器区域、即 Application1从较低的存储器组运行、并更新上半部分未执行和 viceversa。
当擦除过程发生时、从下半部分运行的应用程序将返回其自身的功能。
但在闪存擦除操作期间禁用中断、然后暂停运行应用程序(大多数情况下使用计时器中断)、这对我们来说是不需要的。 从下部运行的应用程序具有不同的功能、其中一个是闪存更新、但在更新闪存时、它还应同时支持其其他功能。 如果在闪存操作期间未禁用中断、则会发生这种情况。
请告诉我闪存操作期间的中断状态。