news 2026/5/1 8:36:05

STM32F0实战:基于HAL库开发【1.9】

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
STM32F0实战:基于HAL库开发【1.9】
6.1.3 时钟安全

1.时钟安全系统(CSS)

时钟安全系统可以由软件使能,用于监测HSE的工作是否正常。时钟安全系统激活后,时钟监测器将在HSE振荡器启动延迟后被使能,并在HSE时钟关闭后关闭。在时钟监测器工作期间,HSE时钟在发生故障时将被关闭,系统时钟自动切换到HSI振荡器上,时钟失效事件也将同时被送到高级定时器(TIM1和TIM8)的刹车输入中,并产生时钟安全中断CSSI,使用户可以使用软件完成系统的相应补救处理。在使用时钟安全系统时需要注意以下几点。

1)CSSI中断连接到Cortex-M0的NMI中断(不可屏蔽中断),一旦CSS被激活并且HSE时钟出现故障,CSS中断就会产生,相应地NMI中断也将自动产生。

2)NMI中断产生后将不断被执行,直到CSS中断挂起位被清除。因此在NMI的中断处理程序中必须通过设置RCC_CIR寄存器的CSSC位来清除CSS中断。

3)如果HSE振荡器被直接或间接地(通过PLL)用作系统时钟,时钟故障将导致系统时钟自动切换到HSI振荡器,同时外部HSE振荡器被关闭。在时钟失效时,如果HSE振荡器作为PLL的输入时钟,PLL也将被关闭。

2.时钟恢复系统(CRS)

CRS是一个先进的数字控制器,它基于一个可选择的同步信号来对HSI48_RC振荡器的频率进行精确修正,以减少其频率误差,同时也可以使用手动的方式来修正HSI48_RC振荡器的频率。

使用时钟恢复系统的目的就是为USB外设提供精确的时钟信号,用于校正的同步信号有多种类型可供选择:既可以是来自USB总线上的帧起始(SOF)包信号、USB主机发送的1毫秒时钟脉冲、LSE振荡器输出和从外部引脚输入时钟,又可以直接由用户软件生成。

6.1.4 时钟应用

1.系统时钟(SYSCLK)

有4种时钟源可以用作系统时钟(SYSCLK),即HSI、HSE、PLL和HSI48。系统复位后,HSI振荡器被选为系统时钟,当时钟源被直接或通过PLL间接作为系统时钟时,它将不能被停止。时钟的切换只有在目标时钟源可用的情况下才能进行。假如系统选择了未准备好的时钟源作为当前系统时钟,那么只有在目标时钟源准备好后才能执行时钟切换,时钟控制寄存器RCC_CR指示当前系统时钟采用哪个时钟源作为系统时钟。

2.ADC时钟

ADC时钟可从专用的14MHz RC振荡器(HSI14)获得,也可以由PCLK/2或PCLK/4得到。当ADC时钟源于PCLK时,其时钟相位为PCLK时钟的反相信号。14MHz的HSI_RC振荡器可以配置成由ADC接口打开或者关闭,也可以配置成常开模式。当APB时钟被选为ADC模块时钟时,HSI_RC振荡器将不能被ADC接口打开。

3.RTC时钟

通过设置备份域控制寄存器RCC_BDCR的RTCSEL[1:0]位,可以配置RTC时钟源为HSE/32、LSE或LSI。除非备份域复位,此选择不能被改变。系统必须按照PCLK时钟频率必须高于或等于RTCCLK频率的标准,合理配置时钟才能正确使用RTC。LSE时钟属于备份域,但HSE和LSI不属于备份域,因此在配置RTC时钟时还需要注意以下几个方面:

·当LSE被选为RTC时钟时,只要维持VBAT正常供电,即使VDD掉电,RTC仍会继续工作。

·当LSI被选为RTC时钟时,如果VDD掉电后,RTC将处于不定的状态。

