求助:单片机无法跑到标称频率,上到70M就跑丢。。

[复制链接]
2468|6
 楼主| zepanwucai 发表于 2012-2-15 16:59 | 显示全部楼层 |阅读模式
rt,用的飞思卡尔K60系列,CM4内核的,标称100MHz的,很多人都能超到200M+。。但是我在系统初始化代码中设置锁相环的参数,发现当设置内核频率超过70M时就无**常运行,调试后发现是如下情况:
Reset_Handler   PROC
                EXPORT  Reset_Handler             [WEAK]
                IMPORT  SystemInit
                IMPORT  __main
                LDR     R0, =SystemInit
                BLX     R0
                LDR     R0, =__main
                BX      R0
                ENDP

以上是复位后执行代码,可以正常执行完LDR     R0, =SystemInit;BLX     R0;
但是下面两句就不对了,调试发现运行LDR     R0, =__main之后R0居然是0xE7**_****,在存储映射里是未定义的。。
然后就执行机器码00000000,不断地对某个寄存器赋值,然后超时看门狗复位,之后就一直这样循环,复位。。
然而当内核频率调到70M以下时代码又是可以正常运行的。。
求问大侠为神马会这样啊。。
sedatefire 发表于 2012-6-26 17:16 | 显示全部楼层
路过,帮顶
单片机可以到200M,哦,我寡闻了
xxlin1984 发表于 2012-6-28 16:55 | 显示全部楼层
1. 关看门狗(估计是卡在这了)
2. 设置时钟配置
3. 等待时钟稳定
4. 其他。。。
xxlin1984 发表于 2012-6-28 16:58 | 显示全部楼层
记得默认的初始化代码是关看门狗的
yewuyi 发表于 2012-6-28 17:35 | 显示全部楼层
路过,帮顶
单片机可以到200M,哦,我寡闻了
sedatefire 发表于 2012-6-26 17:16


有的。
yewuyi 发表于 2012-6-28 17:37 | 显示全部楼层
重点检查如下:
1、锁相环设置的对不对?寄存器配置的对不对?
2、振荡源的驱动功率够不够?
3、VCC和工作环境温度是否满足?
xxlin1984 发表于 2012-6-28 17:46 | 显示全部楼层
注意:
Core时钟  <=  100MHz;
Bus时钟   <=   50MHz;
Flash时钟 <=  25MHz;
您需要登录后才可以回帖 登录 | 注册

本版积分规则

15

主题

180

帖子

6

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