Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

使用RT-Studio生产的STM32F407VE工程运行一段时间后自动停止, update -> 发现是串口无法持续输出 #8775

Closed
CN-CaoJun opened this issue Apr 11, 2024 · 11 comments

Comments

@CN-CaoJun
Copy link

在RT-studio中根据默认的设置新建如下工程时,可以启动板子,但是运行300s左右后就会停止,即使配置使用外部时钟,依旧如此。
工具及配置过程:
RT-studio版本 2.2.7
BSP 5.0.2
Hardware STM32F407VET6
image

运行过程:
image

但是每次运行接近300s之后就会卡住,确认不是串口工具的原因,需要重新插拔电源才行。
请问下这个是什么情况,我有什么没有设置吗?
image

@chnykn
Copy link

chnykn commented Apr 12, 2024

正好 我这里有一个STM32F407VE,工具及配置与你的完全一样。试了一下,并不会出错。
没有任何特殊的设置,除了我用的ST-Link;貌似 你用的DAP-Link。理论上,应该不是这个原因。

1

@Rbb666
Copy link
Contributor

Rbb666 commented Apr 14, 2024

可以debug看看,在卡死的时候停止调试看看停在哪里,再看看为什么不切换到目标线程

@CN-CaoJun
Copy link
Author

感谢各位,有时间了再试下我再来更新

@CN-CaoJun
Copy link
Author

这个问题在我这边是必现的,当前出现的情况是:306个tick之后就没有打印了,在调试界面暂停的时候,发现任务就在IDLE task里面。
image
image

@CN-CaoJun
Copy link
Author

正好 我这里有一个STM32F407VE,工具及配置与你的完全一样。试了一下,并不会出错。 没有任何特殊的设置,除了我用的ST-Link;貌似 你用的DAP-Link。理论上,应该不是这个原因。

1

麻烦您这边多跑一段时间看看,thx。

@CN-CaoJun
Copy link
Author

可以debug看看,在卡死的时候停止调试看看停在哪里,再看看为什么不切换到目标线程

还在学习RTTHREAD中,希望我能弄清楚一下为啥切不了目标线程

@chnykn
Copy link

chnykn commented Apr 15, 2024

正好 我这里有一个STM32F407VE,工具及配置与你的完全一样。试了一下,并不会出错。 没有任何特殊的设置,除了我用的ST-Link;貌似 你用的DAP-Link。理论上,应该不是这个原因。
1

麻烦您这边多跑一段时间看看,thx。

图我就不贴了,刚刚连续跑了一个多小时,不会出错!
RT-Thread 5.0.2,针对F407VE的默认项目,没有特殊配置。

@CN-CaoJun
Copy link
Author

CN-CaoJun commented Apr 15, 2024

Update:
今天工作之余再调试了下,
在debug模式下跑:
跑一段时间之后,调试器自己会在idle里面停一下, 然后run可以继续跑下去,但是需要串口监控软件重置下才能打印出接下来的log。
image

在正常模式下跑:
跑一段时间后串口没有输出,重置串口后可以看到接下来的打印。使用的串口软件是ScureCRT

因此我认为可以把这个问题的描述调整成:
使用RT-Studio生产的STM32F407VE工程运行一段时间后串口无法输出,但是重置串口软件后可以看到后续的输出。

我认为这对我也是值得研究的,因为同样的环境在监控其他软件的串口输出时并没有出现类似的情况,接下来看下是什么打断了串口的输出。

@CN-CaoJun CN-CaoJun changed the title 使用RT-Studio生产的STM32F407VE工程运行一段时间后自动停止 使用RT-Studio生产的STM32F407VE工程运行一段时间后自动停止, update -> 发现是串口无法持续输出 Apr 15, 2024
@Rbb666
Copy link
Contributor

Rbb666 commented Apr 15, 2024

Update: 今天工作之余再调试了下, 在debug模式下跑: 跑一段时间之后,调试器自己会在idle里面停一下, 然后run可以继续跑下去,但是需要串口监控软件重置下才能打印出接下来的log。 image

在正常模式下跑: 跑一段时间后串口没有输出,重置串口后可以看到接下来的打印。使用的串口软件是ScureCRT

因此我认为可以把这个问题的描述调整成: 使用RT-Studio生产的STM32F407VE工程运行一段时间后串口无法输出,但是重置串口软件后可以看到后续的输出。

我认为这对我也是值得研究的,因为同样的环境在监控其他软件的串口输出时并没有出现类似的情况,接下来看下是什么打断了串口的输出。

换个串口助手试试呢?比如我使用的是mobaxterm

@CN-CaoJun
Copy link
Author

Update: 今天工作之余再调试了下, 在debug模式下跑: 跑一段时间之后,调试器自己会在idle里面停一下, 然后run可以继续跑下去,但是需要串口监控软件重置下才能打印出接下来的log。 image
在正常模式下跑: 跑一段时间后串口没有输出,重置串口后可以看到接下来的打印。使用的串口软件是ScureCRT
因此我认为可以把这个问题的描述调整成: 使用RT-Studio生产的STM32F407VE工程运行一段时间后串口无法输出,但是重置串口软件后可以看到后续的输出。
我认为这对我也是值得研究的,因为同样的环境在监控其他软件的串口输出时并没有出现类似的情况,接下来看下是什么打断了串口的输出。

换个串口助手试试呢?比如我使用的是mobaxterm

Mobaxterm也是同样的情况,这个现象非常奇妙,😂

@CN-CaoJun
Copy link
Author

换了开发的电脑和串口之后,发现问题不再复现😂,感谢支持!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants