STM32F100VDT6 内部时钟出错问题
现在调试过程中发现 RCC_CFGR2这个寄存器的值有的读取出来是0 有的读取出来是1,同一个程序在不同的片子上读取出来不一样; 正常的MCU 读取出来是1,系统时钟也是正常的24M, 读取出来是0的 系统时钟居然是48M, 觉得很郁闷 不知道是哪里的问题。哪有这个手法,该寄存器是32位,有效位有19位,怎么刚好为0或1呢?那么巧?
检查下你的硬件电源部分,尤其VDDA的连接情况。 xmshao 发表于 2018-9-27 16:37
哪有这个手法,该寄存器是32位,有效位有19位,怎么刚好为0或1呢?那么巧?
检查下你的硬件电源部分,尤其 ...
我对比过,正常的芯片换到不正常的板子上去,也是正常的,不正常的芯片换到先前工作正常的板子上依旧不正常,读取CFGR2寄存器依旧是1,因此硬件方面的问题我也没多去怀疑猜想; 因为这次购买的100片芯片 装机上去基本上都有这个问题,我用以前购买的那个批次芯片换上又全都工作正常; 我仿真仔细分析了下程序,这个CFGR2的值我在程序里面根本没有任何地方去写,正常工作的机器而是当我设置CFGR 这个寄存器之后,这个值就自动的变成1了; 规格书上这个寄存器默认值是0 yufeigege 发表于 2018-9-27 21:28
我对比过,正常的芯片换到不正常的板子上去,也是正常的,不正常的芯片换到先前工作正常的板子上依旧不正 ...
更正下不正常的机器 这个寄存器读取出来是0工作正常的是1 楼主看一下SystemInit这个函数,在设置时钟时,是否检测不到外部晶振?从CIR来看,外部晶振并没有工作。
安 发表于 2018-9-28 09:00
楼主看一下SystemInit这个函数,在设置时钟时,是否检测不到外部晶振?从CIR来看,外部晶振并没有工作。
...
查看CR寄存器 值是0X03035b83 外部晶振应该是工作了 切准备好了的,我使用示波器看了晶振也是正常工作了8M 频率。
从目前的状态分析,应该还是时钟配置的问题,建议仿真泡一下SystemInit这个函数,看看配置到哪儿会出问题。默认值是0。
页:
[1]