• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

stm32运行一段时间程序跑飞,如何排查

iksun 2018-06-21 浏览量:3642
我用stm32单片机做了一个数据采集产品,平时运行都正常。但持续运行十几天后数据收不到了,估计是系统崩溃了,问下这个情况怎么排查问题点,如何做到类似情况出现时自动重启恢复。
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 1、数据收不到,也不一定是系统死机了,有可能是通信出了问题

    2、这种要长期运行的设备必须加看门狗,在跑死的情况下可以复位,为了提高稳定性,可以使用外部看门狗,外部看门狗的中断输出接到单片机电源上面

    • 发布于 2018-06-22
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:9
  • 收不到数据,不一定代表系统崩溃,要从2点出发。1.多做测试,不要到了现场再测试。2.看门狗一定要使用,保证设备能够在极端的环境下正常复位,毕竟丢数据和死机的后果是完全不一样的。
    • 发布于2018-06-21
    • 举报
    • 评论 0
    • 0
    • 0

  • 找一个市场上买的板子(确定好用的),下载你的程序实验看是否正确,如果正确说明你的板子有问题
    • 发布于2018-06-21
    • 举报
    • 评论 0
    • 0
    • 0

  • 这个一般都是要先排查硬件问题还是软件问题,硬件的话排查复位电路,干扰,软件要排查一下内存溢出,堆栈重入的问题
    • 发布于2018-06-21
    • 举报
    • 评论 0
    • 0
    • 0

  • 不一定是死机或者跑飞,数据采集是不是停了;重启后是不是又能采集到数据,如果能可能是跑飞了,加看门狗;如果采集不到,那肯定是采集电路出问题了。
    • 发布于2018-06-24
    • 举报
    • 评论 0
    • 0
    • 0

  • 重点排查一下干扰和电源的干扰问题,程序跑飞很多都是干扰导致的
    • 发布于2018-06-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 可以启用独立看门狗来防止程序跑飞,这是最简单的方法。

    • 发布于2018-06-29
    • 举报
    • 评论 0
    • 0
    • 0

  • 首先要设置一个监控的程序看是什么时候跑飞,然后把跑飞前的数据记录下来分析
    • 发布于2018-07-15
    • 举报
    • 评论 0
    • 0
    • 0

  • 还不是内存溢出了,或者是供电不稳定
    • 发布于2018-07-22
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

stm32运行一段时间程序跑飞,如何排查