RH850开发板starter kit示例程序分析--时钟初始化R_SYSTEM_ClockInit()

4 篇文章 1 订阅
4 篇文章 0 订阅

从这篇博文开始,博主将连载几篇博客与大家一起分享学习瑞萨RH850开发板的示例程序。
博主使用的时RH850F1L,控制器型号R7F7010334,176pin LQFP封装。

一切从main()函数开始
在这里插入图片描述code segment 1

1、code segment 1->line110:R_SYSTEM_ClockInit();该函数用于系统时钟的初始化

在这里插入图片描述code segment 2

1.1、code segment 2->line158:R_CLKC_PllInit();该函数用于PLL的初始化

在这里插入图片描述在这里插入图片描述在这里插入图片描述从上图可知,CPU最高频率为80MHz,PLL最高频率为80MHz
176pin封装主晶振频率是8~24MHz,副晶振频率是32.768kHz,原理图如下所示
在这里插入图片描述在这里插入图片描述code segment 3

1.1.1、code segment 3->Line81:解释
MOSCS寄存器定义如下图所示,MOSCS.MOSCCLKACT位标记MainOSC是否激活状态
在这里插入图片描述因此code segment 3->Line81用于判断MainOSC是否激活
MOSCC寄存器定义如下图所示在这里插入图片描述code segment 3->Line83:MOSCC=0x06;表示选用外部16MHz晶振
MOSCST寄存器定义如下图所示在这里插入图片描述在这里插入图片描述ROSCS.ROSCCLKACT的Reset值为1,所以此处其值为1
code segment 3->Line84:MOSCST=0x00008000;石英晶振从启动到稳定的时长
Stabilization time = MOSCCLKST[16:0] / fRH = 0x00008000/fRH = 215 / 8MHz 约等于4.1ms(1MHz = 1000kHz)

PLLS寄存器定义如下图所示
在这里插入图片描述code segment 3->Line84:判断PLL是否激活

PLLC寄存器定义如下图所示在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述

1.2、code segment 2->Line159:R_CLKC_SetAdca0ClockDomain(R_CLKC_ADCA_PPLLCLK2);设置ADCA0的时钟

1.3、code segment 2->Line160:R_CLKC_SetTaujClockDomain(R_CLKC_TAUJ_PPLLCLK2);设置TAUJ的时钟

1.4、code segment 2->Line163:R_CLKC_SetRscanClockDomain(R_CLKC_RSCAN_PPLLCLK,R_CLKC_RSCAN_DIV_MOSC1);设置Rscan的时钟

至此,时钟初始化分析完成

email:1256153255@qq.com

website for get 瑞萨RH850开发板 and 瑞萨E1仿真器

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值