找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2329|回復(fù): 8
收起左側(cè)

STM32單片機(jī)程序運(yùn)行很慢是什么原因?

[復(fù)制鏈接]
ID:205485 發(fā)表于 2023-3-18 12:03 | 顯示全部樓層 |閱讀模式
      請(qǐng)教大家了:昨天維修一臺(tái)老儀器,遇到一個(gè)不常見的故障,就是程序運(yùn)行很慢。比如,正常情況下,開機(jī)后進(jìn)入自檢,2秒結(jié)束,會(huì)有1秒的“滴”的一聲提示,然后指示燈亮,OLED屏顯示待機(jī)。現(xiàn)在是開機(jī)后進(jìn)入自檢,十幾秒后結(jié)束,會(huì)有5秒的“滴”的一聲提示,指示燈亮,OLED屏也是逐行以幾倍的慢速亮,進(jìn)入待機(jī)。隨后的檢測(cè)過程也是,放慢了很多倍。。。。。。這種情況一般會(huì)是哪里的問題呢?單片機(jī)是STM32F107,晶振25M,更換過晶振問題依舊存在。麻煩高手們幫我想想辦法,謝謝了!
回復(fù)

使用道具 舉報(bào)

ID:807591 發(fā)表于 2023-3-18 15:56 | 顯示全部樓層
這是程序設(shè)計(jì)故意的,各種delay延時(shí),前奏完事進(jìn)死循環(huán)就快了
回復(fù)

使用道具 舉報(bào)

ID:205485 發(fā)表于 2023-3-18 16:07 | 顯示全部樓層
szb314 發(fā)表于 2023-3-18 15:56
這是程序設(shè)計(jì)故意的,各種delay延時(shí),前奏完事進(jìn)死循環(huán)就快了

謝謝您,可能是我表述得不太清楚,這臺(tái)是故障機(jī),只有它出現(xiàn)慢的癥狀,正常的沒有。
回復(fù)

使用道具 舉報(bào)

ID:1067144 發(fā)表于 2023-3-18 16:15 | 顯示全部樓層
檢查晶振邊上的2個(gè)20PF小電容和1M電阻,用錯(cuò)焊錯(cuò)都會(huì)導(dǎo)致晶體震蕩減慢
回復(fù)

使用道具 舉報(bào)

ID:230500 發(fā)表于 2023-3-18 20:26 | 顯示全部樓層
檢查一下晶振部分!,外部晶振不工作就自動(dòng)切到內(nèi)部晶振,頻率會(huì)降低!
回復(fù)

使用道具 舉報(bào)

ID:205485 發(fā)表于 2023-3-18 23:25 | 顯示全部樓層
謝謝樓上兩位,看來還得回到晶振,明天試試檢查一下晶振外圍的電路。
回復(fù)

使用道具 舉報(bào)

ID:291668 發(fā)表于 2023-3-18 23:38 | 顯示全部樓層
先檢查一下時(shí)鐘頻率。如果沒有問題,再把外設(shè)都屏蔽掉,逐個(gè)添加上去,看看是哪個(gè)引起的程序運(yùn)行變慢。依次排查。
回復(fù)

使用道具 舉報(bào)

ID:69038 發(fā)表于 2023-3-20 14:30 | 顯示全部樓層
a399288395 發(fā)表于 2023-3-18 20:26
檢查一下晶振部分!,外部晶振不工作就自動(dòng)切到內(nèi)部晶振,頻率會(huì)降低!

不會(huì)是這么簡(jiǎn)單的事,比如25MHz時(shí),“滴”聲是1.5KHz ,如要切到內(nèi)振,顯示還能正常(姑且略過“逐行以幾倍的慢速亮”的問題),那此時(shí)的“滴”聲就該會(huì)變成“嘟”聲了。1秒的“滴”變成5秒,5倍速之差。。如果“滴”沒變成“嘟”,再往下看:

我猜是外部某個(gè)部件出現(xiàn)的故障,導(dǎo)致MCU不停地在與故障部件進(jìn)行通信,軟件寫的又不是很OK,沒有錯(cuò)誤陷阱,MCU一次又一次地"訪問外設(shè)--待回應(yīng)--沒回應(yīng)再訪問---"才會(huì)卡成狗了。
回復(fù)

使用道具 舉報(bào)

ID:205485 發(fā)表于 2023-3-20 15:17 | 顯示全部樓層
非常感謝大家的幫助,問題已經(jīng)找到了,從另一臺(tái)儀器上取了一個(gè)芯片,換上去后OK了,看來就是芯片本身出問題了。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表