打印
[STM32F1]

外部晶振有波形,但是无法使用。切换到内部时钟正常。

[复制链接]
3069|13
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lphaff|  楼主 | 2014-11-8 19:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
开始以为是外部晶振不起振,后面用示波器看了一下
能看到12M的正弦波
但是在单步运行的时候,死在        while (RCC_GetSYSCLKSource() != 0x08){}          这里了
如果直接跳过时钟配置,则会进入
void HardFault_Handler(void)
{
  /* Go to infinite loop when Hard Fault exception occurs */
  while (1)
  {}
}

这种情况一般是什么原因引起的呢?
这一批板子里面有些正常,有些不正常。
沙发
xiaodao35| | 2014-11-8 20:22 | 只看该作者
示波器表笔有电容在的,如果一直测量着能跳过时钟检测,取下不能,可能匹配电容偏小,不起征

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
lphaff + 1 赞一个!
板凳
lphaff|  楼主 | 2014-11-8 20:31 | 只看该作者
xiaodao35 发表于 2014-11-8 20:22
示波器表笔有电容在的,如果一直测量着能跳过时钟检测,取下不能,可能匹配电容偏小,不起征 ...

是12M的波形,重新上电后一直有12M
感觉外部晶振应该是正常起振的。

使用特权

评论回复
地板
mmuuss586| | 2014-11-8 21:45 | 只看该作者
看晶振有没有起振,拿万用表量下电压也可以的;

为0V或3.3V肯定没起振;

使用特权

评论回复
5
lphaff|  楼主 | 2014-11-8 22:09 | 只看该作者
mmuuss586 发表于 2014-11-8 21:45
看晶振有没有起振,拿万用表量下电压也可以的;

为0V或3.3V肯定没起振; ...

现在可以确认,外部晶振是没问题的。
我把时钟由PLL切换到外部晶振后是正常的。
那应该可以确定问题出在PLL部分了。

使用特权

评论回复
6
mmuuss586| | 2014-11-8 22:51 | 只看该作者
lphaff 发表于 2014-11-8 22:09
现在可以确认,外部晶振是没问题的。
我把时钟由PLL切换到外部晶振后是正常的。
那应该可以确定问题出在P ...

检查下,电源是否有问题;
包括模拟电源等;
还有看下程序,可以参考官方的,野火的,正点原子的一些初始化例程看看;

不是硬件问题(包括电源的稳定性),就是你程序初始化问题;

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
lphaff + 1 赞一个!
7
lphaff|  楼主 | 2014-11-8 23:29 | 只看该作者
mmuuss586 发表于 2014-11-8 22:51
检查下,电源是否有问题;
包括模拟电源等;
还有看下程序,可以参考官方的,野火的,正点原子的一些初始 ...

谢谢。
这个之前我自己焊的板子,是没有问题的。
后面几块是别人焊的,有几个能用,有几个不能用
现在问题基本可以定位了
应该就是PLL的问题。
PLL倍频后作为系统时钟就死机了
不知道是不是焊接的问题。

使用特权

评论回复
8
xlsbz| | 2014-11-9 08:12 | 只看该作者
lphaff 发表于 2014-11-8 23:29
谢谢。
这个之前我自己焊的板子,是没有问题的。
后面几块是别人焊的,有几个能用,有几个不能用

有次遇到过 电容值 焊接错误。检查下电容值 试试

使用特权

评论回复
评分
参与人数 1威望 +1 收起 理由
lphaff + 1
9
lphaff|  楼主 | 2014-11-9 10:44 | 只看该作者
xlsbz 发表于 2014-11-9 08:12
有次遇到过 电容值 焊接错误。检查下电容值 试试

其实这也应该算是很正常的检查思路了
焊接错误、电容弄错了。或者晶振中间并联一个10M电阻
我现在的问题是,外部晶振已经起振切可正常使用
但是内部如果选用PLL作为系统时钟则会跑到硬件错误中断里面去了。

使用特权

评论回复
10
xlsbz| | 2014-11-9 11:06 | 只看该作者
lphaff 发表于 2014-11-9 10:44
其实这也应该算是很正常的检查思路了
焊接错误、电容弄错了。或者晶振中间并联一个10M电阻
我现在的问题 ...

给你个注意。你的你自己的代码今天就不要碰。
用官方的demo运行。

使用特权

评论回复
11
xlsbz| | 2014-11-9 11:07 | 只看该作者
xlsbz 发表于 2014-11-9 11:06
给你个注意。你的你自己的代码今天就不要碰。
用官方的demo运行。

你这个问题很奇怪。

使用特权

评论回复
12
xlsbz| | 2014-11-9 11:08 | 只看该作者
xlsbz 发表于 2014-11-9 11:07
你这个问题很奇怪。

仿真器也换一个。供电电源也换一个。

使用特权

评论回复
13
lphaff|  楼主 | 2014-11-9 11:37 | 只看该作者
xlsbz 发表于 2014-11-9 11:08
仿真器也换一个。供电电源也换一个。

谢谢。
这个问题确实比较奇怪。
我现在初步怀疑板子加工的问题或者是芯片的问题。
PLL倍频不上去,应该属于芯片内部的问题。

使用特权

评论回复
14
lphaff|  楼主 | 2014-11-10 21:45 | 只看该作者
总结:应该是芯片的问题。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:长沙电路设计爱好者,欢迎加群学术探讨、项目合作群:1636625

55

主题

540

帖子

2

粉丝