在线时间0 小时
UID336509
注册时间2011-12-28
NXP金币0
该用户从未签到
新手上路

- 积分
- 192
- 最后登录
- 1970-1-1
|

楼主 |
发表于 2012-2-10 11:51:57
|
显示全部楼层
回复:Uart 收发数据问题 急 急 急
回复第 13 楼 于2012-02-09 09:03:03发表:
1、外部晶振是多大?
2、我看不到你的main函数,你怎么调用的?
3、有2种肯那个,系统时钟不正确,IO口配置不正确。
外部晶振为48Mhz,
如果在程序的初始化mcf5225x_init函数中不进行pll的初始化,晶振不振.
如果添加了pll初始化,函数如下:
void
mcf5225x_pll_init(void)
{
MCF_CLOCK_OCLR = 0xC0; //turn on crystal
MCF_CLOCK_CCLR = 0x00; //switch to crystal
MCF_CLOCK_OCHR = 0x00; //turn off relaxation osc
/* The PLL pre divider - 48MHz / 6 = 8MHz */
MCF_CLOCK_CCHR =0x05;
MCF_CLOCK_SYNCR &= ~(MCF_CLOCK_SYNCR_PLLEN);
MCF_CLOCK_SYNCR |= MCF_CLOCK_SYNCR_CLKSRC | MCF_CLOCK_SYNCR_PLLMODE;
//这里对8M*10=80Mhz
MCF_CLOCK_SYNCR |= MCF_CLOCK_SYNCR_MFD(3) | MCF_CLOCK_SYNCR_RFD(0);
MCF_CLOCK_SYNCR |= MCF_CLOCK_SYNCR_PLLEN;
while (!(MCF_CLOCK_SYNSR & MCF_CLOCK_SYNSR_LOCK))
{
}
}
为什么我从48M晶振两侧量出来的是16Mhz呢?
请帮我看下,哪里出现问题了? 谢谢... |
|