硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1147|回复: 3
收起左侧

[CMSIS-RTOS] STM32L073+RTX-RTOS+低功耗

[复制链接]

2

主题

5

回帖

11

积分

新手上路

积分
11
发表于 2022-1-15 13:24:20 | 显示全部楼层 |阅读模式
大家好,希望大家能够帮助解决一下遇到的问题:在使用STM32L073+RTX-RTOS操作系统时,要求使用低功耗唤醒,采用STOP+RTC唤醒方式。测试发现,设备进入低功耗唤醒后,栈空间地址后减小,一直使栈溢出,导致设备程序跑出问题,而相同的代码,把低功耗进入和退出屏蔽后,却没有出现栈溢出的问题,请问这种现象是在怎么定位问题点及如何解决,谢谢。或提供解决的思路,谢谢

回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106422
QQ
发表于 2022-1-15 14:44:17 | 显示全部楼层
这种情况,楼主方便的话,稍分享点代码。
回复

使用道具 举报

2

主题

5

回帖

11

积分

新手上路

积分
11
 楼主| 发表于 2022-1-16 11:09:38 | 显示全部楼层
eric2013 发表于 2022-1-15 14:44
这种情况,楼主方便的话,稍分享点代码。

你好,我已经把代码简化上传回复了,请帮我看看,分析一下原因,现象是:代码在退后低功耗后,栈空间一直在消耗增大,最后导致程序跑飞,谢谢!

出问题的调试现象

出问题的调试现象

lwp_stm32l073.rar

8.58 MB, 下载次数: 31

低功耗退出后,一直消耗栈空间,直到跑飞

回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106422
QQ
发表于 2022-1-17 09:58:56 | 显示全部楼层
宋秋波 发表于 2022-1-16 11:09
你好,我已经把代码简化上传回复了,请帮我看看,分析一下原因,现象是:代码在退后低功耗后,栈空间一直 ...

1、操作期间不用加内核锁。osKernelUnlock();  和 osKernelLock();   
2、STOP模式唤醒后要重新配置PLL,好像没有看到你这部分代码(L0系列是否不用?)。
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-4-20 05:35 , Processed in 0.169073 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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