·当HSE/32被选为RTC时钟时,如果VDD或内部电压调压器掉电时,RTC将处于不定的状态。

4.看门狗时钟

如果独立看门狗已经由硬件使能或软件启动,LSI振荡器将被强制在打开状态,并且不能被关闭,当LSI振荡器稳定后将为IWWDG提供时钟。

5.时钟输出

微控制器可以软件选择将HSI14、SYSCLK、HSI、HSE、PLL/2、LSE、LSI和HSI48时钟信号从MCO引脚输出,这时与MCO对应的GPIO引脚须配置为复用功能模式,MCO输出的时钟选择由时钟配置寄存器RCC_CFGR的MCO[3:0]位设定。

6.1.5 低功耗模式下的时钟

APB外设时钟和DMA时钟都可以通过软件禁止。在睡眠模式下,CPU时钟停止,相应地存储器接口时钟(Flash和RAM)也可以被停止。当连接到APB范围内的所有外设时钟禁止后,进入睡眠模式时

AHB至APB桥的时钟也将由CPU硬件关闭。

在停止模式下将停止所有内核供电域时钟,并且禁止PLL、HSI、HSI14和HSE时钟。HDMI-CEC、US

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 4:44:44

AionUi:与AI终端代理协作的跨平台桌面界面

✨ 项目概述 AionUi 是一个基于 Electron 框架构建的跨平台桌面应用,旨在为用户提供一个统一、可视化的图形界面,用于与多种 AI 终端代理(例如 Gemini CLI、Claude Code、Qwen Code、Goose CLI、Auggie 等)进行协作。它遵循模块化…

作者头像 李华
网站建设 2026/5/1 4:48:03

假期schedule

写在前面 假期雅思是最重要的 计划安排 5.40-5.50 起床 6.00 - 7.00 口语一节词汇课 7.30 - 9.30 第一节回放 10.00 开始第二节回放看一点可能去吃饭 尽量不要午睡 下午最好1.30 可以开始胡小溪或邹为涛 一周要保证六天,六个下午在做研究 晚上晚饭之后看完一个雅思回…

作者头像 李华
网站建设 2026/5/1 4:46:03

STM32单片机分享:智能书桌系统

目录 一、项目成品图片 二、项目功能简介 1.主要器件组成 2.功能详解介绍 三、项目原理图设计 四、项目PCB硬件设计 项目PCB图 五、项目程序设计 六、项目实验效果 ​编辑 七、项目包含内容 一、项目成品图片 哔哩哔哩视频链接: https://www.bilibili.c…

作者头像 李华
网站建设 2026/5/1 6:54:17

深度学习与大数据:推动 AI 进步的基石

深度学习与大数据:推动 AI 进步的基石 ——为什么没有大数据,深度学习只是个“花拳绣腿” 作者:Echo_Wish 一、引子:AI 火得这么猛,全靠这两样宝贝 先问你一句: 你觉得 AI 靠什么“变聪明”的? 很多人会说: 模型更大了 算力更强了 Transformer 很厉害 ChatGPT、LLM …

作者头像 李华
网站建设 2026/5/1 4:47:06

《跨语言协作效率提升:GraalPython互操作核心瓶颈攻坚手册》

GraalPython凭借多语言无缝协同的特性成为技术选型热点,但互操作背后的性能损耗往往隐藏在“无缝”的表象之下。这种损耗并非单一环节的低效,而是跨语言语义转译、语境切换、内存协同等多重因素交织的隐性壁垒——当GraalPython与Java、Rust等语言进行数据交互时,Polyglot A…

作者头像 李华
网站建设 2026/5/1 4:46:55

气球数据集4546张VOC+YOLO格式

气球数据集4546张VOCYOLO格式数据集格式:VOC格式YOLO格式压缩包内含:3个文件夹,分别存储图片、xml、txt文件JPEGImages文件夹中jpg图片总计:4546Annotations文件夹中xml文件总计:4546labels文件夹中txt文件总计&#x…

作者头像 李华