今天来介绍SWM32的时钟配置和GPIO的使用。
1.时钟配置
单片机要跑起来,时钟必须配置正确,SWM32的时钟相对来说还是比较简单的。具备 4 个时钟源可供使用:
内部高频振荡器(20Mhz),25℃时精度为±1%, 全温度范围的精度为±5%。
内部低频振荡器(32KHz)。
外部振荡器(XTAH),可接 3MHz ~32MHz 频率无源晶振 。
PLL 时钟,可选择内部高频时钟或者外部高频晶体振荡器作为参考时钟源进行倍频。
时钟连接图如下:
void SystemInit(void){ SYS->CLKEN |= (1 << sys_clken_anac_pos=""> switch(SYS_CLK) { case SYS_CLK_20MHz: //0 内部高频20MHz RC振荡器 switchCLK_20MHz(); break; case SYS_CLK_40MHz: //1 内部高频40MHz RC振荡器 switchCLK_40MHz(); break; case SYS_CLK_32KHz: //2 内部低频32KHz RC振荡器 switchCLK_32KHz(); break; case SYS_CLK_XTAL: //3 外部晶体振荡器(2-30MHz) switchCLK_XTAL(); break; case SYS_CLK_PLL: //4 片内锁相环输出 switchCLK_PLL(); break; } SYS->CLKDIV