MSP430F5359的勘误表位于: http://www.ti.com/lit/er/slaz495z/slaz495z.pdf。
在该文档中、PMM12具有以下特性:
SMCLK 在退出 LPM3和 LPM4时快速启动
DCO 在退出 LPM3和 LPM4时超过编程的工作频率长达6us。 当 SMCLK 由 DCO 供源时、它在退出 LPM3或 LPM4时不会被屏蔽。 因此、在退出 LPM3和 LPM4时、SMCLK 超过设定的运行频率达6us。 增加的频率有可能改变选择 SMCLK 作为时钟源的外设的预期时序行为。
权变措施
-使用 XT2作为 SMCLK 振荡器源而不是 DCO。 或
-请勿禁用统一时钟系统控制8寄存器(UCSCTL8)中 SMCLKREQEN 的时钟请求位。 这意味着、在进入 LPM3或 LPM4之前、所有依靠 SMCLK 来成功运行的模块都应该被暂停或禁用。如果增加的频率阻止了受影响模块的正常运行、那么对于内核电压电平0、1、2和3、分别等待32、48、64或80个周期、 在重新启用模块之前[例如、__delay_cycles (32)]。
我的问题是:如果在 SPI 外设中使用 SMCLK、我们是否需要在 LPM3或 LPM4中将外设保持在复位状态、或者在尝试通过 SPI 发送任何数据之前等待适当的周期数是否足够。 在这种情况下、MSP430将是 SPI 总线的主控器件、因此应控制何时发送数据(因此、何时需要时钟来驱动 SCK)。