yufeigege 发表于 2018-9-27 14:39:00

STM32F100VDT6 内部时钟出错问题

现在调试过程中发现 RCC_CFGR2这个寄存器的值有的读取出来是0 有的读取出来是1,同一个程序在不同的片子上读取出来不一样; 正常的MCU 读取出来是1,系统时钟也是正常的24M, 读取出来是0的 系统时钟居然是48M, 觉得很郁闷 不知道是哪里的问题。

xmshao 发表于 2018-9-27 16:37:15

哪有这个手法,该寄存器是32位,有效位有19位,怎么刚好为0或1呢?那么巧?

检查下你的硬件电源部分,尤其VDDA的连接情况。

yufeigege 发表于 2018-9-27 21:28:09

xmshao 发表于 2018-9-27 16:37
哪有这个手法,该寄存器是32位,有效位有19位,怎么刚好为0或1呢?那么巧?

检查下你的硬件电源部分,尤其 ...

我对比过,正常的芯片换到不正常的板子上去,也是正常的,不正常的芯片换到先前工作正常的板子上依旧不正常,读取CFGR2寄存器依旧是1,因此硬件方面的问题我也没多去怀疑猜想; 因为这次购买的100片芯片 装机上去基本上都有这个问题,我用以前购买的那个批次芯片换上又全都工作正常; 我仿真仔细分析了下程序,这个CFGR2的值我在程序里面根本没有任何地方去写,正常工作的机器而是当我设置CFGR 这个寄存器之后,这个值就自动的变成1了;   规格书上这个寄存器默认值是0

yufeigege 发表于 2018-9-27 21:29:20

yufeigege 发表于 2018-9-27 21:28
我对比过,正常的芯片换到不正常的板子上去,也是正常的,不正常的芯片换到先前工作正常的板子上依旧不正 ...

更正下不正常的机器 这个寄存器读取出来是0工作正常的是1

发表于 2018-9-28 09:00:52

楼主看一下SystemInit这个函数,在设置时钟时,是否检测不到外部晶振?从CIR来看,外部晶振并没有工作。

yufeigege 发表于 2018-9-28 09:42:39

安 发表于 2018-9-28 09:00
楼主看一下SystemInit这个函数,在设置时钟时,是否检测不到外部晶振?从CIR来看,外部晶振并没有工作。
...

查看CR寄存器 值是0X03035b83   外部晶振应该是工作了 切准备好了的,我使用示波器看了晶振也是正常工作了8M 频率。

发表于 2018-9-28 10:55:50

从目前的状态分析,应该还是时钟配置的问题,建议仿真泡一下SystemInit这个函数,看看配置到哪儿会出问题。默认值是0。
页: [1]
查看完整版本: STM32F100VDT6 内部时钟出错问题