- 打卡等级:偶尔看看III
- 打卡总天数:32
- 最近打卡:2025-04-30 10:59:33
超级版主
- 积分
- 2391
|
发表于 2025-1-13 10:52:22
|
显示全部楼层
STC32G12K128, STC8H8K64U的PLL时钟的说明
PLL 的时钟输入是 8MHz ~ 16MHz, 可以选择 *8 或者 *12 输出.
让 STC32G12K128工作在 32MHz, /2 = 16MHz给 PLL做时钟源,16MHz*8 = 144MHz, 16MHz*12 = 196MHz;
让 STC32G12K128工作在 32MHz, /4 = 8MHz给 PLL做时钟源, 8MHz*8 = 64MHz, 8MHz*12 = 96MHz;
让 STC32G12K128工作在 35MHz, /4 = 8.75MHz给 PLL做时钟源, 8.75MHz*8 = 70MHz, 8.75MHz*12 = 105MHz;
PLL时钟给 SPI, SPI 还可以 DMA支持,SPI的参考速度如下
35MHz/4 = 8.75MHz, 8.75MH * 8 = 70MHz, 70MHz/4 = 17.5M bps====》完美
35MHz/4 = 8.75MHz, 8.75MH * 12 = 105MHz, 105MHz/8 = 13.125M bps
PLL的时钟输入源 是 【8MHz ~ 16MHz】的很宽的输入范围
SPI的速度,最快可以 系统时钟/2, 35MHz/2 可以 17.5M bps 输出,但读用 /2, 对系统要求还是挺高的
配置PLL输入时钟时,需要注意一点:系统时钟并不一定等于PLL输入时钟
由于PLL选择的是IRC时钟源的源头时钟,
而系统时钟则是IRC的时钟源的源头时钟经过CLKDIV分频后的时钟,如下图:
比如IRC时钟源的时钟为32M,CLKDIV=1,则系统时钟等于PLL输入时钟,都是32M
如果IRC时钟源的时钟为22.1184M,CLKDIV=2,则系统时钟和PLL输入时钟不相等,系统时钟为11.0592M,PLL输入时钟为22.1184M
所以配置PLL输入时钟时,需要注意CLKDIV的分频系数
|
|