OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 8135|回复: 5

紧急求助!STM32低功耗STOP模式出来后串口发数据就死机

[复制链接]

15

主题

56

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
231
金钱
231
注册时间
2015-3-12
在线时间
18 小时
发表于 2015-12-11 22:19:13 | 显示全部楼层 |阅读模式
5金钱
低功耗出来,重新配置了串口。采用的原子哥的串口初始化程序。

从低功耗唤醒时调用了SystemInit();函数。十万火急,求大神们给个提示
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

15

主题

56

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
231
金钱
231
注册时间
2015-3-12
在线时间
18 小时
 楼主| 发表于 2015-12-12 13:35:12 | 显示全部楼层
有人做过stm32的低功耗吗,我想唤醒后采用外部的8M晶振做时钟源,请问需要如何配置
回复

使用道具 举报

6

主题

130

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
437
金钱
437
注册时间
2013-4-9
在线时间
76 小时
发表于 2015-12-12 21:17:00 | 显示全部楼层
如果进入STOP前关闭了串口时钟,那么在唤醒的时候要先初始化主时钟,也就是调用SystemInit();,然后重新初始化串口时钟和串口模块。在串口初始化完之前,不要调用串口相关函数,比如printf
签名必须手写!
回复

使用道具 举报

15

主题

56

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
231
金钱
231
注册时间
2015-3-12
在线时间
18 小时
 楼主| 发表于 2015-12-12 23:39:32 | 显示全部楼层
回复【3楼】sf116:
---------------------------------
问题找到了。进入低功耗之前把串口时钟复位一下就好了。
回复

使用道具 举报

0

主题

10

帖子

0

精华

新手上路

积分
36
金钱
36
注册时间
2015-12-13
在线时间
2 小时
发表于 2015-12-13 17:26:43 | 显示全部楼层
回复【4楼】挣点圆子:
---------------------------------
进入stop之前串口必须切换到内部时钟,手册上串口章节从stop模式唤醒有写。唤醒后再切换到外部时钟就好了。内部时钟不准确,接收数据会出错。
回复

使用道具 举报

0

主题

6

帖子

0

精华

新手上路

积分
23
金钱
23
注册时间
2020-12-14
在线时间
5 小时
发表于 2021-3-31 10:28:27 | 显示全部楼层
挣点圆子 发表于 2015-12-12 23:39
回复【3楼】sf116:
---------------------------------
问题找到了。进入低功耗之前把串口时钟复位一下就好 ...

请问是怎么样进行串口时钟复位的?代码
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-26 07:54

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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