本帖最后由 TI_MCU 于 2011-11-30 22:08 编辑
M4与M3相比,时钟系统也进行了改进,如下图所示:
眼睛亮的朋友估计一眼就能看到,最大的区别莫过于内部晶振(PIOC)可以直接接到PLL上了,这样使用内部时钟就可以达到较高主频如80MHz, 50MHz。想要使用内部晶振+PLL可以进行如下配置:
SysCtlClockSet(
SYSCTL_OSC_INT | //使用内部晶振
SYSCTL_USE_PLL | //使用PLL
SYSCTL_SYSDIV_4 | //4分频到50MHz
SYSCTL_MAIN_OSC_DIS); //停用主时钟Main_OSC
内部晶振有时候精度不够,如果是带休眠模块的M4F则可以用RTC自动进行校准,前提是有提供32768Hz的晶振,代码如下:
// 启用休眠模块
SysCtlPeripheralEnable(SYSCTL_PERIPH_HIBERNATE);
// 使能休眠模块时钟
HibernateEnableExpClk(SysCtlClockGet());
// 使能休眠模块RTC时钟
HibernateRTCEnable();
// 进行自动校准
SysCtlPIOSCCalibrate(SYSCTL_PIOSC_CAL_AUTO);
// 关闭休眠模块
SysCtlPeripheralDisable(SYSCTL_PERIPH_HIBERNATE);
|