打印
[Kinetis]

KL25Z 怎样校准内部参考时钟

[复制链接]
1870|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ar_m_cu|  楼主 | 2014-1-8 16:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在学习 KL25Z 开发板的过程中,在低功耗例程中发现了一个通过外部参考时钟校准内部参考时钟的函数。但是该例程对这个函数没有介绍,也没有发现使用到这个函数的地方,查看 RM 手册也没有找到校准的方法,有谁使用过这个功能吗?
函数声明如下:
unsigned char atc(unsigned char irc_select, int irc_freq, int mcg_out_freq);

相关帖子

沙发
FSL_TICS_ZJJ| | 2014-1-9 15:29 | 只看该作者
你好,我来回答你的问题。
虽然这个函数没有函数介绍,但是并不难看出,这个函数的功能其实是根据所需要的系统时钟频率去trim具体的内部快速或者内部慢速的时钟,
使得内部的时钟能够满足所期望的的系统时钟要求。
unsigned char atc(unsigned char irc_select, int irc_freq, int mcg_out_freq);
其中的irc_select就是用来选择时内部快速,还是内部慢速的时钟。
1:内部快速, 时钟范围为3MHz-5MHz
0:内部慢速,时钟范围为31.25kHz-39.0625kHz

irc_freq指的是默认出厂的频率,一般,内部慢速是32.768Khz,内部快速是4Mhz

mcg_out_freq指的是你所期望的系统时钟。

关于时钟校准的内容,RM上面也有讲一些,但是没有讲的很详细,所以你可以配合代码了解更细致的内容,并且可以通过实际的测试去验证。
希望能够帮到你!

使用特权

评论回复
板凳
ar_m_cu|  楼主 | 2014-1-10 11:00 | 只看该作者
本帖最后由 ar_m_cu 于 2014-1-10 11:01 编辑
FSL_TICS_ZJJ 发表于 2014-1-9 15:29
你好,我来回答你的问题。
虽然这个函数没有函数介绍,但是并不难看出,这个函数的功能其实是根据所需要的 ...

atc(0, 32768, 48000000);
那我这样调用函数,该函数会通过 48M的MCG时钟将内部慢速时钟校准到 32.768KHz?
另外,其实我最想知道的是这个校准过程的原理,以及校准方法

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:初出茅庐,天下无敌,再学三年,寸步难行

61

主题

1200

帖子

7

粉丝