
简介 本应用笔记介绍了适用于 STM32F0xx 微控制器系列的时钟配置工具。 此工具是为了帮助用户配置微控制器时钟,并将电源和 Flash 访问模式等条件考虑在内。 此配置工具在“STM32F0xx_Clock_Configuration_VX.Y.Z.xls”文件中实现,该文件随STM32F0xx 标准外设库提供,并可以从 www.st.com 下载。 此工具支持 STM32F0xx 的下列功能: ●配置系统时钟、HCLK 源和输出频率 ●配置 Flash 等待周期(等待周期数取决于 HCLK 频率) ●设置 PCLK1、PCLK2、TIMCLK(定时器时钟)和 I2SCLK 频率 ●生成含有上述全部设置的 system_stm32f0xx.c 文件(STM32F0xx CMSIS Cortex-M0 器件外设访问层系统源文件) 在本文档中,STM32F0xx_Clock_Configuration_VX.Y.Z.xls 称为“时钟工具”。 在使用时钟工具之前,必须阅读 STM32F0xx 微控制器参考手册 (RM0091)。本应用比较不能替代参考手册。 此工具仅支持 STM32F0xx 器件。 1术语表 ![]() 2使用入门 本节介绍使用时钟工具时的必要条件以及使用步骤。 2.1软件要求 要在 Windows® 操作系统中使用时钟工具,必须在至少有 256 MB RAM 的 PC 中安装最新版本的 Windows,如 Windows XP、Vista 或 Windows 7。 在开始使用时钟工具前,确保已在计算机上安装了 Microsoft® Office,然后按照以下步骤操作: ●从 www.st.com 下载最新版的适用于 STM32F0xx 产品的时钟工具。 ●启用宏和 ActiveX® 控件: Excel® 1997-2003 版 1.单击菜单栏中的“工具”。 2.单击“宏”。 3.单击“安全性”。 4.单击“低”(不建议使用)。 注: 如果未启用 ActiveX 控件,将显示一条警告消息,询问是否启用 ActiveX。此时,应单击“确定”以启用 ActiveX 控件。 Excel 2007 版 1.单击“Microsoft Office”按钮,然后单击“Excel 选项”。 2.依次单击“信任中心”、“信任中心设置”、“宏设置”。 3.单击“启用所有宏(不推荐;可能会运行有潜在危险的代码)”。 4.依次单击“信任中心”、“信任中心设置”、“ActiveX 设置”。 5.单击“无限制启用所有控件并且不进行提示(不推荐;可能会运行有潜在危险的控件)”。 6.单击“确定”。 注: 有关如何启用宏和 ActiveX 控件的更多信息,请参见 Microsoft Office 网站。 2.2硬件要求 2.2.1简介 时钟工具可以为 STM32F0xx 微控制器配置系统时钟并生成 system_stm32f0xx.c 文件。 system_stm32f0xx.c 文件是系统时钟配置文件模板,可以修改该文件以选择相应的系统时钟频率和配置 Flash 等待周期。 2.2.2 STM32F0xx 微控制器的时钟方案 本节介绍的系统时钟方案取决于电压工作范围 (VDD) 与系统时钟频率的关系以及 Flash 等待周期与系统时钟频率的关系。 可以使用三种不同的时钟源来驱动系统时钟 (SYSCLK): 1.HSI (8 MHz) 振荡器时钟。 2.HSE(4 MHz 到 32 MHz)振荡器时钟。 3.主锁相环 (PLL) 时钟,具有 PLL 电压控制的振荡器 (PLLVCO) 输入频率。 所有外设始终均源自 SYSCLK。 注:Flash 等待周期(延迟)数根据 CPU (Cortex-M0) 的频率设置: - 如果 0 < SYSCLK <= 24 MHz,则等待周期设置为“0” - 如果 SYSCLK > 24 MHz,则等待周期设置为“1” ![]() 2.2.3 I2S 时钟发生器 本节介绍 I2S 时钟发生器。它取决于: ●主时钟 MCLK(使能或禁止) ●帧宽度 ●I2S 外设时钟 (I2SCLK)。 ![]() 音频采样频率可能是 192 kHz、96 kHz、48 kHz、44.1 kHz、32 kHz、22.05 kHz、16 kHz、11.025 kHz 或 8 kHz。为达到所需频率,需要根据以下公式对线性分压器 (DIV) 进行编程: 当已生成主时钟(SPI_I2SPR 寄存器中的 MCKOE 位置 1)时: ●FS = I2SxCLK/[(16*2)*((2*I2SDIV)+ODD)*8)](通道帧的宽度为 16 位时) ●FS = I2SxCLK/[(32*2)*((2*I2SDIV)+ODD)*4)](通道帧的宽度为 32 位时) 其中 ODD 是寄存器 SPI_I2SPR 中的 ODD 位。 当主时钟已禁止(MCKOE 位清零)时: ●FS = I2SxCLK/[(16*2)*((2*I2SDIV)+ODD))](通道帧的宽度为 16 位时) ●FS = I2SxCLK/[(32*2)*((2*I2SDIV)+ODD))](通道帧的宽度为 32 位时) 注: 此工具不配置 I2S 寄存器。 根据 I2S 参数计算得到的采样频率误差没有包含在“system_stm32f0xx.c”中。 完整版请查看:附件 |
DM00048926_ZHV1.pdf
下载571.41 KB, 下载次数: 4