我有一个应用需要在运行期间来回切换主时钟、例如从25MHz 切换到24MHz。 我可以在设计中包含两个振荡器、但使用 GPIO 在它们之间切换是安全的? 在开关时刻、时钟脉冲将会中断、并且很有可能会出现高于25MHz 的急剧脉冲。
感谢您的任何指示!
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.
我有一个应用需要在运行期间来回切换主时钟、例如从25MHz 切换到24MHz。 我可以在设计中包含两个振荡器、但使用 GPIO 在它们之间切换是安全的? 在开关时刻、时钟脉冲将会中断、并且很有可能会出现高于25MHz 的急剧脉冲。
感谢您的任何指示!
您好!
器件可以复位。 请参阅以下数据表。
5.2.3.2主振荡器验证失败
TM4C1294NCPDT 微控制器提供一个生成的主振荡器验证电路
如果振荡器运行得太快或太慢、则会出现错误情况。 验证时的频率
电路使能、发生故障时、会产生上电复位并传输控制信号
或产生中断。 MOSCCTL 寄存器中的 MOSCIM 位决定
发生哪种操作。 在任一种情况下、系统时钟源都会自动切换至 PIOSC。
如果一个 MOSC 故障复位发生、NMI 处理程序被用来处理主振荡器验证
失败、因为可以从通用复位处理程序中删除必要的代码、从而加快速度
复位处理。 通过设置主振荡器中的 CVAL 位来启用检测电路
控制(MOSCCTL)寄存器。 主振荡器验证错误在主振荡器中指示
复位原因(RESC)寄存器中的故障状态(MOSCFAIL)位。 主振荡器验证电路
第236页的"主振荡器校验电路"一节对操作进行了更详细的描述。
PLL 操作
如果 PLL 配置发生变化、PLL 输出频率不稳定、直到它重新收敛(重新锁定)
新设置。 配置更改和重新锁定之间的时间为 TREADY (见表
第1835页的27-16)。 在重新锁定期间、受影响的 PLL 不能用作时钟基准。
软件可以查询 PLL 状态(PLLSTAT)寄存器中的 LOCK 位以确定 PLL 的时间
已锁定。
当 PLL 用作时钟时、可能不会执行 PLL VCO 频率的修改
电源。 对 PLL 的所有更改都必须使用不同的时钟源执行、直到
PLL 具有锁定频率。 因此、必须按顺序更改 PLL VCO 频率
从 PLL 到 PIOSC/MOSC、然后从 PIOSC/MOSC 到新的 PLL。