请选择 进入手机版 | 继续访问电脑版
搜索
查看: 5031|回复: 26

[原创] [S32K学习笔记] S32K144时钟树分析

[复制链接]
  • TA的每日心情

    2016-10-20 09:45
  • 签到天数: 1 天

    [LV.1]初来乍到

    76

    主题

    1019

    帖子

    3048

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    3048
    发表于 2017-1-19 23:43:16 | 显示全部楼层 |阅读模式
    本帖最后由 花溪村长 于 2017-1-19 23:44 编辑

    有幸拿到了S32K的Demo板,上手玩了下,第一帖先分析下时钟树!

    时钟树.png

    先分析内核时钟、总线时钟和Flash时钟!
    内核时钟可达到112M、总线时钟56M、Flash时钟28M
    时钟来源有四个:System OSC、Slow IRC 、Fast IRC 和System PLL
    一般我们通过OSC时钟进行PLL倍频输出,所有下面就着重分析OSC和PLL相关的内容
    S32有单独的SCG模块,下面分析所需的相关寄存器
    1.OSC的设置
    SCG_SOSCCFG寄存器
    soccfg1.png
    soccfg2.png

    SCG_SOSCCFG 寄存器主要对Sytem OSC 进行配置
    RANGE :时钟频率范围选择
    HGO :增益模式
    EREFS:参考时钟选择
    SCG_SOSCCSR 寄存器
    QQ截图20170119232246.png   

    主要使用的是SOSCEN 使能位和SOSCVLD时钟有效状态位。其他的Monitor设置暂时未使用。


    2.PLL配置
    计算公式:
    SPLL_CLK = (VCO_CLK)/2
    VCO_CLK = SOSC_CLK/(PREDIV + 1) *(MULT + 16)  


    SCG_SPLLCFG 寄存器
    QQ截图20170119232600.png

    SCG_SPLLCFG 主要配置MULT 和PREDIV 进行倍频,具体配置方法和上面的公式相关,根据需要的频率直接配置即可。


    SCG_SPLLCSR 寄存器

    QQ截图20170119232913.png

    SCG_SPLLCSR 寄存器主要配置SPLLEN使能位和SPLLVLD有效状态位。


    3.配置内核、总线时钟的输出

      配置寄存器有三个,目前我用的RCCR(SCG_RCCR,SCG_HCCR配置出错,这个还没怎么理解,有明白的童鞋可以说一下),主要用了进行输出时钟的选择和分频,寄存器如下:
    QQ截图20170119233334.png


    4.代码操作寄存器
    1. void SystemClockInit(void)
    2. {
    3.   SCG->SOSCCFG = 0x3C;      /*外部时钟,高增益,高速晶振时钟*/
    4.   SCG->SOSCCSR |= 1<<0;     /* SOSCEN=1 允许SOSC时钟 */
    5.   /*等待时钟有效*/
    6.   while((SCG->SOSCCSR & SCG_SOSCCSR_SOSCVLD_MASK) == 0);

    7.   SCG->SPLLCSR &= ~(0x1<<0) ;  /* SPLLEN=0: 禁止PLL*/
    8.   SCG->SPLLCFG &= ~(0x7<<8);   /* PREDIV=0: 1分频 */
    9.   SCG->SPLLCFG |=  0xCU<<16;           /* MULT=12: 28倍频  PLL VCO =  8/1*(12+16) = 224M  */
    10.   SCG->SPLLCSR |=  0x1<<0;  /* SPLLEN=1: 允许PLL */
    11.   /* 等待PLL输出有效*/
    12.   while((SCG->SPLLCSR & SCG_SPLLCSR_SPLLVLD_MASK) == 0);
    13.   
    14.   SCG->RCCR |= SCG_RCCR_DIVCORE(0);  /* DIVCORE=0: 1分频,  CORE/SYS_CLK 频率为 112MHz */
    15.   SCG->RCCR |= SCG_RCCR_DIVBUS(1);   /* DIVBUS=1:  2分频,  BUS_CLK 频率为 56MHz */
    16.   SCG->RCCR |= SCG_RCCR_DIVSLOW(3);  /* DIVSLOW=2: 4分频   FLASH_CLK 频率为  28MHz */
    17.   SCG->RCCR &= 0xFEFFFFFF;           /* Initially set to SIRC so that LSB could be set as '0' */
    18.   SCG->RCCR |= SCG_RCCR_SCS(6);      /* SCS=6: 系统时钟源为System PLL */
    19. }
    复制代码
    以上到此可以输出需要的时钟频率,初玩S32K,写写笔记,如有不对请大家多多指正~
    回复

    使用道具 举报

  • TA的每日心情
    擦汗
    2017-10-15 13:16
  • 签到天数: 191 天

    [LV.7]常住居民III

    11

    主题

    661

    帖子

    1722

    积分

    金牌会员

    Rank: 6Rank: 6

    积分
    1722
    发表于 2017-1-19 23:57:12 | 显示全部楼层
    谢谢分享                           
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-12-10 16:25
  • 签到天数: 96 天

    [LV.6]常住居民II

    228

    主题

    5236

    帖子

    1万

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    15264
    发表于 2017-1-19 23:57:58 | 显示全部楼层
    恭喜恭喜
    回复

    使用道具 举报

  • TA的每日心情
    开心
    14 小时前
  • 签到天数: 444 天

    [LV.9]以坛为家II

    39

    主题

    2445

    帖子

    5232

    积分

    金牌会员

    Rank: 6Rank: 6

    积分
    5232
    发表于 2017-1-20 00:41:15 | 显示全部楼层
    恭喜恭喜
    回复

    使用道具 举报

  • TA的每日心情
    开心
    昨天 00:02
  • 签到天数: 410 天

    [LV.9]以坛为家II

    49

    主题

    3869

    帖子

    6454

    积分

    金牌会员

    Rank: 6Rank: 6

    积分
    6454
    发表于 2017-1-20 08:18:22 | 显示全部楼层
    恭喜,多谢分享
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2017-3-24 20:37
  • 签到天数: 34 天

    [LV.5]常住居民I

    12

    主题

    202

    帖子

    722

    积分

    高级会员

    Rank: 4

    积分
    722
    发表于 2017-1-20 08:34:13 | 显示全部楼层
    很不错的。。。
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2017-1-24 08:47
  • 签到天数: 49 天

    [LV.5]常住居民I

    0

    主题

    525

    帖子

    1267

    积分

    金牌会员

    Rank: 6Rank: 6

    积分
    1267
    发表于 2017-1-20 10:00:58 | 显示全部楼层
    谢谢分享                        
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    25

    主题

    227

    帖子

    1000

    积分

    恩智浦专员

    Rank: 8Rank: 8

    积分
    1000
    发表于 2017-1-20 14:41:10 | 显示全部楼层
    这个是汽车部门的产品
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2017-1-4 08:05
  • 签到天数: 11 天

    [LV.3]偶尔看看II

    85

    主题

    1626

    帖子

    4147

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    4147

    优秀版主

    发表于 2017-1-20 15:56:21 | 显示全部楼层
    整体来说还是比较简介的
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-12-22 08:49
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    125

    主题

    506

    帖子

    2489

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    2489
    发表于 2017-1-21 23:46:45 | 显示全部楼层
    始终配置讲的很好啊!112MHZ完全够用
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    小黑屋|手机版|Archiver|恩智浦技术社区   

    GMT+8, 2018-1-16 23:45 , Processed in 0.260859 second(s), 12 queries , MemCache On.

    Powered by Discuz! X3.4

    © 2001-2013 Comsenz Inc.

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