2016 - 2024

感恩一路有你

DAVE4中的时钟配置与简单原理介绍

浏览量:2925 时间:2024-07-17 19:04:37 作者:采采

1. 新建一个DAVE CE工程并添加CLOCK_XMC4 APP

DAVE软件使用APP组件的方式帮助嵌入式程序员快速实现产品,其APP经过多代更新验证已经趋于稳定。任何嵌入式系统都需要配置系统时钟,本文将介绍如何在DAVE软件中使用官方的APP组件CLOCK_XMC4来设置系统时钟。

2. CLOCK_XMC4 APP的功能和使用

CLOCK_XMC4是一个可用于设置单片机上各种时钟源的APP,具有以下主要功能:

1. 设置单片机上的各种时钟源。

2. 设置内部快速振荡器的校验方式。

3. 配置系统锁相环PLL的参数。

4. 可选的时钟分频输出。

5. 生成名为SystemCoreClockSetup()的函数供上层应用调用。

3. SystemInit函数和SystemCoreClockSetup函数

默认情况下,SystemInit函数会调用一个weak函数SystemCoreClockSetup来初始化系统时钟,该函数实现在system_XMC4800.c文件中。但是,一旦使用了CLOCK_XMC4这个APP,SystemInit将会改成调用clock_xmc_conf.c文件中的SystemCoreClockSetup函数。

4. CLOCK_XMC4 APP的底层实现原理

CLOCK_XMC4实质上是使用芯片中的SCU(System Control Unit)模块来产生各种需要的时钟,如系统时钟、外设时钟、备份时钟等。此外,该APP还使用一个GPIO来监视一路输出到外部的时钟。时钟初始化序列按照时序图来初始化时钟树,需要特别注意的是,只有当内部高速晶振的校准模式设置为使用STDBY时钟为基准来校准时,才会尝试开启外部的ULP时钟电路。

5. 使用CLOCK_XMC4 APP配置系统时钟

双击时钟模块,打开配置界面,在Clock Control Settings选项卡中可以展示配置结束后系统中各个时钟的结果。图形界面一目了然,大大减少了查阅数据手册和配置寄存器的工作量,让应用层的实现逻辑更为简单。

6. Clock Generation Settings选项卡

在Clock Generation Settings选项卡中,可以进行以下配置:

1. Operating mode:选择时钟来源,可以使用外部晶振、外部时钟输入或者内部快速振荡器。

2. Calibration:设置内部快速振荡器的精度,可以使用出厂校准或者使用STDBY时钟来校准。

3. Enable main PLL:选择是否打开主锁相环。

4. PLL clock source:选择主锁相环的时钟输入源。

5. PLL operating mode:配置是否旁路掉芯片内部的VCO。

6. Enable USB PLL:选择是否打开USB的锁相环。

7. Standby Clock Generation Settings选项卡

在Standby Clock Generation Settings选项卡中,可以配置STDBY和RTC的时钟输入源,可以选择尾部超低功耗的晶振或者内部的低精度振荡器。

8. Clock Selection Settings选项卡

在Clock Selection Settings选项卡中,将配置系统中需要的各种时钟,包括时钟源和分频系数。

9. Event Settings选项卡

在Event Settings选项卡中,可以配置是否需要监视几个特别重要的时钟,被监视的时钟一旦发生故障将触发不可屏蔽中断,用户需要在NMI_Handler中断函数中进行处理。

10. 生成代码

点击生成代码,DAVE软件将根据前面的配置自动生成代码,最主要的是生成SystemCoreClockSetup函数,该函数会覆盖新建工程时自带的同名weak函数。

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。