[产品应用] 如何解决MCU系统时钟频率改变导致的程序跑飞问题

[复制链接]
2059|20
 楼主| probedog 发表于 2024-1-2 16:05 | 显示全部楼层 |阅读模式
如何解决MCU系统时钟频率改变导致的程序跑飞问题

评论

xch
是美帝的MCU?  发表于 2024-1-3 16:27
pssyx 发表于 2024-1-2 17:24 | 显示全部楼层
MCU系统时钟频率发生改变之后,需重点关注各应用外设的时钟频率是否能与之匹配?是否也需要作出相应的改变。比如:FLASH,SPI,I2C等外设。
yangxiaor520 发表于 2024-1-2 20:45 来自手机 | 显示全部楼层
对时钟进行监测,当检测到异常后,进入停止模式。
qintian0303 发表于 2024-1-3 12:18 | 显示全部楼层
系统时钟频率改变这么根本的东西怎么会改变呢?你如果要修改必然要把外设都关闭才行
中国龙芯CDX 发表于 2024-1-9 14:45 | 显示全部楼层
频率发生改变无非就是相关通信会有问题,跑飞??跑飞到哪里了?没遇到过
jf101 发表于 2024-2-25 18:04 | 显示全部楼层
MCU系统时钟频率发生改变之后,需重点关注各应用外设的时钟频率是否能与之匹配?
星辰大海不退缩 发表于 2024-8-6 21:42 | 显示全部楼层
芯源的比较特殊应该是多放几个周期
LOVEEVER 发表于 2024-8-9 20:04 | 显示全部楼层
星辰大海不退缩 发表于 2024-8-6 21:42
芯源的比较特殊应该是多放几个周期

确实芯源的MCU有这种说法
szt1993 发表于 2024-8-14 22:11 | 显示全部楼层
其实还是得结合跑飞的原因进一步排查,一般先软件后硬件上设计
小夏天的大西瓜 发表于 2024-8-21 15:07 | 显示全部楼层
MCU系统时钟频率发生改变之后,需重点关注各应用外设的时钟频率是否能与之匹配
Emily999 发表于 2024-8-22 11:44 | 显示全部楼层
MCU系统时钟频率改变可能导致程序跑飞(即程序执行出现异常,无法正常运行),这通常是由于时钟频率变化影响了程序的定时和同步机制
Annie556 发表于 2024-8-22 12:52 | 显示全部楼层
确保MCU的时钟配置正确,包括外部晶振的选择、内部振荡器的设置、时钟分频器的配置等
Charlotte夏 发表于 2024-8-22 14:01 | 显示全部楼层
一般来说,错误的时钟配置可能导致MCU运行在不正确的频率上。仔细阅读MCU的数据手册,按照推荐的配置进行时钟设置。使用硬件调试工具(如逻辑分析仪或示波器)来验证时钟频率是否正确
Estelle1999 发表于 2024-8-22 15:11 | 显示全部楼层
在程序中使用同步机制,如定时器中断、看门狗定时器等,以确保程序在时钟频率变化时仍能保持同步。解决方法:在关键任务中使用定时器中断来同步程序执行。配置看门狗定时器,确保在程序跑飞时能够及时复位系统
Carina卡 发表于 2024-8-22 16:15 | 显示全部楼层
在程序中实现时钟频率变化的检测机制,一旦检测到时钟频率变化,可以采取相应的措施,如重新配置时钟或复位系统。解决方法:使用MCU提供的时钟监控功能,或者在软件中实现频率检测算法
Betty996 发表于 2024-8-22 17:21 | 显示全部楼层
优化程序代码,减少对精确时钟的依赖,特别是在中断服务程序(ISR)和时间敏感的任务中。使用非阻塞的编程技术,避免在ISR中执行耗时操作。对于时间敏感的任务,使用硬件定时器来精确控制时间
alxd 发表于 2024-8-22 18:27 | 显示全部楼层
在硬件设计阶段,确保晶振和时钟电路的稳定性,减少外部干扰和电源噪声对时钟频率的影响。使用质量好的晶振,设计良好的电源和地线布局,以及适当的电磁兼容(EMC)措施
B1lanche 发表于 2024-8-23 09:01 | 显示全部楼层
在软件中实现容错和恢复机制,当检测到程序跑飞时,能够自动恢复到正常状态
Carmen7 发表于 2024-8-23 10:09 | 显示全部楼层
其实错误处理和异常恢复逻辑,如使用状态机来管理程序状态,确保在异常情况下能够安全地复位或重启系统
Allison8859 发表于 2024-8-23 11:30 | 显示全部楼层
如果时钟频率变化是由于固件bug导致的,及时更新固件,修复相关问题。分析固件日志和错误报告,定位问题并发布修复后的固件版本
您需要登录后才可以回帖 登录 | 注册

本版积分规则

493

主题

3361

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部