野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 28370|回复: 1

STM32L151外部晶振和内部MSI问题求助!急啊!!

[复制链接]
发表于 2021-1-17 17:34:32 | 显示全部楼层 |阅读模式
10火花
用的是STM32L151C8T6-A,现在有个奇怪的问题,我最初用的标准库,外接8m晶振,默认设置时钟应该是到32mhz,不过循环跑同样的代码(串口1打印),进入stop模式前和rtc唤醒STOP后测的电流基本一样,而网上查到已知stop唤醒后默认时钟变为msi,程序还照常运行。所以这么推断我接了外部晶振但实际用的时钟源应该还是msi?不过用cube配置了使用外部晶振,执行同样代码也都是串口打印,进入stop模式前电流要比stop唤醒后电流大的多,而且stop唤醒后打印的也乱码了,这种情况应该就是正常的,即开始是启用的外部晶振,stop唤醒后自动变为msi。cube配置时钟32m和8m都是电流大于STOP唤醒后的电流,而且32M测的电流也大于8M时候的电流。MSI时钟是2M左右。所以想问难道官方标准库即使我接了外部晶振实际还是默认用msi??不过看标准库时钟初始化流程貌似也都开启了HSE。

还有个细节是我用标准库的时候STLINK烧录代码,好像都得按着复位键再点击烧录再松开复位键才能烧进去代码,不然直接烧录的话一直提示no target connected。网上查了一下说,在系统RST复位和STOP唤醒后,默认都是选择MSI时钟源,所以猜想最后时钟一直是MSI会不会和我烧录代码时候必须按复位键才可以烧进去有关?不过这会代码还没烧进去呢,即使我按着复位键又能用什么影响呢?
用标准库STOP结束后我原本重新配置了一下使用HSE,不过这种情况程序就卡住了。不配置的话就照常运行。
很是苦恼。。跪求解答。

回复

使用道具 举报

发表于 2021-1-18 08:51:43 | 显示全部楼层
进入停机前把HSE和HSI都会关闭,睡眠模式才没有关闭HSE和HSI。
按复位键才能下载的,可能是你占用了烧写口作普通IO、关闭JTAG的映射。
回复

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-6-3 01:40 , Processed in 0.026445 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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