11954|13

75

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

求助:STM32非调试状态内部时钟不稳定 [复制链接]

刚接触STM32不久,现在发现这样一个问题,在网上查了 也自己找了一只没找到原因 望大家帮帮忙

问题如下:我用的是STM32103CB,才用的是内部时钟,在非调试状态下正常上电系统不是每次都按照PLL后的时钟运行,导致这个

系统的时钟会出现很慢的情况。

RCC部分代码如下(望各位大侠帮忙指正)

void RCC_Configuration(void)
{
  RCC_DeInit();//将RCC寄存器设置为缺省值

  RCC_HSICmd(ENABLE);//打开内部高速时钟

  while(RCC_GetFlagStatus(RCC_FLAG_HSIRDY) == RESET)
  {}        //等待HSI准备好

  if (1)
  {
                          //设置HCLK(AHB时钟)=SYSCLK
                RCC_HCLKConfig(RCC_SYSCLK_Div1);

                //PCLK1(APB1) = HCLK/2
                RCC_PCLK1Config(RCC_HCLK_Div2);

                //PCLK2(APB2) = HCLK
                RCC_PCLK2Config(RCC_HCLK_Div1);

                //FLASH时序控制
                //推荐值:SYSCLK = 0~24MHz   Latency=0
                //        SYSCLK = 24~48MHz  Latency=1
                //        SYSCLK = 48~72MHz  Latency=2
                FLASH_SetLatency(FLASH_Latency_2);
                //开启FLASH预取指功能
                FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);

                //PLL设置 SYSCLK/2 * 16 = 4*16 = 64MHz
                RCC_PLLConfig(RCC_PLLSource_HSI_Div2, RCC_PLLMul_16);
                //启动PLL
                RCC_PLLCmd(ENABLE);
                //等待PLL稳定
                while (RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET);
                //系统时钟SYSCLK来自PLL输出
                RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);
                //切换时钟后等待系统时钟稳定
                while (RCC_GetSYSCLKSource()!=0x08);
        }       
  }

}
此帖出自stm32/stm8论坛

最新回复

                                 谢谢 版主  在电源上增加了电容 解决了问题 果然是电源不稳定  再次感谢版主  详情 回复 发表于 2010-12-7 09:36
点赞 关注
 

回复
举报

81

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
                                 没人理我。。。
此帖出自stm32/stm8论坛
 
 

回复

78

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
                                 不知道是不是 我用了内部RTC,电源开关断电的时候内部RTC还有供电的原因呢?
此帖出自stm32/stm8论坛
 
 

回复

78

帖子

0

TA的资源

一粒金砂(初级)

4
 
                                你最好给出量化的指标,这样别人才好帮你分析;比如时钟慢多少。
此帖出自stm32/stm8论坛
 
 
 

回复

72

帖子

0

TA的资源

一粒金砂(初级)

5
 
我通过MCO 设置将内部HSI时钟引了出来,经测试在调试状态下时钟在8MHZ左右,但在调试线拔出板子,掉电从上电后输出的时钟及不稳定,在1KH到4KHZ间波动,望版主帮忙看看
图马上发
此帖出自stm32/stm8论坛
 
 
 

回复

60

帖子

0

TA的资源

一粒金砂(初级)

6
 
以下是正常调试 和掉电后上电出现异常的时钟图

正常调试时钟稳定.jpg (32.18 KB)

正常调试时钟稳定.jpg

从上电后时钟失真.jpg (37.38 KB)

从上电后时钟失真.jpg

此帖出自stm32/stm8论坛
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

7
 
                                 暂时找不到原因 望版主和各位大侠帮帮忙 , 板子上还有用到RTC在开关断开后还有供电给VBAT不知道是不只找个供电引起的
此帖出自stm32/stm8论坛
 
 
 

回复

68

帖子

0

TA的资源

一粒金砂(初级)

8
 
在开关断开,仅RTC供电情况下,MCO脚也有时钟输出且不稳定

到掉电后只RTC-VBAT供电 MCO输出时钟.jpg (26.64 KB)

到掉电后只RTC-VBAT供电 MCO输出时钟.jpg

此帖出自stm32/stm8论坛
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

9
 
                                 我用的RTC时钟源始 外部32.768晶振
此帖出自stm32/stm8论坛
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

10
 
请问你的硬件环境是什么?有电路图和板子的图片吗? 系统的供电是什么?

怀疑你的电源部分不稳定。
此帖出自stm32/stm8论坛
 
 
 

回复

83

帖子

0

TA的资源

一粒金砂(初级)

11
 
                                 还有,检查时钟相关的问题最好用示波器,不要用逻辑分析仪。
此帖出自stm32/stm8论坛
 
 
 

回复

78

帖子

0

TA的资源

一粒金砂(初级)

12
 
MUC部分电路图如下,才用的是7.4V电池为总电源 经过开关电源到3.3V给MCU供电。示波器坏了 要不我也不能用逻辑分析仪   但总的趋势上也可以反映问题

MCU部分电路图.jpg (93.85 KB)

MCU部分电路图.jpg

此帖出自stm32/stm8论坛
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

13
 
楼主位说“在非调试状态下正常上电系统不是每次都按照PLL后的时钟运行,导致这个系统的时钟会出现很慢的情况”,请教一下:这种很慢的情况是否就是5楼描述的这个现象?“掉电从上电后输出的时钟及不稳定,在1KH到4KHZ间波动”

我的理解是时钟很慢时钟及不稳定好像不是一回事,不知道是我的理解有问题还是你描述的是不同的问题?

关于电源系统的配置,请看数据手册中的建议:

STM32_Power_Supply_Scheme.GIF (17.57 KB)

STM32_Power_Supply_Scheme.GIF

此帖出自stm32/stm8论坛
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

14
 
                                 谢谢 版主  在电源上增加了电容 解决了问题 果然是电源不稳定  再次感谢版主
此帖出自stm32/stm8论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表