一、调用函数
ROM_SysCtlClockSet
或
SysCtlClockSet
二、参数
(本段资料来源于互联网)
系统时钟设置函数为:void SysCtlClockSet(unsigned long ulConfig) ulConfig:
时钟配置字,应当取下列各组数值之间的“或运算”组合形式:
1.系统时钟分频值
SYSCTL_SYSDIV_1 // 振荡器不分频(不可用于PLL)
SYSCTL_SYSDIV_2 // 振荡器 2分频(不可用于PLL)
SYSCTL_SYSDIV_3 // 振荡器 3分频(不可用于PLL)
SYSCTL_SYSDIV_4 // 振荡器 4分频,或对PLL的分频结果为50MHz
SYSCTL_SYSDIV_5 // 振荡器 5分频,或对PLL的分频结果为40MHz ⋯⋯
SYSCTL_SYSDIV_64 // 振荡器64分频,或对PLL的分频结果为3.125MHz Sandstorm家族最大分频数只能取到16,也就是811系列只能分频到16
2.使用OSC还是
PLL SYSCTL_USE_PLL // 采用锁相环PLL作为系统时钟源
SYSCTL_USE_OSC // 采用OSC(主振荡器或内部振荡器)作为系统时钟源
3.OSC时钟源选择
SYSCTL_OSC_MAIN // 主振荡器作为OSC
SYSCTL_OSC_INT // 内部12MHz振荡器作为OSC
SYSCTL_OSC_INT4 // 内部12MHz振荡器4分频后作为OSC
SYSCTL_OSC_INT30 // 内部30KHz振荡器作为OSC
SYSCTL_OSC_EXT32 // 外接32.768KHz有源振荡器作为OSC
4.外接晶体频率
SYSCTL_XTAL_1MHZ // 外接晶体1MHz
SYSCTL_XTAL_1_84MHZ // 外接晶体1.8432MHz
SYSCTL_XTAL_2MHZ // 外接晶体2MHz
SYSCTL_XTAL_2_45MHZ // 外接晶体2.4576MHz
SYSCTL_XTAL_3_57MHZ // 外接晶体3.579545MHz
SYSCTL_XTAL_3_68MHZ // 外接晶体3.6864MHz
SYSCTL_XTAL_4MHZ // 外接晶体4MHz
SYSCTL_XTAL_4_09MHZ // 外接晶体4.096MHz
SYSCTL_XTAL_4_91MHZ // 外接晶体4.9152MHz
SYSCTL_XTAL_5MHZ // 外接晶体5MHz
SYSCTL_XTAL_5_12MHZ // 外接晶体5.12MHz
SYSCTL_XTAL_6MHZ // 外接晶体6MHz
SYSCTL_XTAL_6_14MHZ // 外接晶体6.144MHz
SYSCTL_XTAL_7_37MHZ // 外接晶体7.3728MHz
SYSCTL_XTAL_8MHZ // 外接晶体8MHz
SYSCTL_XTAL_8_19MHZ // 外接晶体8.192MHz
SYSCTL_XTAL_10MHZ // 外接晶体10MHz
SYSCTL_XTAL_12MHZ // 外接晶体12MHz
SYSCTL_XTAL_12_2MHZ // 外接晶体12.288MHz
SYSCTL_XTAL_13_5MHZ // 外接晶体13.56MHz
SYSCTL_XTAL_14_3MHZ // 外接晶体14.31818MHz
SYSCTL_XTAL_16MHZ // 外接晶体16MHz
SYSCTL_XTAL_16_3MHZ // 外接晶体 16.384MHz 5.振荡源禁止
SYSCTL_INT_OSC_DIS // 禁止内部振荡器
SYSCTL_MAIN_OSC_DIS // 禁止主振荡器 ● 振荡源禁止
SYSCTL_INT_OSC_DIS // 禁止内部振荡器
SYSCTL_MAIN_OSC_DIS // 禁止主振荡器
三、举例
ROM_SysCtlClockSet(SYSCTL_SYSDIV_1 | SYSCTL_USE_OSC | SYSCTL_XTAL_16MHZ | SYSCTL_OSC_MAIN);
//不分频,采用OSC(主振荡器或内部振荡器)作为系统时钟源 ,外部晶振16Mhz,主振荡器作为OSC
参考资料、原文章:https://tieba.baidu.com/p/1699554928?red_tag=2224611919