找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 864|回复: 8
打印 上一主题 下一主题
收起左侧

STM32单片机程序运行很慢是什么原因?

[复制链接]
跳转到指定楼层
楼主
ID:205485 发表于 2023-3-18 12:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
      请教大家了:昨天维修一台老仪器,遇到一个不常见的故障,就是程序运行很慢。比如,正常情况下,开机后进入自检,2秒结束,会有1秒的“滴”的一声提示,然后指示灯亮,OLED屏显示待机。现在是开机后进入自检,十几秒后结束,会有5秒的“滴”的一声提示,指示灯亮,OLED屏也是逐行以几倍的慢速亮,进入待机。随后的检测过程也是,放慢了很多倍。。。。。。这种情况一般会是哪里的问题呢?单片机是STM32F107,晶振25M,更换过晶振问题依旧存在。麻烦高手们帮我想想办法,谢谢了!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:807591 发表于 2023-3-18 15:56 | 只看该作者
这是程序设计故意的,各种delay延时,前奏完事进死循环就快了
回复

使用道具 举报

板凳
ID:205485 发表于 2023-3-18 16:07 | 只看该作者
szb314 发表于 2023-3-18 15:56
这是程序设计故意的,各种delay延时,前奏完事进死循环就快了

谢谢您,可能是我表述得不太清楚,这台是故障机,只有它出现慢的症状,正常的没有。
回复

使用道具 举报

地板
ID:1067144 发表于 2023-3-18 16:15 | 只看该作者
检查晶振边上的2个20PF小电容和1M电阻,用错焊错都会导致晶体震荡减慢
回复

使用道具 举报

5#
ID:230500 发表于 2023-3-18 20:26 | 只看该作者
检查一下晶振部分!,外部晶振不工作就自动切到内部晶振,频率会降低!
回复

使用道具 举报

6#
ID:205485 发表于 2023-3-18 23:25 | 只看该作者
谢谢楼上两位,看来还得回到晶振,明天试试检查一下晶振外围的电路。
回复

使用道具 举报

7#
ID:291668 发表于 2023-3-18 23:38 | 只看该作者
先检查一下时钟频率。如果没有问题,再把外设都屏蔽掉,逐个添加上去,看看是哪个引起的程序运行变慢。依次排查。
回复

使用道具 举报

8#
ID:69038 发表于 2023-3-20 14:30 | 只看该作者
a399288395 发表于 2023-3-18 20:26
检查一下晶振部分!,外部晶振不工作就自动切到内部晶振,频率会降低!

不会是这么简单的事,比如25MHz时,“滴”声是1.5KHz ,如要切到内振,显示还能正常(姑且略过“逐行以几倍的慢速亮”的问题),那此时的“滴”声就该会变成“嘟”声了。1秒的“滴”变成5秒,5倍速之差。。如果“滴”没变成“嘟”,再往下看:

我猜是外部某个部件出现的故障,导致MCU不停地在与故障部件进行通信,软件写的又不是很OK,没有错误陷阱,MCU一次又一次地"访问外设--待回应--没回应再访问---"才会卡成狗了。
回复

使用道具 举报

9#
ID:205485 发表于 2023-3-20 15:17 | 只看该作者
非常感谢大家的帮助,问题已经找到了,从另一台仪器上取了一个芯片,换上去后OK了,看来就是芯片本身出问题了。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表