找回密码
 立即注册
查看: 1785|回复: 11

pll倍频作为主时钟输出

[复制链接]
  • 打卡等级:初来乍到
  • 打卡总天数:5
  • 最近打卡:2024-01-25 16:57:22

9

主题

12

回帖

117

积分

注册会员

积分
117
发表于 2024-1-25 16:51:24 | 显示全部楼层 |阅读模式
本帖最后由 东风 于 2024-1-25 17:30 编辑



使用STC32G12K128,  配置使用外部晶振倍频

CLKSEL &= ~CKMS;            //选择PLL的96m作为pll的输出时钟
        USBCLK |= PCKI_D1;          //输入时钟1分频
        //???ˉPLL
        USBCLK |= ENCKM;            //使用pll倍频
        delay_ms(1);                //等待pll锁频
        CLKDIV = 16;                //分频

        CLKSEL &= ~MCKSEL_MSK;
        CLKSEL &= ~MCK2SEL_MSK;
        CLKSEL |= MCKSEL_XOSC;      //选择外部8M晶振
        CLKSEL |= MCK2SEL_PLLD2;    //pll输出2分频后作为主时钟
        
为什么p5.4脚输出是这个频率,怎么测试主时钟或者系统时钟多少

波形

波形
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:100
  • 最近打卡:2025-06-17 08:13:13

733

主题

1万

回帖

1万

积分

管理员

积分
16657
发表于 2024-1-26 09:47:02 | 显示全部楼层
截图202401260946585833.jpg

截图202401260948045251.jpg

截图202401260948362662.jpg

截图202401260949159187.jpg
截图202401260949429790.jpg

截图202401260957039694.jpg



回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:100
  • 最近打卡:2025-06-17 08:13:13

733

主题

1万

回帖

1万

积分

管理员

积分
16657
发表于 2024-1-26 09:51:52 | 显示全部楼层
注意 给 STC32G12K128的 CPU 工作的时钟不能超过35MHz

截图202401260957317787.jpg
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:5
  • 最近打卡:2024-01-25 16:57:22

9

主题

12

回帖

117

积分

注册会员

积分
117
发表于 2024-1-26 10:09:38 | 显示全部楼层
本帖最后由 东风 于 2024-1-26 10:14 编辑

把代码改成这样

   CLKSEL &= ~CKMS;            //选择PLL的96m作为pll的输出时钟
        USBCLK |= PCKI_D1;          //输入时钟1分频
        //
        USBCLK |= ENCKM;            //使用pll倍频
        delay_ms(1);                //等待pll锁频
        CLKDIV = 0x04;                //分频

        CLKSEL &= ~MCKSEL_MSK;
        CLKSEL &= ~MCK2SEL_MSK;
        CLKSEL |= MCKSEL_XOSC;      //选择外部8M晶振
        CLKSEL |= MCK2SEL_PLL;    //pll输出作为主时钟

测下来频率22m,反推的话主时钟应该是88m,不是96m输入,虽然主频最高36m,  ,怎么不一样
截图202401261008034766.jpg
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:100
  • 最近打卡:2025-06-17 08:13:13

733

主题

1万

回帖

1万

积分

管理员

积分
16657
发表于 2024-1-26 11:57:25 | 显示全部楼层
你直接将 高速IRC 烧录时设定到 35MHz 给 CPU 使用,
PLL输入源用 35M/4 = 8.75MHz
PLL时钟输出用  8.75MHz * 12 = 105MHz 给 PWM 使用
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:初来乍到
  • 打卡总天数:5
  • 最近打卡:2024-01-25 16:57:22

9

主题

12

回帖

117

积分

注册会员

积分
117
发表于 2024-1-26 13:35:18 | 显示全部楼层
我们项目对温度有要求,需要用外部晶振
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:462
  • 最近打卡:2025-06-16 10:02:39

33

主题

2447

回帖

5168

积分

论坛元老

积分
5168
发表于 2024-1-26 13:38:20 | 显示全部楼层
东*** 发表于 2024-1-26 13:35
我们项目对温度有要求,需要用外部晶振

话说不同温度下内部晶振会差很多么?测试过么
参考例程并不是对技术参 考手册的补充,而是对技术参 考手册的解释。
技术参 考手册不应该需要参考例程作为补充,而是解释成了参考例程的样子
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:406
  • 最近打卡:2025-06-16 18:34:42

1

主题

82

回帖

1595

积分

金牌会员

积分
1595
发表于 2024-1-26 14:11:55 | 显示全部楼层
_奶*** 发表于 2024-1-26 13:38
话说不同温度下内部晶振会差很多么?测试过么

不用测,厂家手册中有IRC温漂图,查手册就可以.
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:567
  • 最近打卡:2025-06-17 07:50:02

113

主题

2027

回帖

5814

积分

论坛元老

积分
5814
发表于 2024-1-26 14:21:35 | 显示全部楼层

红色2那个位置上的频率如果不是12MHz(例如只有8MHz),后面能正常输出8倍频(例如64MHz)吗?
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:100
  • 最近打卡:2025-06-17 08:13:13

733

主题

1万

回帖

1万

积分

管理员

积分
16657
发表于 2024-1-26 14:29:35 | 显示全部楼层
截图202401261427572956.jpg


PLL的时钟输入范围是:8MHz ~ 16MHz,
可以 *8 或 *12,
PLL的时钟输输出范围是:64MHz ~ 192MHz

回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-6-17 09:24 , Processed in 0.163690 second(s), 103 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表