打印

系统时钟设定为50MHz,UART/PWM运行于6MHz?

[复制链接]
2168|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
monkeypony|  楼主 | 2011-9-25 20:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
monkeypony|  楼主 | 2011-9-25 21:51 | 只看该作者
SysCtlClockSet
(SYSCTL_SYSDIV_1 | SYSCTL_USE_OSC | SYSCTL_OSC_MAIN | SYSCTL_OSC_INT);

当我将时钟改为这个值后我就能使用UART了,但是我需要在50MHz下运行我的封闭回路,并且我的ADC读取会变慢。

SysCtlClockSet
(SYSCTL_SYSDIV_1 | SYSCTL_USE_OSC | SYSCTL_OSC_MAIN | SYSYCTL_XTAL_6MHZ);

有没有什么方法可以将UART和PWM设定为运行于6MHz,而将我的其它代码运行于50MHz的内部时钟?

使用特权

评论回复
板凳
elecintop| | 2011-9-25 21:56 | 只看该作者
有一些问题如下:
a)        我怀疑你能在不使用PLL-PLL时达到50MHz,是由于没有援引所列出的SysCtlClockSet()函数。
b)        ADC通常需要运行于内部时钟未16MHz的条件(因为你的3S818是老器件,可能会有摆动空间,但是最好检查MCU的规格)。

我们有其它偶尔报告的情况是使用UART和内部振荡器的问题。明智的做法是检查当前的MCU勘误表来查看这个解释是否解释了你的问题。
从你的描述来看,我不能说你是否启动了PLL,假设大量的代码示例存在于StellarisWare,它用UART和ADC调用PLL,也可能会达到你50MHz的目标。

使用特权

评论回复
地板
永远的不知| | 2011-9-25 22:35 | 只看该作者
2# monkeypony

SysCtlClockSet
(SYSCTL_SYSDIV_1 | SYSCTL_USE_OSC | SYSCTL_OSC_MAIN | SYSYCTL_XTAL_6MHZ);
这设置的是6M,不是50M

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

133

主题

715

帖子

0

粉丝