搜索
查看: 1921|回复: 4

[求助] STM32F407仿真跑和直接跑有差别,是什么原因导致的?

[复制链接]

该用户从未签到

1

主题

4

帖子

0

蝴蝶豆

初级会员

最后登录
2020-5-24
发表于 2018-10-22 20:27:53 | 显示全部楼层 |阅读模式
单片机使用的是STM32F407,平时用仿真器进行调试的代码运行正常,今天直接跑了一次,发现有丢数据的现象(采集到的数据没有上传到电脑),排查中用单片机的一个引脚做输出,用逻辑分析仪测量了一块程序的时间,如下图所示:用仿真器跑的时候如下图所示,间隔比较均匀,大约900us的样子

100.png


直接跑时如下图所示,间隔不均匀,而且耗时比较多,基本在10ms的样子
99.png

排查了晶振,boot0,boot1,发现也没有问题。有遇到类似情况的大神吗?求告知原因
回复

使用道具 举报

该用户从未签到

74

主题

3420

帖子

82

蝴蝶豆

社区小助手

最后登录
2023-11-12
发表于 2018-10-22 21:31:36 | 显示全部楼层
楼主应该把系统的各种中断所需耗时考虑进去(比如SysTick中断),在进入各种中断和进行ADC转换时就无法执行发送数据的任务了。

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2

查看全部评分

回复 支持 反对

使用道具 举报

该用户从未签到

1

主题

4

帖子

0

蝴蝶豆

初级会员

最后登录
2020-5-24
 楼主| 发表于 2018-10-22 21:35:38 | 显示全部楼层
wenyangzeng 发表于 2018-10-22 21:31
楼主应该把系统的各种中断所需耗时考虑进去(比如SysTick中断),在进入各种中断和进行ADC转换时就无法执行 ...

关键是用仿真器运行时是正常的,而直接跑就出问题了
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2017-12-6 11:47
  • 签到天数: 1 天

    [LV.1]初来乍到

    49

    主题

    3724

    帖子

    429

    蝴蝶豆

    论坛元老

    最后登录
    2021-8-7
    发表于 2018-10-23 09:16:49 | 显示全部楼层
    多试几次,看看现象有一样吗,有没有细微的差别?
    只要有差别,就有可能程序有缺陷。没有操作系统,并且没有外部触发条件的裸机程序,执行起来应该是基本确定的。

    评分

    参与人数 1蝴蝶豆 +2 收起 理由
    STMCU + 2

    查看全部评分

    回复 支持 反对

    使用道具 举报

    该用户从未签到

    1

    主题

    4

    帖子

    0

    蝴蝶豆

    初级会员

    最后登录
    2020-5-24
     楼主| 发表于 2018-10-23 12:36:41 | 显示全部楼层
    toofree 发表于 2018-10-23 09:16
    多试几次,看看现象有一样吗,有没有细微的差别?
    只要有差别,就有可能程序有缺陷。没有操作系统,并且没 ...

    有操作系统的,难道是ucos的问题?后来又测试了,只要用仿真器就是好的,不用仿真器,有时候也好,属于概率性的
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|论坛-意法半导体STM32/STM8技术社区

    GMT+8, 2024-4-29 16:11 , Processed in 0.196217 second(s), 42 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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