在勘误表#2中,
如果在对 SVSMLCTL 进行写访问期间将 RST 引脚拉低、并且仅当
在没有超时的情况下执行 SVSMLDLYIFG=1的检查。 器件将卡在
在轮询循环中、因为 SVSMLDLYIFG 将永远不会被清除。
如果我的源代码没有 SVSMLDLYIFG 的超时、并设置 RST 引脚设置 NMI、拉引脚。
_system_pre_init // set RST/NMI pin as NMI (Disable reset pin) SFRRPCR = SYSNMI | SYSNMIIES | SYSRSTRE; SVSMLCTL = 0x4703; // SVMLE = 0b1 (SVM low-side enable) // SVSLE = 0b1 (SVS low-side enable) // SVSLRVL = 0b11 (SVS low-side reset voltage level 2.16 V) // SVSMLRRL = 0b101 (SVS low-side reset release voltage 2.25 V) while ((SVSMLCTL & SVSMLDLYST) != 0) { // SVSMLDLYST: wait until the status finished }
上述源代码是否会产生 PMM26勘误表(卡在循环中或保持在复位状态)?
我找到了有关此问题的旧信息
e2e.ti.com/.../msp430f5172-how-does-mcu-operate-in-case-of-errata-pmm26
"没有问题、但仍应在回路中执行300us 超时、
打造稳健的解决方案"
如果没有机具300us 超时、会发生什么情况? (它可以卡在循环中还是保持在复位状态)?