我要疯了,江湖救急,关于SH8的ICS设置

[复制链接]
2499|6
 楼主| winter1999 发表于 2008-5-16 20:28 | 显示全部楼层 |阅读模式
ic, ni, se, DM, inter
我打算用外置4M晶振,生成8M的总线频率。怎么折腾都不成,帮我看看,谢谢。CW6.1+OPEN&nbsp;SOURSE&nbsp;BDM,我设置如下:<br /><br />void&nbsp;MCU_Init(void)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;SOPT1&nbsp;=&nbsp;0b00000011;<br />&nbsp;&nbsp;&nbsp;&nbsp;SOPT2&nbsp;=&nbsp;0b00000010;<br />}<br /><br />void&nbsp;ICS_Init(void)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;ICSSC_IREFST&nbsp;=&nbsp;0;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(!ICSSC_OSCINIT);<br /><br />&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;ICSC1&nbsp;=&nbsp;0x38;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;ICSC2&nbsp;=&nbsp;0x20;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />}<br /><br />void&nbsp;main(void)&nbsp;<br />{<br />&nbsp;&nbsp;EnableInterrupts;&nbsp;/*&nbsp;enable&nbsp;interrupts&nbsp;*/<br />&nbsp;&nbsp;/*&nbsp;include&nbsp;your&nbsp;code&nbsp;here&nbsp;*/<br />&nbsp;&nbsp;ICS_Init();<br />&nbsp;&nbsp;MCU_Init();<br /><br /><br />&nbsp;&nbsp;for(;;)&nbsp;<br />&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;__RESET_WATCHDOG();&nbsp;/*&nbsp;feeds&nbsp;the&nbsp;dog&nbsp;*/<br />&nbsp;&nbsp;}&nbsp;/*&nbsp;loop&nbsp;forever&nbsp;*/<br />&nbsp;&nbsp;/*&nbsp;please&nbsp;make&nbsp;sure&nbsp;that&nbsp;you&nbsp;never&nbsp;leave&nbsp;main&nbsp;*/<br />}<br />
hotpower 发表于 2008-5-16 20:49 | 显示全部楼层

找张教主很轻松愉快地解决~~~俺不会~~~

  
 楼主| winter1999 发表于 2008-5-16 20:53 | 显示全部楼层

细细,楼上回俺的贴俺很激动啊,不过俺搞定类!上代码。

void&nbsp;MCU_Init(void)<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;SOPT1&nbsp;=&nbsp;0b00000011;<br />&nbsp;&nbsp;&nbsp;&nbsp;SOPT2&nbsp;=&nbsp;0b00000010;<br />}<br /><br /><br />void&nbsp;ICS_Init(void)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />{&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;ICSC1&nbsp;=&nbsp;0x38;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;ICSC2&nbsp;=&nbsp;0x24;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//BUSCLK&nbsp;=&nbsp;(4M/128)*1024/2*1&nbsp;=&nbsp;16M<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;ICSSC_IREFST&nbsp;=&nbsp;0;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(!ICSSC_OSCINIT);<br />}<br /><br />总结:<br />1、ICS设置要&nbsp;ICSC1&nbsp;-&gt&nbsp;ICSC2&nbsp;-&gt&nbsp;ICSSC这样,原来把ICSSC放在最开始了。<br />2、好像SH8的ICS选择FEE模式固定倍频是1024,而不是“深入了解HCS08的内部时钟源&nbsp;(ICS).pdf”里面说的512M,所以我这么设置后FLL的频率是32M,那么BUSCLK应该就是16M了,挂个定时器确认下先!
 楼主| winter1999 发表于 2008-5-16 20:54 | 显示全部楼层

早知道发个贴能解决就早发类

  
 楼主| winter1999 发表于 2008-5-16 21:01 | 显示全部楼层

OK验证成功,教训是惨重的

  
win2000_li 发表于 2008-5-16 21:26 | 显示全部楼层

ICSC2 = 0x60来试一试!!!

  
forthlab 发表于 2008-5-17 13:41 | 显示全部楼层

这类问题重来不会烦我的

用CW的PE,里面会自动设置的。所以我现在喜欢用FSL的,不要看手册,不要研究寄存器。我的目标是搞定项目,如何设置寄存器是CW的事情。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

37

主题

136

帖子

2

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