时钟问题!!!

[复制链接]
4572|13
 楼主| win2000_li 发表于 2008-3-6 21:16 | 显示全部楼层 |阅读模式
我现在做一个项目,用到了QG8。<br /><br />用到内部ICS,由于第一次用。<br /><br />看资料说是默认时钟是16M,总线为4M。<br /><br />我做了一个小实验(点LED),用专家生成初始化代码。<br /><br />没有配置ICS,默认的,其中ICSC1&nbsp;=&nbsp;0x04;&nbsp;ICSC2&nbsp;=&nbsp;0x40;<br /><br />进入调试环境后用看系统状态。<br /><br />发现CPU频率是6.51M,为什么是这样???<br /><br />请问怎么才能改变???(自已可以控制)<br /><br />听说用内部晶体,当频率高的情况下(12M),不用仿真了。或者说<br /><br />仿真器不能用了。是这样吗????
 楼主| win2000_li 发表于 2008-3-7 21:52 | 显示全部楼层

为什么没有理我啊???

  
super323 发表于 2008-3-9 15:58 | 显示全部楼层

仿真器

高于12M后可以用仿真器的,对于内部ICS,调节ICSTRM,下面的语句:<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ICSTRM=0X52;&nbsp;&nbsp;&nbsp;//20M&nbsp;&nbsp;,频率微调<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ICSSC_FTRIM=0;<br />应该是20M吧,但是有一定的误差,具体频率是多少,看DEBUG后,调试界面的右下角有显示多少MHz的,一看就知道了
imwangyi 发表于 2008-3-10 10:57 | 显示全部楼层

得看看Trim相关资料.

  
 楼主| win2000_li 发表于 2008-3-19 13:57 | 显示全部楼层

顶一个.

谢谢两位的回答,但是有没有ICSTRM值与频率的对照表啊???<br /><br />要不然这样搞起来很烦的的啊,没有一个度量啊.<br /><br />请高手指点啊!!!!!!!!!!!!!!!
super323 发表于 2008-3-19 15:07 | 显示全部楼层

对照表

好像没有。我用的是开源BDM,
 楼主| win2000_li 发表于 2008-3-19 15:10 | 显示全部楼层

我想还是有一个吧!!!原厂不会没有吧???

ICSTRM&nbsp;=*(unsigned&nbsp;char*far)0xFFAF;<br />ICSSC&nbsp;=&nbsp;*(unsigned&nbsp;char*far)0xFFAE;&nbsp;<br />ICSC1&nbsp;=&nbsp;0x04;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />ICSC2&nbsp;=&nbsp;0x40;&nbsp;<br /><br />以上的这个设置就是6.51M<br /><br />用这个来定义是10.74M,不是20M啊!!这是为什么啊???<br /><br />ICSTRM=0X52;&nbsp;&nbsp;&nbsp;//20M&nbsp;&nbsp;,频率微调<br /><br />ICSSC_FTRIM=0;<br /><br />高手指点啊!!!&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 楼主| win2000_li 发表于 2008-3-19 15:13 | 显示全部楼层

还有!

 楼主| win2000_li 发表于 2008-3-19 15:14 | 显示全部楼层

还有!!

 楼主| win2000_li 发表于 2008-3-20 22:53 | 显示全部楼层

自已顶啊!!!

为什么没有说清楚一些啊?????
 楼主| win2000_li 发表于 2008-3-23 20:14 | 显示全部楼层

基本上吧!!!

在北京飞锐泰克的网上有一篇这方面的**,不,是PDF.<br /><br />讲的很清楚,我还在看,你去看一下吧!!!<br /><br />我还没有完全理解到呢!!!!<br /><br />欢迎一齐读者讨论!!!
JerryBJ 发表于 2008-4-3 22:45 | 显示全部楼层

看看能看明白不

QG8的时钟是这样的:内部振荡器的频率为32K,复位后ICSC1和ICSC2的默认值使得总线频率为:((32&nbsp;kHz&nbsp;*&nbsp;512)&nbsp;/&nbsp;2)&nbsp;/&nbsp;2,即4&nbsp;MHz。<br /><br />刚才说到内部振荡器的频率为32&nbsp;kHz,实际上它是一个范围,31.25&nbsp;~&nbsp;39.06&nbsp;kHz,通过修改TRIM寄存器,可以使其以0.2%的步进在这个范围内改变。<br /><br />地址中FFAF包含了一个工厂校准值,在复位后应该把此地址的内容复制到ICSTRIM寄存器中去。<br /><br />商用的调试器和编程器,都具有内部时钟校准功能。通过外部基准信号来计算出校准值,写入地址FFAF。并且,可以选择将内部时钟校准到上述范围内的某一个频点。从而实现内部时钟的调整。<br /><br />至于FFAE,其中只有一位用于内部时钟的微调。<br /><br />所以理论上,你不要去自己往TRIM寄存器中填充数字,而应该从FFAF地址复制校准数字到TRIM寄存器中去。这个数字应该由工具专门计算和写入FFAF中去。否则会导致一致性问题。
qiunaidong 发表于 2008-11-5 18:25 | 显示全部楼层

不董<br />
您需要登录后才可以回帖 登录 | 注册

本版积分规则

142

主题

718

帖子

1

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