STM32外部晶振HSE竟然无法启动,晕...

[复制链接]
 楼主| zq1987731 发表于 2009-3-26 19:25 | 显示全部楼层 |阅读模式
    本人历时N久搞的一个项目,所用芯片具体型号:STM32F103ZET6,之前一段时间光是热衷于硬件设计了,写了个简单的测试程序就没怎么去管了...然后PCB来了开始编程时才发现...外部HSE竟然无法启动- -....
    程序上我想应该没什么问题,然后有下面这几句: 
    RCC_DeInit();
    RCC_HSEConfig(RCC_HSE_ON);
    HSEStartUpStatus = RCC_WaitForHSEStartUp();
    if(HSEStartUpStatus == SUCCESS)
    {
        //......
    }
    其中if后的条件恒不成立,也就是外部HSE开启失败...郁闷,因此怀疑是硬件问题,晶振部分的原理图贴在下面了,其中晶振的外壳接了地,也就是图中晶振的第三个脚...
computer00 发表于 2009-3-26 21:17 | 显示全部楼层

要一直读的吧?

while(1)
{
 HSEStartUpStatus = RCC_WaitForHSEStartUp();
 if(HSEStartUpStatus == SUCCESS)
 {

 }
}
xxqarm 发表于 2009-3-26 21:18 | 显示全部楼层

我有次layout错了晶振引脚,后来用了内部振荡源.......

应是硬件问题,查查晶振及相关电路.STM32F103ZET6我正在用,使用外部8M晶振.
 楼主| zq1987731 发表于 2009-3-26 21:48 | 显示全部楼层

...

原来要一直读...没想到...明天正好去试试~~
另外本人虽然粗心但LayOut错了晶振引脚...概率应该不大才是...下面再贴张图..
香水城 发表于 2009-3-26 22:24 | 显示全部楼层

楼主你那个R10是做什么的?

xxqarm 发表于 2009-3-26 22:49 | 显示全部楼层

STM3210E中有

STM3210E评估板图中看过这电阻,不过我们没用.开发板的图中都画了这电阻,不会是误导吧?


香水城 发表于 2009-3-26 23:04 | 显示全部楼层

请看看这个应用笔记

我问你这个电阻是做什么的,就是想知道你是否明白为什么要有这个电阻?你是否计算过?

晶振不同,这个电阻的阻值也不同,对某些晶振不需要这个电阻。

下面这个应用笔记中有详细介绍。
相关链接:http://bbs.21ic.com/upfiles/img/20093/2009318231910906.pdf
 楼主| zq1987731 发表于 2009-3-26 23:26 | 显示全部楼层

回香版主

其实我是照抄ST那块开发板的...我还当这个是必须的反馈电阻呢(Datasheet上没仔细看断章取义看到“必需的”就照搬上去了- -)
原来是驱动级别外部电阻,又学到不少东西...
明天换个0Ω电阻试试
 楼主| zq1987731 发表于 2009-3-26 23:41 | 显示全部楼层

另外晶振的话...

    HSE所用8M的就是电子市场一拿一大堆的杂牌...所以我都不知道这到底是“什么型号”的晶振了...
    RTC上用的到是好了很多,先是用6pF负载电容/5ppm的柱晶接在DS1306上,再用DS1306的固定32.768K方波输出充当有源晶振输出接到STM32上当成LSE输入,这个纯粹是为学习而搞的无聊之举,感觉6pF负载电容/5ppm的晶振直接用2个10pF电容接到STM32上也能解决问题...
isd2560 发表于 2009-3-27 00:07 | 显示全部楼层

新买的片子先从Flash启动试试

STM32F103VBT6的,刚开始从RAM启动不起振,换从Flash启动立马就震,再换回来还是振,⊙﹏⊙b~~~~
xxqarm 发表于 2009-3-27 09:15 | 显示全部楼层

学到东西了.我也没看过那笔记.

xtalsong 发表于 2011-6-17 21:12 | 显示全部楼层
STM32 RTC【6pF】晶振,2*6,3*8;5PPM,10PPM,20PPM

晶帆电子专业做石英晶振,现货各种偏门、冷门、工业级石英晶振,欢迎联络

业务专线:135 3012 9637 Mr Song
QQ:1491455048
我是一个小毛驴 发表于 2014-5-13 23:48 | 显示全部楼层
computer00 发表于 2009-3-26 21:17
while(1){ HSEStartUpStatus = RCC_WaitForHSEStartUp(); if(HSEStartUpStatus = ...

不用一直读的吧
outstanding 发表于 2014-5-14 08:56 | 显示全部楼层
:lol   学习了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

95

主题

759

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部